Nuprl Lemma : cons_cancel_wrt_permutation

[A:Type]. ∀a:A. ∀bs,cs:A List.  (permutation(A;[a bs];[a cs])  permutation(A;bs;cs))


Proof




Definitions occuring in Statement :  permutation: permutation(T;L1;L2) 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 member: t ∈ T uimplies: supposing a ge: i ≥  decidable: Dec(P) or: P ∨ Q false: False le: A ≤ B and: P ∧ Q not: ¬A satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] prop: permutation: permutation(T;L1;L2) nat: int_seg: {i..j-} lelt: i ≤ j < k cand: c∧ B less_than': less_than'(a;b) subtype_rel: A ⊆B so_lambda: λ2x.t[x] so_apply: x[s] guard: {T} squash: T less_than: a < b inject: Inj(A;B;f) compose: g flip: (i, j) bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) ifthenelse: if then else fi  bfalse: ff iff: ⇐⇒ Q rev_implies:  Q true: True cons: [a b] select: L[n] sq_type: SQType(T) nequal: a ≠ b ∈  assert: b bnot: ¬bb subtract: m
Lemmas referenced :  permutation-length cons_wf length_of_cons_lemma non_neg_length decidable__equal_int length_wf full-omega-unsat intformand_wf intformnot_wf intformeq_wf itermVar_wf itermAdd_wf itermConstant_wf istype-int int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_eq_lemma int_term_value_var_lemma int_term_value_add_lemma int_term_value_constant_lemma int_formula_prop_wf permutation_wf list_wf istype-universe decidable__lt intformless_wf intformle_wf int_formula_prop_less_lemma int_formula_prop_le_lemma compose_wf int_seg_wf flip_wf decidable__le istype-le istype-less_than inject_wf permute_list_wf istype-false set_subtype_base lelt_wf int_subtype_base istype-void istype-assert not_wf bnot_wf int_seg_properties equal-wf-base assert_wf bool_wf equal-wf-T-base eq_int_wf uiff_transitivity eqtt_to_assert assert_of_eq_int iff_transitivity iff_weakening_uiff eqff_to_assert assert_of_bnot le_weakening2 length_wf_nat nat_properties list_extensionality equal_wf squash_wf true_wf subtype_rel_self iff_weakening_equal permute_list_length istype-nat permute_list_select select_wf less_than_wf le_wf subtype_base_sq neg_assert_of_eq_int assert-bnot bool_subtype_base bool_cases_sqequal int_term_value_subtract_lemma itermSubtract_wf subtract_wf add-member-int_seg2 false_wf subtract_nat_wf zero-add add-commutes add-swap add-associates select_cons_tl
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt lambdaFormation_alt cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality hypothesis independent_isectElimination sqequalRule dependent_functionElimination Error :memTop,  because_Cache unionElimination productElimination natural_numberEquality approximateComputation independent_functionElimination dependent_pairFormation_alt lambdaEquality_alt int_eqEquality independent_pairFormation universeIsType voidElimination inhabitedIsType instantiate universeEquality equalityTransitivity equalitySymmetry dependent_set_memberEquality_alt productIsType applyEquality equalityIstype applyLambdaEquality addEquality intEquality baseClosed sqequalBase functionIsType imageElimination closedConclusion rename setElimination equalityElimination imageMemberEquality productEquality cumulativity promote_hyp pointwiseFunctionality baseApply

Latex:
\mforall{}[A:Type].  \mforall{}a:A.  \mforall{}bs,cs:A  List.    (permutation(A;[a  /  bs];[a  /  cs])  {}\mRightarrow{}  permutation(A;bs;cs))



Date html generated: 2020_05_19-PM-09_44_24
Last ObjectModification: 2019_12_31-PM-00_14_35

Theory : list_1


Home Index