@[simp]
@[simp]
@[simp]
theorem
AP.AState.getd_aSimPtsNcard_lt_of_odd
{s : State}
{st₁ st₂ : Strat}
{set : Set PointZ}
(n : ℕ)
[hs : AState s]
(hn : Odd n)
(h₁ : s.aWins st₁)
(h₂ : s.aWins st₂)
(h₃ : (s.aSimPtsNcard st₁ set).isSome = true)
(h₄ : (s.aSimPtsNcard st₂ set).isSome = true)
(h₅ :
∀ (k : ℕ) (s₁ s₂ : State),
sys.simulate st₁.f s k = (s₁, 0) → sys.simulate st₂.f s k = (s₂, 0) → s₁.aPos ∈ set → s₂.aPos ∈ set)
(h₆ : ∀ (s₁ : State), sys.simulate st₁.f s n = (s₁, 0) → s₁.aPos ∉ set)
(h₇ : ∀ (s₁ : State), sys.simulate st₂.f s n = (s₁, 0) → s₁.aPos ∈ set)
:
theorem
AP.AState.getd_aSimPtsNcard_lt_of
{s : State}
{st₁ st₂ : Strat}
{set : Set PointZ}
(n : ℕ)
[hs : AState s]
(h₁ : s.aWins st₁)
(h₂ : s.aWins st₂)
(h₃ : (s.aSimPtsNcard st₁ set).isSome = true)
(h₄ : (s.aSimPtsNcard st₂ set).isSome = true)
(h₅ :
∀ (k : ℕ) (s₁ s₂ : State),
sys.simulate st₁.f s k = (s₁, 0) → sys.simulate st₂.f s k = (s₂, 0) → s₁.aPos ∈ set → s₂.aPos ∈ set)
(h₆ : ∀ (s₁ : State), sys.simulate st₁.f s n = (s₁, 0) → s₁.aPos ∉ set)
(h₇ : ∀ (s₁ : State), sys.simulate st₂.f s n = (s₁, 0) → s₁.aPos ∈ set)
:
@[simp]
theorem
AP.State.mem_simStatesIccVia_of_mem_simStatesIcoVia
{s s₁ s' : State}
{st : Strat}
[hs : sys.WF s]
(h : s' ∈ simStatesIcoVia st s s₁)
:
theorem
AP.State.mem_aSimStatesIccVia_of_mem_aSimStatesIcoVia
{s s₁ s' : State}
{st : Strat}
[hs : sys.WF s]
(h : s' ∈ aSimStatesIcoVia st s s₁)
:
theorem
AP.State.simStatesIcoVia_subset_simStatesIccVia
{s s₁ : State}
{st : Strat}
[hs : sys.WF s]
:
simStatesIcoVia st s s₁ ⊆ simStatesIccVia st s s₁
theorem
AP.State.aSimStatesIcoVia_subset_aSimStatesIccVia
{s s₁ : State}
{st : Strat}
[hs : sys.WF s]
:
aSimStatesIcoVia st s s₁ ⊆ aSimStatesIccVia st s s₁
theorem
AP.State.simStatesIcoVia_eq_erase_simStatesIccVia
{s s₁ : State}
{st : Strat}
[hs : sys.WF s]
:
theorem
AP.State.aSimStatesIcoVia_eq_erase_aSimStatesIccVia
{s s₁ : State}
{st : Strat}
[hs : sys.WF s]
:
theorem
AP.State.mem_simStatesIcoVia_mem_simStatesIccVia_and_ne
{s s₁ s' : State}
{st : Strat}
[hs : sys.WF s]
(h₁ : s' ∈ simStatesIccVia st s s₁)
(h₂ : s' ≠ s₁)
:
theorem
AP.State.mem_aSimStatesIcoVia_of_mem_aSimStatesIccVia_and_ne
{s s₁ s' : State}
{st : Strat}
[hs : sys.WF s]
(h₁ : s' ∈ aSimStatesIccVia st s s₁)
(h₂ : s' ≠ s₁)
:
theorem
AP.State.mem_simStatesIccVia_of_mem_aSimStatesIccVia
{s s₁ s' : State}
{st : Strat}
(h : s' ∈ aSimStatesIccVia st s s₁)
:
theorem
AP.State.mem_simStatesIcoVia_of_mem_aSimStatesIcoVia
{s s₁ s' : State}
{st : Strat}
(h : s' ∈ aSimStatesIcoVia st s s₁)
:
theorem
AP.wf_of_mem_simStatesRangeAuxVia
{s s₁ s' : State}
{st : Strat}
{r : ℕ → ℕ → Prop}
[hr : DecidableRel r]
[hs : sys.WF s]
(h : s' ∈ State.simStatesRangeAuxVia r st s s₁)
:
theorem
AP.wf_of_mem_simStatesIccVia
{s s₁ s' : State}
{st : Strat}
[hs : sys.WF s]
(h : s' ∈ State.simStatesIccVia st s s₁)
:
theorem
AP.wf_of_mem_simStatesIcoVia
{s s₁ s' : State}
{st : Strat}
[hs : sys.WF s]
(h : s' ∈ State.simStatesIcoVia st s s₁)
:
theorem
AP.State.mem_aVisitedIcc'_append
{s : State}
{ps₁ ps₂ : List PointZ}
{p : PointZ}
(h : p ∈ s.aVisitedIcc' ps₁)
:
theorem
AP.State.mem_aVisitedIcc_of_mem_aVisitedIco
{s s₁ : State}
{p : PointZ}
[hs : sys.WF s]
(h₁ : sys.Reachable s s₁)
(h₂ : p ∈ s.aVisitedIco s₁)
:
@[simp]
@[simp]