Nuprl Lemma : coW-trans_wf

[A:𝕌']. ∀[B:A ⟶ Type]. ∀[w1,w2,w3:coW(A;a.B[a])]. ∀[n:ℕ]. ∀[X:win2strat(coW-game(a.B[a];w1;w2);n)].
[Y:win2strat(coW-game(a.B[a];w2;w3);n)].
  (coW-trans(X; Y) ∈ win2strat(coW-game(a.B[a];w1;w3);n))


Proof




Definitions occuring in Statement :  coW-trans: coW-trans(X; Y) coW-game: coW-game(a.B[a];w;w') coW: coW(A;a.B[a]) win2strat: win2strat(g;n) nat: uall: [x:A]. B[x] so_apply: x[s] member: t ∈ T function: x:A ⟶ B[x] universe: Type
Definitions unfolded in proof :  coW-pos-lens: coW-pos-lens(p;i;j) nat_plus: + rev_uimplies: rev_uimplies(P;Q) nequal: a ≠ b ∈  coW-trans: coW-trans(X; Y) play-truncate: play-truncate(f;m) copathAgree: copathAgree(a.B[a];w;x;y) copath: copath(a.B[a];w) copath-length: copath-length(p) label: ...$L... t copath-nil: () coWtransInvariant: coWtransInvariant(x.B[x];w1;w2;w3;k;X;Y;a;b;moves) sg-legal2: Legal2(x;y) cand: c∧ B seq-item: s[i] assert: b bnot: ¬bb exists: x:A. B[x] seq-nil: seq-nil() seq-add: seq-add(s;x) let: let lt_int: i <j pi2: snd(t) sg-legal1: Legal1(x;y) sg-init: InitialPos(g) sg-pos: Pos(g) coW-game: coW-game(a.B[a];w;w') squash: T less_than: a < b lelt: i ≤ j < k int_seg: {i..j-} play-item: moves[i] sequence: sequence(T) strat2play: strat2play(g;n;s) seq-truncate: seq-truncate(s;n) pi1: fst(t) seq-len: ||s|| play-len: ||moves|| transMoves: transMoves(X;Y;moves) sq_type: SQType(T) bfalse: ff it: unit: Unit bool: 𝔹 true: True subtype_rel: A ⊆B uiff: uiff(P;Q) rev_implies:  Q iff: ⇐⇒ Q or: P ∨ Q decidable: Dec(P) all: x:A. B[x] not: ¬A less_than': less_than'(a;b) and: P ∧ Q le: A ≤ B top: Top btrue: tt ifthenelse: if then else fi  subtract: m eq_int: (i =z j) win2strat: win2strat(g;n) so_apply: x[s] so_lambda: λ2x.t[x] prop: uimplies: supposing a guard: {T} ge: i ≥  false: False implies:  Q nat: member: t ∈ T uall: [x:A]. B[x]
Lemmas referenced :  neg_assert_of_eq_int le_weakening strat2play-longer subtype_rel_set seq-add_wf seq-add-len copathAgree_refl add-subtract-cancel strat2play-add assert_of_le_int bnot_of_lt_int assert_functionality_wrt_uiff le_int_wf mod2-2n mod2-2n-plus-1 strat2play-invariant coW-play-invariant seq-truncate-item mul-distributes-right win2strat-properties bfalse_wf not-equal-2 eq_int_eq_false subtract-add-cancel seq-truncate_wf add-is-int-iff seq-len-truncate zero-mul add-mul-special strat2play_subtype_le play-truncate_wf mul-associates mul_preserves_le le-add-cancel-alt sequence_wf strat2play_subtype or_wf subtype_rel_wf member_wf pi2_wf pi1_wf and_wf coWtransInvariant_wf le_antisymmetry_iff copathAgree-nil sg-legal2_wf minus-zero le-add-cancel2 sg-init_wf not-lt-2 decidable__lt seq-item_wf seq-len_wf copathAgree_wf copath_wf equal-wf-base-T int_seg_wf copath-nil_wf assert-bnot bool_cases_sqequal assert_of_lt_int lt_int_wf copath-length_wf set_subtype_base iff_weakening_equal subtype_rel_self simple-game_wf true_wf squash_wf sg-legal1_wf strat2play-invariant-1 sg-pos_wf lelt_wf play-item_wf copath_length_nil_lemma le_transitivity set_wf mul-commutes mul-distributes le_reflexive bool_subtype_base subtype_base_sq bool_cases equal_wf assert_of_bnot eqff_to_assert iff_weakening_uiff iff_transitivity assert_of_eq_int eqtt_to_assert uiff_transitivity play-len_wf equal-wf-T-base not-le-2 strat2play_wf win2strat_subtype not_wf bnot_wf assert_wf int_subtype_base equal-wf-base bool_wf eq_int_wf coW_wf nat_wf le_weakening2 le-add-cancel add-zero add_functionality_wrt_le add-commutes add-swap add-associates minus-minus minus-add minus-one-mul-top zero-add minus-one-mul condition-implies-le less-iff-le not-ge-2 subtract_wf decidable__le le_wf false_wf coW-game_wf win2strat_wf less_than_wf ge_wf less_than_irreflexivity less_than_transitivity1 nat_properties
Rules used in proof :  spreadEquality orFunctionality addLevel inrFormation levelHypothesis equalityUniverse dependentIntersectionEqElimination productEquality inlFormation promote_hyp dependent_pairFormation dependent_pairEquality independent_pairEquality applyLambdaEquality hyp_replacement imageElimination imageMemberEquality multiplyEquality impliesFunctionality equalityElimination setEquality dependentIntersection_memberEquality dependentIntersectionElimination baseClosed closedConclusion baseApply universeEquality functionEquality instantiate minusEquality intEquality addEquality productElimination unionElimination independent_pairFormation dependent_set_memberEquality voidEquality because_Cache functionExtensionality applyEquality cumulativity equalitySymmetry equalityTransitivity axiomEquality isect_memberEquality dependent_functionElimination lambdaEquality voidElimination independent_functionElimination independent_isectElimination natural_numberEquality lambdaFormation intWeakElimination sqequalRule rename setElimination hypothesis hypothesisEquality thin isectElimination sqequalHypSubstitution extract_by_obid cut introduction isect_memberFormation sqequalReflexivity computationStep sqequalTransitivity sqequalSubstitution

Latex:
\mforall{}[A:\mBbbU{}'].  \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[w1,w2,w3:coW(A;a.B[a])].  \mforall{}[n:\mBbbN{}].
\mforall{}[X:win2strat(coW-game(a.B[a];w1;w2);n)].  \mforall{}[Y:win2strat(coW-game(a.B[a];w2;w3);n)].
    (coW-trans(X;  Y)  \mmember{}  win2strat(coW-game(a.B[a];w1;w3);n))



Date html generated: 2018_07_25-PM-01_47_52
Last ObjectModification: 2018_07_11-AM-10_48_10

Theory : co-recursion


Home Index