Nuprl Lemma : unshuffle-map

[f:ℕ ⟶ Top]. ∀[m:ℕ].  (unshuffle(map(f;upto(2 m))) map(λi.<(2 i), ((2 i) 1)>;upto(m)))


Proof




Definitions occuring in Statement :  unshuffle: unshuffle(L) upto: upto(n) map: map(f;as) nat: uall: [x:A]. B[x] top: Top apply: a lambda: λx.A[x] function: x:A ⟶ B[x] pair: <a, b> multiply: m add: m natural_number: $n sqequal: t
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T upto: upto(n) all: x:A. B[x] nat: implies:  Q false: False ge: i ≥  uimplies: supposing a not: ¬A satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] top: Top and: P ∧ Q prop: int_seg: {i..j-} from-upto: [n, m) bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) ifthenelse: if then else fi  bfalse: ff or: P ∨ Q sq_type: SQType(T) guard: {T} bnot: ¬bb assert: b lelt: i ≤ j < k shuffle: shuffle(ps) concat: concat(ll) decidable: Dec(P) pi1: fst(t) pi2: snd(t) le: A ≤ B less_than': less_than'(a;b) so_lambda: λ2x.t[x] so_apply: x[s] squash: T subtype_rel: A ⊆B true: True append: as bs so_lambda: so_lambda(x,y,z.t[x; y; z]) so_apply: x[s1;s2;s3] has-value: (a)↓ subtract: m cand: c∧ B
Lemmas referenced :  nat_properties full-omega-unsat intformand_wf intformle_wf itermConstant_wf itermVar_wf intformless_wf int_formula_prop_and_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf ge_wf less_than_wf le_wf subtract_wf int_seg_wf lt_int_wf bool_wf eqtt_to_assert assert_of_lt_int map_cons_lemma eqff_to_assert equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot int_seg_properties itermMultiply_wf itermSubtract_wf int_term_value_mul_lemma int_term_value_subtract_lemma map_nil_lemma reduce_nil_lemma decidable__le intformnot_wf int_formula_prop_not_lemma false_wf decidable__lt itermAdd_wf int_term_value_add_lemma lelt_wf list_wf list_subtype_base set_subtype_base int_subtype_base from-upto_wf squash_wf true_wf mul-commutes unshuffle-shuffle top_wf map_wf upto_wf nat_wf reduce_cons_lemma list_ind_cons_lemma list_ind_nil_lemma value-type-has-value int-value-type add-member-int_seg2 add-subtract-cancel decidable__equal_int intformeq_wf int_formula_prop_eq_lemma subtype_rel_list_set
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut thin lambdaFormation extract_by_obid sqequalHypSubstitution isectElimination hypothesisEquality hypothesis setElimination rename intWeakElimination natural_numberEquality independent_isectElimination approximateComputation independent_functionElimination dependent_pairFormation lambdaEquality int_eqEquality intEquality dependent_functionElimination isect_memberEquality voidElimination voidEquality sqequalRule independent_pairFormation sqequalAxiom addEquality because_Cache multiplyEquality unionElimination equalityElimination equalityTransitivity equalitySymmetry productElimination promote_hyp instantiate cumulativity dependent_set_memberEquality setEquality productEquality applyEquality imageElimination imageMemberEquality baseClosed independent_pairEquality functionEquality callbyvalueReduce

Latex:
\mforall{}[f:\mBbbN{}  {}\mrightarrow{}  Top].  \mforall{}[m:\mBbbN{}].
    (unshuffle(map(f;upto(2  *  m)))  \msim{}  map(\mlambda{}i.<f  (2  *  i),  f  ((2  *  i)  +  1)>upto(m)))



Date html generated: 2018_05_21-PM-00_44_48
Last ObjectModification: 2018_05_19-AM-06_49_28

Theory : list_1


Home Index