OAI/Combinatorics/TwoWayAutomata/Diagram.lean
39 declarations, 0 contain sorry, 0 declared as axioms
- structure
OAI.TwoWayComplementation.Diagramline 11Source documentation
Four boundary relations; the direction distinguishes the two copies of
Fin m.structure Diagram (m : ℕ) where …
- def
OAI.TwoWayComplementation.Diagram.compline 24Source documentation
Composition of boundary diagrams in path order.
def comp {m : ℕ} (a b : Diagram m) : Diagram m where …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.identityline 31Source documentation
Identity boundary diagram.
def identity (m : ℕ) : Diagram m := ⟨SetRel.id, SetRel.id, ∅, ∅⟩
Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.inclusionline 34Source documentation
Componentwise edge inclusion, as a relation on diagrams.
def inclusion (m : ℕ) : SetRel (Diagram m) (Diagram m) := …
Mentions: OAI.TwoWayComplementation.Diagram
- theorem
OAI.TwoWayComplementation.Diagram.inclusion_reflline 38 - def
OAI.TwoWayComplementation.Diagram.reflectline 42Source documentation
Reflection reverses the order of multiplication.
def reflect {m : ℕ} (a : Diagram m) : Diagram m := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.throughline 46Source documentation
truedenotes the positive sign;falsedenotes the negative sign.def through {m : ℕ} (a : Diagram m) (positive : Bool) : SetRel (Fin m) (Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.loopClosureline 50Source documentation
Closure of alternating returns at a boundary.
def loopClosure {m : ℕ} (e : Diagram m) (positive : Bool) : SetRel (Fin m) (Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.recurrenceline 54Source documentation
The recurrent relation obtained by closing through traversals.
def recurrence {m : ℕ} (e : Diagram m) (positive : Bool) : SetRel (Fin m) (Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.classesline 58Source documentation
Signed recurrent equivalence classes of an idempotent diagram.
def classes {m : ℕ} (e : Diagram m) : Set (Bool × Set (Fin m)) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.cornerline 63Source documentation
The corner membership equations for an idempotent
e.def corner {m : ℕ} (e : Diagram m) : Set (Diagram m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.nestingline 67Source documentation
Nesting of idempotents; distinct from edge inclusion.
def nesting (m : ℕ) : SetRel (Diagram m) (Diagram m) := …
Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.survivingline 71Source documentation
The surviving through relation
Urelative toe.def surviving {m : ℕ} (e z : Diagram m) (positive : Bool) : SetRel (Fin m) (Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.missingline 75Source documentation
Classes whose recurrent loops are absent after replacement by
z.def missing {m : ℕ} (e z : Diagram m) : Set (Bool × Set (Fin m)) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.unprotectedline 79Source documentation
Classes containing none of a fixed set of signed protected labels.
def unprotected {m : ℕ} (e : Diagram m) (P : Set (Bool × Fin m)) : Set (Bool × Set (Fin m)) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.rectangleline 83Source documentation
Rectangle associated with a recurrent representative.
def rectangle {m : ℕ} (e : Diagram m) (positive : Bool) (p : Fin m) : SetRel (Fin m) (Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.portRelationline 89Source documentation
Boundary ports:
falseis left andtrueis right.def portRelation {m : ℕ} (e : Diagram m) : SetRel (Bool × Fin m) (Bool × Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.bounceRelationline 97Source documentation
Returns from an exit port through the surrounding left or right context.
def bounceRelation {m : ℕ} (R L : SetRel (Fin m) (Fin m)) : SetRel (Bool × Fin m) (Bool × Fin m) := … - def
OAI.TwoWayComplementation.Diagram.feedbackline 102Source documentation
A middle traversal followed by any finite number of context returns and traversals.
def feedback {m : ℕ} (e : Diagram m) (R L : SetRel (Fin m) (Fin m)) : SetRel (Bool × Fin m) (Bool × Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- theorem
OAI.TwoWayComplementation.Diagram.mem_port_throughline 106 - def
OAI.TwoWayComplementation.Diagram.classRectangleline 111Source documentation
The rectangular port edges belonging to a signed recurrent class.
def classRectangle {m : ℕ} (e : Diagram m) (C : Bool × Set (Fin m)) : SetRel (Bool × Fin m) (Bool × Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.contextEntryline 117Source documentation
Initial traversal of the outer context, including recurrence closure.
def contextEntry {m : ℕ} (d u v : Diagram m) (positive : Bool) : SetRel (Fin m) (Bool × Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.contextExitline 124Source documentation
Final traversal of the outer context, including recurrence closure.
def contextExit {m : ℕ} (d u v : Diagram m) (positive : Bool) : SetRel (Bool × Fin m) (Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.classInfluenceline 131Source documentation
Traversals with one designated occurrence of a recurrent rectangle in the middle factor.
def classInfluence {m : ℕ} (e d u v : Diagram m) (positive : Bool) (C : Bool × Set (Fin m)) : SetRel (Fin m) (Fin m) := …Mentions: OAI.TwoWayComplementation.Diagram
- def
OAI.TwoWayComplementation.Diagram.transportMarkedline 138Source documentation
Target classes whose original traversals can use a rectangle from the fixed set
J.def transportMarked {m : ℕ} (e d u v : Diagram m) (J : Set (Bool × Set (Fin m))) : Set (Bool × Set (Fin m)) := …Mentions: OAI.TwoWayComplementation.Diagram
- theorem
OAI.TwoWayComplementation.Diagram.feedback_forwardline 142 - theorem
OAI.TwoWayComplementation.Diagram.identity_compline 204 - theorem
OAI.TwoWayComplementation.Diagram.comp_identityline 209 - theorem
OAI.TwoWayComplementation.Diagram.reflect_compline 213 - theorem
OAI.TwoWayComplementation.Diagram.feedback_reflect_mapline 225 - theorem
OAI.TwoWayComplementation.Diagram.mem_feedback_reflectline 246 - theorem
OAI.TwoWayComplementation.Diagram.comp_assoc_forwardline 255 - theorem
OAI.TwoWayComplementation.Diagram.comp_assoc_leftline 262 - theorem
OAI.TwoWayComplementation.Diagram.comp_assocline 270Source documentation
The product of boundary diagrams is associative.
theorem comp_assoc {m : ℕ} (a b c : Diagram m) : comp (comp a b) c = comp a (comp b c) := by …Mentions: OAI.TwoWayComplementation.Diagram, OAI.TwoWayComplementation.Diagram.comp
- theorem
OAI.TwoWayComplementation.Diagram.context_forward_iffline 282 - theorem
OAI.TwoWayComplementation.Diagram.context_through_iffline 289 - theorem
OAI.TwoWayComplementation.Diagram.context_survivingline 304 - instance
OAI.TwoWayComplementation.Diagram.(instance at line 320)line 320 - theorem
OAI.TwoWayComplementation.Diagram.finite_diagramline 328