Nuprl Lemma : cycle-append

[n:ℕ]. ∀[as,bs:ℕList].  cycle(as bs) cycle(bs as) ∈ (ℕn ⟶ ℕn) supposing no_repeats(ℕn;as bs)


Proof




Definitions occuring in Statement :  cycle: cycle(L) no_repeats: no_repeats(T;l) append: as bs list: List int_seg: {i..j-} nat: uimplies: supposing a uall: [x:A]. B[x] function: x:A ⟶ B[x] natural_number: $n equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a nat: prop: all: x:A. B[x] implies:  Q decidable: Dec(P) or: P ∨ Q l_member: (x ∈ l) exists: x:A. B[x] cand: c∧ B squash: T true: True subtype_rel: A ⊆B guard: {T} iff: ⇐⇒ Q and: P ∧ Q rev_implies:  Q uiff: uiff(P;Q) rev_uimplies: rev_uimplies(P;Q) int_seg: {i..j-} lelt: i ≤ j < k top: Top ge: i ≥  not: ¬A satisfiable_int_formula: satisfiable_int_formula(fmla) false: False sq_type: SQType(T) less_than: a < b no_repeats: no_repeats(T;l) subtract: m le: A ≤ B so_lambda: λ2x.t[x] so_apply: x[s] less_than': less_than'(a;b) bool: 𝔹 unit: Unit it: btrue: tt ifthenelse: if then else fi  bfalse: ff cons: [a b] so_apply: x[s1;s2] so_lambda: λ2y.t[x; y] nil: [] select: L[n] so_apply: x[s1;s2;s3] so_lambda: so_lambda(x,y,z.t[x; y; z]) append: as bs assert: b bnot: ¬bb nequal: a ≠ b ∈ 
Lemmas referenced :  int_seg_wf no_repeats_wf append_wf istype-nat decidable__l_member decidable__equal_int_seg equal_wf squash_wf true_wf istype-universe cycle_wf subtype_rel_self iff_weakening_equal no_repeats-append l_disjoint-symmetry length-append istype-void int_seg_properties nat_properties decidable__le full-omega-unsat intformand_wf intformnot_wf intformle_wf itermConstant_wf itermVar_wf istype-int int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_wf istype-le istype-less_than length_wf apply-cycle-member decidable__lt subtype_base_sq int_subtype_base decidable__equal_int int_formula_prop_less_lemma intformless_wf le_wf false_wf int_formula_prop_eq_lemma int_term_value_add_lemma intformeq_wf itermAdd_wf satisfiable-full-omega-tt add-is-int-iff nat_wf length_wf_nat add_nat_wf lelt_wf select_append_back add-associates minus-one-mul add-mul-special zero-mul add-zero select_append_front eq_int_wf subtract_wf equal-wf-base bool_wf list_subtype_base set_subtype_base assert_wf bnot_wf not_wf istype-assert le_weakening2 select_wf istype-false non_neg_length itermSubtract_wf int_term_value_subtract_lemma subtype_rel_list add-comm add-swap uiff_transitivity eqtt_to_assert assert_of_eq_int iff_transitivity iff_weakening_uiff eqff_to_assert assert_of_bnot less_than_wf list_ind_cons_lemma length_of_cons_lemma product_subtype_list base_wf stuck-spread list_ind_nil_lemma length_of_nil_lemma list-cases select-cons-hd top_wf length_append cons_wf equal-wf-T-base neg_assert_of_eq_int assert-bnot bool_subtype_base bool_cases_sqequal add-commutes two-mul list_wf int_term_value_mul_lemma itermMultiply_wf multiply-is-int-iff nequal_wf l_member_wf member_append apply-cycle-non-member
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :isect_memberFormation_alt,  introduction cut Error :functionExtensionality_alt,  Error :universeIsType,  extract_by_obid sqequalHypSubstitution isectElimination thin natural_numberEquality setElimination rename because_Cache hypothesis hypothesisEquality sqequalRule Error :isect_memberEquality_alt,  axiomEquality Error :isectIsTypeImplies,  Error :inhabitedIsType,  dependent_functionElimination independent_functionElimination Error :lambdaFormation_alt,  unionElimination productElimination applyEquality Error :lambdaEquality_alt,  imageElimination equalityTransitivity equalitySymmetry instantiate universeEquality imageMemberEquality baseClosed independent_isectElimination closedConclusion independent_pairFormation Error :dependent_set_memberEquality_alt,  voidElimination applyLambdaEquality approximateComputation Error :dependent_pairFormation_alt,  int_eqEquality Error :productIsType,  cumulativity intEquality addEquality computeAll lambdaEquality dependent_pairFormation baseApply promote_hyp pointwiseFunctionality voidEquality isect_memberEquality lambdaFormation dependent_set_memberEquality Error :equalityIsType4,  Error :functionIsType,  equalityElimination Error :equalityIsType1,  hypothesis_subsumption minusEquality multiplyEquality comment impliesFunctionality productEquality inlFormation inrFormation

Latex:
\mforall{}[n:\mBbbN{}].  \mforall{}[as,bs:\mBbbN{}n  List].    cycle(as  @  bs)  =  cycle(bs  @  as)  supposing  no\_repeats(\mBbbN{}n;as  @  bs)



Date html generated: 2019_06_20-PM-01_41_06
Last ObjectModification: 2018_10_18-AM-11_47_44

Theory : list_1


Home Index