Nuprl Lemma : win2strat-strat2play-wf

[g:SimpleGame]. ∀[n:ℕ].
  ((win2strat(g;n) ∈ Type)
  ∧ (∀[s:win2strat(g;n)]. (strat2play(g;n;s) ∈ Type))
  ∧ (∀[s:win2strat(g;n)]. ∀[f:strat2play(g;n;s)].  (||f|| ∈ ℤ))
  ∧ (∀[s:win2strat(g;n)]. ∀[f:strat2play(g;n;s)]. ∀[k:{(2 n) 2..||f|| 1-}].
       (play-truncate(f;k) ∈ strat2play(g;n;s))))


Proof




Definitions occuring in Statement :  strat2play: strat2play(g;n;s) win2strat: win2strat(g;n) play-truncate: play-truncate(f;m) play-len: ||moves|| simple-game: SimpleGame int_seg: {i..j-} nat: uall: [x:A]. B[x] and: P ∧ Q member: t ∈ T multiply: m add: m natural_number: $n int: universe: Type
Definitions unfolded in proof :  play-truncate: play-truncate(f;m) play-len: ||moves|| uall: [x:A]. B[x] member: t ∈ T nat: implies:  Q false: False ge: i ≥  guard: {T} uimplies: supposing a prop: and: P ∧ Q all: x:A. B[x] true: True top: Top uiff: uiff(P;Q) rev_implies:  Q iff: ⇐⇒ Q or: P ∨ Q decidable: Dec(P) not: ¬A less_than': less_than'(a;b) le: A ≤ B lelt: i ≤ j < k int_seg: {i..j-} subtype_rel: A ⊆B play-item: moves[i] strat2play: strat2play(g;n;s) btrue: tt ifthenelse: if then else fi  subtract: m eq_int: (i =z j) win2strat: win2strat(g;n) cand: c∧ B squash: T sq_stable: SqStable(P) so_apply: x[s] so_lambda: λ2x.t[x] pi2: snd(t) pi1: fst(t) bool: 𝔹 unit: Unit it: bfalse: ff exists: x:A. B[x] sq_type: SQType(T) bnot: ¬bb assert: b nequal: a ≠ b ∈  nat_plus: + less_than: a < b seq-item: s[i] seq-truncate: seq-truncate(s;n)
Lemmas referenced :  nat_properties less_than_transitivity1 less_than_irreflexivity ge_wf less_than_wf subtract-1-ge-0 nat_wf simple-game_wf le-add-cancel2 sg-legal1_wf sg-init_wf lelt_wf le-add-cancel zero-add add-commutes add_functionality_wrt_le not-lt-2 decidable__lt false_wf seq-item_wf equal_wf seq-len_wf le_wf sg-pos_wf sequence_wf top_wf int_seg_wf add-associates less-iff-le sq_stable__le minus-one-mul-top add-swap minus-one-mul minus-add condition-implies-le not-le-2 decidable__le seq-truncate_wf set_wf seq-len-truncate seq-truncate-item eq_int_wf eqtt_to_assert assert_of_eq_int eqff_to_assert int_subtype_base bool_cases_sqequal subtype_base_sq bool_wf bool_subtype_base assert-bnot neg_assert_of_eq_int dep-isect-wf equal-wf-T-base subtract_wf sg-legal2_wf istype-false not-equal-2 le_antisymmetry_iff mul-associates istype-void minus-minus le-add-cancel-alt assert_wf bnot_wf not_wf equal-wf-base subtract_nat_wf set_subtype_base add-is-int-iff mul-distributes mul-commutes mul-distributes-right zero-mul add-zero not-equal-implies-less le_reflexive one-mul add-mul-special two-mul omega-shadow bool_cases iff_transitivity iff_weakening_uiff assert_of_bnot le_weakening minus-zero mul_bounds_1a le_weakening2 add_nat_wf multiply_nat_wf uiff_transitivity int_seg_subtype_nat seq-truncate-truncate
Rules used in proof :  sqequalSubstitution sqequalRule sqequalReflexivity sqequalTransitivity computationStep Error :isect_memberFormation_alt,  introduction cut extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality hypothesis setElimination rename intWeakElimination Error :lambdaFormation_alt,  natural_numberEquality independent_isectElimination independent_functionElimination voidElimination Error :universeIsType,  Error :lambdaEquality_alt,  dependent_functionElimination axiomEquality equalityTransitivity equalitySymmetry intEquality voidEquality isect_memberEquality lambdaEquality unionElimination productElimination lambdaFormation independent_pairFormation dependent_set_memberEquality applyEquality because_Cache productEquality setEquality isect_memberFormation multiplyEquality independent_pairEquality imageElimination baseClosed imageMemberEquality minusEquality addEquality applyLambdaEquality Error :inhabitedIsType,  equalityElimination Error :dependent_pairFormation_alt,  Error :equalityIsType2,  baseApply closedConclusion promote_hyp instantiate cumulativity functionEquality Error :equalityIsType1,  Error :dependent_set_memberEquality_alt,  Error :isect_memberEquality_alt,  Error :productIsType,  Error :equalityIsType4,  dependentIntersectionElimination sqequalIntensionalEquality dependentIntersection_memberEquality

Latex:
\mforall{}[g:SimpleGame].  \mforall{}[n:\mBbbN{}].
    ((win2strat(g;n)  \mmember{}  Type)
    \mwedge{}  (\mforall{}[s:win2strat(g;n)].  (strat2play(g;n;s)  \mmember{}  Type))
    \mwedge{}  (\mforall{}[s:win2strat(g;n)].  \mforall{}[f:strat2play(g;n;s)].    (||f||  \mmember{}  \mBbbZ{}))
    \mwedge{}  (\mforall{}[s:win2strat(g;n)].  \mforall{}[f:strat2play(g;n;s)].  \mforall{}[k:\{(2  *  n)  +  2..||f||  +  1\msupminus{}\}].
              (play-truncate(f;k)  \mmember{}  strat2play(g;n;s))))



Date html generated: 2019_06_20-PM-00_52_21
Last ObjectModification: 2019_01_02-PM-01_31_55

Theory : co-recursion-2


Home Index