Nuprl Lemma : strat2play-invariant-1

g:SimpleGame. ∀n:ℕ. ∀s:win2strat(g;n). ∀moves:strat2play(g;n;s).
  ((moves[0] InitialPos(g) ∈ Pos(g))
  ∧ (∀i:ℕ1
       ((↓Legal1(moves[2 i];moves[(2 i) 1]))
       ∧ (i < n
          ((↓Legal2(moves[(2 i) 1];moves[2 (i 1)]))
            ∧ (moves[2 (i 1)] (s play-truncate(moves;2 (i 1))) ∈ Pos(g)))))))


Proof




Definitions occuring in Statement :  strat2play: strat2play(g;n;s) win2strat: win2strat(g;n) play-truncate: play-truncate(f;m) play-item: moves[i] sg-legal2: Legal2(x;y) sg-legal1: Legal1(x;y) sg-init: InitialPos(g) sg-pos: Pos(g) simple-game: SimpleGame seq-item: s[i] int_seg: {i..j-} nat: less_than: a < b all: x:A. B[x] squash: T implies:  Q and: P ∧ Q apply: a multiply: m add: m natural_number: $n equal: t ∈ T
Definitions unfolded in proof :  all: x:A. B[x] uall: [x:A]. B[x] member: t ∈ T nat: implies:  Q false: False ge: i ≥  guard: {T} uimplies: supposing a prop: and: P ∧ Q squash: T int_seg: {i..j-} le: A ≤ B less_than': less_than'(a;b) not: ¬A decidable: Dec(P) or: P ∨ Q iff: ⇐⇒ Q rev_implies:  Q uiff: uiff(P;Q) subtract: m subtype_rel: A ⊆B top: Top true: True strat2play: strat2play(g;n;s) eq_int: (i =z j) ifthenelse: if then else fi  btrue: tt cand: c∧ B sq_type: SQType(T) lelt: i ≤ j < k win2strat: win2strat(g;n) bfalse: ff so_lambda: λ2x.t[x] so_apply: x[s] play-len: ||moves|| play-truncate: play-truncate(f;m) play-item: moves[i]
Lemmas referenced :  nat_properties less_than_transitivity1 less_than_irreflexivity ge_wf less_than_wf int_seg_wf strat2play_wf win2strat_wf false_wf le_wf decidable__le subtract_wf not-ge-2 less-iff-le condition-implies-le minus-one-mul zero-add minus-one-mul-top minus-add minus-minus add-associates add-swap add-commutes add_functionality_wrt_le add-zero le-add-cancel le_weakening2 nat_wf simple-game_wf decidable__int_equal subtype_base_sq int_subtype_base int_seg_properties int_seg_subtype int_seg_cases eq_int_wf le_weakening assert_wf bnot_wf not_wf equal-wf-base bool_cases bool_wf bool_subtype_base eqtt_to_assert assert_of_eq_int eqff_to_assert iff_transitivity iff_weakening_uiff assert_of_bnot add-is-int-iff decidable__lt not-lt-2 le-add-cancel-alt lelt_wf set_subtype_base not-equal-2 minus-zero subtract-add-cancel mul-distributes mul-commutes not-le-2 le-add-cancel2 mul_preserves_le play-item_wf mul-associates mul-distributes-right zero-mul squash_wf true_wf sg-legal2_wf sg-pos_wf subtype_rel_self iff_weakening_equal play-truncate_wf equal-wf-T-base play-len_wf equal_wf set_wf seq-truncate-item seq-item_wf seq-len_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity lambdaFormation cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality hypothesis setElimination rename intWeakElimination natural_numberEquality independent_isectElimination independent_functionElimination voidElimination sqequalRule lambdaEquality dependent_functionElimination productElimination independent_pairEquality axiomEquality imageElimination imageMemberEquality baseClosed addEquality because_Cache dependent_set_memberEquality independent_pairFormation unionElimination applyEquality isect_memberEquality voidEquality intEquality minusEquality instantiate cumulativity equalityTransitivity equalitySymmetry hypothesis_subsumption dependentIntersectionElimination applyLambdaEquality promote_hyp impliesFunctionality baseApply closedConclusion multiplyEquality universeEquality functionEquality setEquality addLevel hyp_replacement levelHypothesis

Latex:
\mforall{}g:SimpleGame.  \mforall{}n:\mBbbN{}.  \mforall{}s:win2strat(g;n).  \mforall{}moves:strat2play(g;n;s).
    ((moves[0]  =  InitialPos(g))
    \mwedge{}  (\mforall{}i:\mBbbN{}n  +  1
              ((\mdownarrow{}Legal1(moves[2  *  i];moves[(2  *  i)  +  1]))
              \mwedge{}  (i  <  n
                  {}\mRightarrow{}  ((\mdownarrow{}Legal2(moves[(2  *  i)  +  1];moves[2  *  (i  +  1)]))
                        \mwedge{}  (moves[2  *  (i  +  1)]  =  (s  play-truncate(moves;2  *  (i  +  1)))))))))



Date html generated: 2018_07_25-PM-01_32_57
Last ObjectModification: 2018_06_12-PM-00_30_13

Theory : co-recursion


Home Index