Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

A (one dimensional) cellular automaton is a function1 F : Σ → Σ with the property that there is a K > 0 such that F (x)i depends only on the 2K + 1 coordinates xi−K , xi−K+1, . . . , xi−1, xi, xi+1, . . . , xi+K . A periodic point of σ is any x such that σ^p (x) = x for some p ∈ N, and a periodic point of F is any x such that F^q (x) = x for some q ∈ N. Given a cellular automaton F, a point x ∈ Σ is jointly periodic if there are p, q ∈ N such that σ^p (x) = F^q (x) = x, that is, it is a periodic point under both functions.

This project aims to explore the nature of one-dimensional Cellular Automata, in the hope of finding the structure of cellular automata through its periodic points.

2034 views
License: MIT
ubuntu2004
#makefile for FPeriod

CC = g++
CFLAGS = -O -Wall -c -I STL
LFLAGS = -Wall

FPeriod: main.o StringOps.o Func.o FuncNode.o StorageKey.o StorageVal.o \
RecNode.o Comp.o
	$(CC) $(LFLAGS) -o FPeriod main.o StringOps.o Func.o FuncNode.o \
	StorageKey.o StorageVal.o RecNode.o Comp.o

FProbPeriod: prob.o StringOps.o Func.o FuncNode.o StorageKey.o StorageVal.o \
RecNode.o Comp.o
	$(CC) $(LFLAGS) -o FProbPeriod prob.o StringOps.o Func.o FuncNode.o \
	StorageKey.o StorageVal.o RecNode.o Comp.o

FDense: dense.o StringOps.o Func.o FuncNode.o StorageKey.o StorageVal.o \
RecNode.o Comp.o
	$(CC) $(LFLAGS) -o FDense dense.o StringOps.o Func.o FuncNode.o \
	StorageKey.o StorageVal.o RecNode.o Comp.o

main.o: main.cpp StringOps.h StorageKey.h StorageVal.h RecNode.h Comp.h
	$(CC) $(CFLAGS) -o main.o main.cpp

prob.o: prob.cpp StringOps.h StorageKey.h StorageVal.h RecNode.h Comp.h \
StorageKeyUInt.h
	$(CC) $(CFLAGS) -o prob.o prob.cpp

dense.o: dense.cpp StringOps.h StorageKey.h StorageVal.h RecNode.h Comp.h \
MList.h GroupData.h
	$(CC) $(CFLAGS) -o dense.o dense.cpp

Func.o: Func.cpp Func.h FuncNode.h StringOps.h
	$(CC) $(CFLAGS) -o Func.o Func.cpp

FuncNode.o: FuncNode.cpp FuncNode.h StorageKey.h
	$(CC) $(CFLAGS) -o FuncNode.o FuncNode.cpp

StringOps.o: StringOps.cpp StringOps.h
	$(CC) $(CFLAGS) -o StringOps.o StringOps.cpp

StorageKey.o: StorageKey.cpp StorageKey.h StringOps.h
	$(CC) $(CFLAGS) -o StorageKey.o StorageKey.cpp

StorageVal.o: StorageVal.cpp StorageVal.h
	$(CC) $(CFLAGS) -o StorageVal.o StorageVal.cpp

RecNode.o: RecNode.cpp RecNode.h
	$(CC) $(CFLAGS) -o RecNode.o RecNode.cpp

Comp.o: Comp.cpp Comp.h Func.h StringOps.h
	$(CC) $(CFLAGS) -o Comp.o Comp.cpp