Nuprl Lemma : cycle-flip-lemma

[n:ℕ]. ∀[L:ℕList].
  (cycle(L) ((hd(L), hd(tl(L))) cycle(tl(L))) ∈ (ℕn ⟶ ℕn)) supposing (1 < ||L|| and no_repeats(ℕn;L))


Proof




Definitions occuring in Statement :  cycle: cycle(L) flip: (i, j) no_repeats: no_repeats(T;l) length: ||as|| tl: tl(l) hd: hd(l) list: List compose: g int_seg: {i..j-} nat: less_than: a < b uimplies: supposing a uall: [x:A]. B[x] function: x:A ⟶ B[x] natural_number: $n equal: t ∈ T
Definitions unfolded in proof :  cycle: cycle(L) so_lambda: so_lambda(x,y,z.t[x; y; z]) so_apply: x[s1;s2;s3] let: let subtract: m flip: (i, j) bnot: ¬bb assert: b nequal: a ≠ b ∈  bool: 𝔹 unit: Unit it: btrue: tt ifthenelse: if then else fi  bfalse: ff ge: i ≥  satisfiable_int_formula: satisfiable_int_formula(fmla) not: ¬A uiff: uiff(P;Q) lelt: i ≤ j < k le: A ≤ B true: True subtype_rel: A ⊆B iff: ⇐⇒ Q rev_implies:  Q select: L[n] l_member: (x ∈ l) exists: x:A. B[x] cand: c∧ B int_seg: {i..j-} so_lambda: λ2x.t[x] so_apply: x[s] sq_type: SQType(T) guard: {T} compose: g implies:  Q decidable: Dec(P) uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a nat: all: x:A. B[x] or: P ∨ Q less_than: a < b squash: T less_than': less_than'(a;b) false: False and: P ∧ Q cons: [a b] top: Top prop:
Lemmas referenced :  l_member_wf null_cons_lemma list_ind_cons_lemma null_nil_lemma hd_wf list_ind_wf ifthenelse_wf le_wf length_wf_nat apply-cycle-non-member istype-void select_member full-omega-unsat istype-int istype-le istype-less_than cons_member assert_elim btrue_neq_bfalse select_cons_tl add-associates add-swap add-commutes zero-add non_neg_length bool_cases_sqequal bool_subtype_base assert-bnot neg_assert_of_eq_int decidable__equal_int select_wf decidable__le add-is-int-iff intformeq_wf itermSubtract_wf int_formula_prop_eq_lemma int_term_value_subtract_lemma false_wf eq_int_wf subtract_wf bool_wf equal-wf-T-base assert_wf bnot_wf not_wf uiff_transitivity eqtt_to_assert assert_of_eq_int iff_transitivity iff_weakening_uiff eqff_to_assert assert_of_bnot select-cons-tl int_seg_properties nat_properties decidable__lt satisfiable-full-omega-tt intformand_wf intformnot_wf intformless_wf itermConstant_wf itermAdd_wf itermVar_wf intformle_wf int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_less_lemma int_term_value_constant_lemma int_term_value_add_lemma int_term_value_var_lemma int_formula_prop_le_lemma int_formula_prop_wf add-subtract-cancel no_repeats_cons equal_wf squash_wf true_wf cycle_wf flip_wf apply-cycle-member iff_weakening_equal subtype_base_sq set_subtype_base lelt_wf int_subtype_base cons_wf decidable__l_member decidable__equal_int_seg int_seg_wf list-cases length_of_nil_lemma reduce_tl_nil_lemma product_subtype_list length_of_cons_lemma reduce_hd_cons_lemma reduce_tl_cons_lemma less_than_wf length_wf no_repeats_wf list_wf nat_wf
Rules used in proof :  inlFormation hyp_replacement Error :isect_memberEquality_alt,  Error :dependent_set_memberEquality_alt,  approximateComputation Error :dependent_pairFormation_alt,  Error :lambdaEquality_alt,  Error :universeIsType,  Error :productIsType,  inrFormation productEquality addLevel levelHypothesis pointwiseFunctionality baseApply closedConclusion equalityElimination impliesFunctionality addEquality applyLambdaEquality dependent_pairFormation int_eqEquality computeAll applyEquality universeEquality dependent_set_memberEquality independent_pairFormation imageMemberEquality baseClosed instantiate cumulativity independent_isectElimination intEquality lambdaEquality functionExtensionality independent_functionElimination lambdaFormation sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut extract_by_obid sqequalHypSubstitution isectElimination thin natural_numberEquality setElimination rename hypothesisEquality hypothesis dependent_functionElimination unionElimination sqequalRule imageElimination productElimination voidElimination promote_hyp hypothesis_subsumption isect_memberEquality voidEquality axiomEquality because_Cache equalityTransitivity equalitySymmetry

Latex:
\mforall{}[n:\mBbbN{}].  \mforall{}[L:\mBbbN{}n  List].
    (cycle(L)  =  ((hd(L),  hd(tl(L)))  o  cycle(tl(L))))  supposing  (1  <  ||L||  and  no\_repeats(\mBbbN{}n;L))



Date html generated: 2019_06_20-PM-02_13_03
Last ObjectModification: 2019_06_20-PM-02_08_21

Theory : list_1


Home Index