Nuprl Lemma : cons_interleaving

[T:Type]. ∀x:T. ∀L,L1,L2:T List.  (interleaving(T;L1;L2;L)  interleaving(T;[x L1];L2;[x L]))


Proof




Definitions occuring in Statement :  interleaving: interleaving(T;L1;L2;L) cons: [a b] list: List uall: [x:A]. B[x] all: x:A. B[x] implies:  Q universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] all: x:A. B[x] implies:  Q interleaving: interleaving(T;L1;L2;L) member: t ∈ T top: Top and: P ∧ Q cand: c∧ B nat: guard: {T} ge: i ≥  decidable: Dec(P) or: P ∨ Q false: False uiff: uiff(P;Q) uimplies: supposing a not: ¬A satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] prop: le: A ≤ B less_than': less_than'(a;b) disjoint_sublists: disjoint_sublists(T;L1;L2;L) int_seg: {i..j-} lelt: i ≤ j < k less_than: a < b squash: T true: True nat_plus: + subtype_rel: A ⊆B so_lambda: λ2x.t[x] so_apply: x[s] cons: [a b] colength: colength(L) nil: [] it: sq_type: SQType(T) so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] increasing: increasing(f;k) subtract: m rev_implies:  Q iff: ⇐⇒ Q fadd: fadd(f;g) select: L[n] fshift: fshift(f;x) bool: 𝔹 unit: Unit btrue: tt ifthenelse: if then else fi  bfalse: ff bnot: ¬bb assert: b nequal: a ≠ b ∈ 
Lemmas referenced :  length_of_cons_lemma istype-void nat_properties decidable__equal_int length_wf add-is-int-iff full-omega-unsat intformand_wf intformnot_wf intformeq_wf itermAdd_wf itermVar_wf itermConstant_wf istype-int int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_eq_lemma int_term_value_add_lemma int_term_value_var_lemma int_term_value_constant_lemma int_formula_prop_wf false_wf add_nat_wf istype-false le_wf decidable__le intformle_wf int_formula_prop_le_lemma fadd_wf length_wf_nat less_than_wf int_seg_wf fshift_wf add_nat_plus nat_plus_properties decidable__lt intformless_wf int_formula_prop_less_lemma increasing_wf non_neg_length select_wf cons_wf int_seg_properties set_subtype_base lelt_wf int_subtype_base interleaving_wf list_wf istype-universe decidable__assert null_wf assert_of_null ge_wf list-cases product_subtype_list colength-cons-not-zero colength_wf_list subtract-1-ge-0 subtype_base_sq spread_cons_lemma subtract_wf itermSubtract_wf int_term_value_subtract_lemma null_nil_lemma btrue_wf null_cons_lemma bfalse_wf btrue_neq_bfalse nat_wf length_of_nil_lemma non_nil_length iff_weakening_uiff assert_wf equal-wf-T-base fshift_increasing fadd_increasing const_nondecreasing eq_int_wf equal-wf-base bool_wf bnot_wf not_wf uiff_transitivity eqtt_to_assert assert_of_eq_int iff_transitivity eqff_to_assert assert_of_bnot equal_wf iff_weakening_equal add-subtract-cancel squash_wf true_wf select_cons_tl subtype_rel_self int_seg_subtype_nat subtract_nat_wf subtract-is-int-iff bool_cases_sqequal bool_subtype_base assert-bnot neg_assert_of_eq_int
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt lambdaFormation_alt sqequalHypSubstitution sqequalRule cut introduction extract_by_obid dependent_functionElimination thin isect_memberEquality_alt voidElimination hypothesis productElimination isectElimination equalityTransitivity equalitySymmetry applyLambdaEquality setElimination rename hypothesisEquality addEquality natural_numberEquality unionElimination pointwiseFunctionality promote_hyp baseApply closedConclusion baseClosed independent_isectElimination approximateComputation independent_functionElimination dependent_pairFormation_alt lambdaEquality_alt int_eqEquality independent_pairFormation universeIsType dependent_set_memberEquality_alt inhabitedIsType equalityIsType1 because_Cache imageMemberEquality productIsType functionExtensionality applyEquality functionIsType imageElimination equalityIsType4 intEquality universeEquality intWeakElimination axiomSqEquality functionIsTypeImplies hypothesis_subsumption instantiate equalityIsType3 functionExtensionality_alt equalityElimination cumulativity equalityIsType2

Latex:
\mforall{}[T:Type].  \mforall{}x:T.  \mforall{}L,L1,L2:T  List.    (interleaving(T;L1;L2;L)  {}\mRightarrow{}  interleaving(T;[x  /  L1];L2;[x  /  L]))



Date html generated: 2019_10_15-AM-10_55_33
Last ObjectModification: 2018_10_09-AM-10_15_59

Theory : list!


Home Index