Equations
- AP.State.ReachableVia st s s₁ = AP.State.ReachableVia' st.f s s₁
Instances For
@[instance_reducible]
instance
AP.instDecidableReachableVia
{s s₁ : State}
{st : Strat}
:
Decidable (State.ReachableVia st s s₁)
Equations
- s.simStates st = Set.ofPred (AP.State.ReachableVia st s)
Instances For
def
AP.State.simStatesRangeAuxVia
(r : ℕ → ℕ → Prop)
[hs : DecidableRel r]
(st : Strat)
(s s₁ : State)
:
Equations
- AP.State.simStatesRangeAuxVia r st s s₁ = if ¬AP.State.ReachableVia st s s₁ then ∅ else {s₂ ∈ Finset.image (fun (n : ℕ) => (AP.sys.simulate st.f s n).1) (Finset.Icc 0 (s.diff s₁)) | r s₂.hist.length s₁.hist.length}
Instances For
Equations
- AP.State.simStatesIccVia st s s₁ = AP.State.simStatesRangeAuxVia (fun (x1 x2 : ℕ) => x1 ≤ x2) st s s₁
Instances For
Equations
- AP.State.simStatesIcoVia st s s₁ = AP.State.simStatesRangeAuxVia (fun (x1 x2 : ℕ) => x1 < x2) st s s₁
Instances For
Equations
- AP.State.aSimStatesIccVia st s s₁ = {x ∈ AP.State.simStatesIccVia st s s₁ | x.aTurn = true}
Instances For
Equations
- AP.State.aSimStatesIcoVia st s s₁ = {x ∈ AP.State.simStatesIcoVia st s s₁ | x.aTurn = true}
Instances For
Equations
- AP.Strat.ofFn f = { a := AP.AStrat.mk f, d := AP.DStrat.mk f }
Instances For
Equations
- s.simStatesIcc s₁ = AP.State.simStatesIccVia (s.diffStrat s₁) s s₁
Instances For
Equations
- s.simStatesIco s₁ = AP.State.simStatesIcoVia (s.diffStrat s₁) s s₁
Instances For
Equations
- s.aSimStatesIcc s₁ = AP.State.aSimStatesIccVia (s.diffStrat s₁) s s₁
Instances For
Equations
- s.aSimStatesIco s₁ = AP.State.aSimStatesIcoVia (s.diffStrat s₁) s s₁
Instances For
Equations
- s.aVisitedIco s₁ = if s = s₁ then ∅ else s.aVisitedIcc s₁.prev
Instances For
Equations
- s.aVisitedIcoPrev s₁ = if s.diff s₁ ≤ 1 then ∅ else s.aVisitedIco s₁.prev
Instances For
Equations
- s.aNbhdsIcoPrev s₁ = (s.aVisitedIcoPrev s₁).bind fun (x : PointZ) => Set'.ofList (Point.nbhd x ↑s.pw)