#### With a single-edge LHS, all rules are trivially causal invariant, but give tree causal networks...

With a single-edge LHS, all rules are trivially causal invariant, but give tree causal networks...

#### Except for single-edge-LHS rules, non-overlappingness is contingent on particular initial conditions

Except for single-edge-LHS rules, non-overlappingness is contingent on particular initial conditions

But there could be causal invariance without non-overlappinginess

And this could be independent of initial conditions

And this could be independent of initial conditions

#### To find: simplest causal invariant rules

To find: simplest causal invariant rules

## String Case

String Case

#### Is non-overlappingness equivalent to causal invariance?

Is non-overlappingness equivalent to causal invariance?

"AA""AA"

is causal invariant, but is overlapping....

### Causal invariance checking

Causal invariance checking

ResourceFunction["CausallyInvariantQ"][{"AB""BA"},{"AAAAABBBB"},5]

In[]:=

True

Out[]=

ResourceFunction["CausallyInvariantQ"][{"AB""BA"},{"AAAAABBBB"},2]

In[]:=

True

Out[]=

ResourceFunction["CausallyInvariantQ"][{"AA""AA"},{"AAAA"},2]

In[]:=

True

Out[]=

ResourceFunction["CausallyInvariantQ"][{"AA""AA"},{"AAAA"},2]

ResourceFunction["StringTuples"]

In[]:=

$Failed

Out[]=