### Nuprl Lemma : cycle-conjugate

`∀[n:ℕ]. ∀[L:ℕn List].`
`  ∀[f,g:ℕn ⟶ ℕn].`
`    ((g o (cycle(L) o f)) = cycle(map(g;L)) ∈ (ℕn ⟶ ℕn)) supposing `
`       ((∀a:ℕn. ((f (g a)) = a ∈ ℕn)) and `
`       (∀a:ℕn. ((g (f a)) = a ∈ ℕn))) `
`  supposing no_repeats(ℕn;L)`

Proof

Definitions occuring in Statement :  cycle: `cycle(L)` no_repeats: `no_repeats(T;l)` map: `map(f;as)` list: `T List` compose: `f o g` int_seg: `{i..j-}` nat: `ℕ` uimplies: `b supposing a` uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` apply: `f a` function: `x:A ⟶ B[x]` natural_number: `\$n` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` uimplies: `b supposing a` compose: `f o g` all: `∀x:A. B[x]` nat: `ℕ` subtype_rel: `A ⊆r B` int_seg: `{i..j-}` so_lambda: `λ2x.t[x]` so_apply: `x[s]` prop: `ℙ` implies: `P `` Q` decidable: `Dec(P)` or: `P ∨ Q` l_member: `(x ∈ l)` exists: `∃x:A. B[x]` cand: `A c∧ B` sq_type: `SQType(T)` guard: `{T}` top: `Top` lelt: `i ≤ j < k` and: `P ∧ Q` squash: `↓T` true: `True` iff: `P `⇐⇒` Q` rev_implies: `P `` Q` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` uiff: `uiff(P;Q)` ifthenelse: `if b then t else f fi ` bfalse: `ff` bnot: `¬bb` assert: `↑b` false: `False` satisfiable_int_formula: `satisfiable_int_formula(fmla)` ge: `i ≥ j ` not: `¬A` no_repeats: `no_repeats(T;l)` le: `A ≤ B`
Lemmas referenced :  int_seg_wf set_subtype_base lelt_wf istype-int int_subtype_base no_repeats_wf list_wf nat_wf decidable__l_member decidable__equal_int_seg subtype_base_sq select-map istype-void subtype_rel_list top_wf le_wf less_than_wf length_wf equal_wf squash_wf true_wf subtype_rel_self iff_weakening_equal map_wf map-length eqtt_to_assert assert_of_eq_int map_select eqff_to_assert bool_cases_sqequal bool_subtype_base assert-bnot neg_assert_of_eq_int apply-cycle-member not_wf int_formula_prop_wf int_term_value_var_lemma int_term_value_constant_lemma int_formula_prop_le_lemma int_formula_prop_not_lemma int_formula_prop_and_lemma itermVar_wf itermConstant_wf intformle_wf intformnot_wf intformand_wf satisfiable-full-omega-tt decidable__le int_seg_properties nat_properties select_wf length-map apply-cycle-non-member l_member_wf member_map
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :isect_memberFormation_alt,  introduction cut Error :functionExtensionality_alt,  sqequalRule Error :universeIsType,  because_Cache hypothesis Error :functionIsType,  extract_by_obid sqequalHypSubstitution isectElimination thin natural_numberEquality setElimination rename hypothesisEquality Error :equalityIsType3,  Error :inhabitedIsType,  applyEquality intEquality Error :lambdaEquality_alt,  independent_isectElimination Error :isect_memberEquality_alt,  axiomEquality equalityTransitivity equalitySymmetry dependent_functionElimination independent_functionElimination Error :lambdaFormation_alt,  unionElimination productElimination instantiate cumulativity voidElimination Error :dependent_set_memberEquality_alt,  independent_pairFormation Error :productIsType,  imageElimination universeEquality functionExtensionality imageMemberEquality baseClosed equalityElimination Error :dependent_pairFormation_alt,  Error :equalityIsType1,  promote_hyp addEquality computeAll int_eqEquality lambdaEquality dependent_pairFormation applyLambdaEquality lambdaFormation voidEquality isect_memberEquality isect_memberFormation dependent_set_memberEquality levelHypothesis equalityUniverse

Latex:
\mforall{}[n:\mBbbN{}].  \mforall{}[L:\mBbbN{}n  List].
\mforall{}[f,g:\mBbbN{}n  {}\mrightarrow{}  \mBbbN{}n].
((g  o  (cycle(L)  o  f))  =  cycle(map(g;L)))  supposing
((\mforall{}a:\mBbbN{}n.  ((f  (g  a))  =  a))  and
(\mforall{}a:\mBbbN{}n.  ((g  (f  a))  =  a)))
supposing  no\_repeats(\mBbbN{}n;L)

Date html generated: 2019_06_20-PM-01_40_07
Last ObjectModification: 2018_10_04-PM-02_28_48

Theory : list_1

Home Index