Nuprl Lemma : all-but-one

[T:Type]. ∀[P:T ⟶ ℙ].
  ∀L:T List
    (∀x,y:T.  Dec(x y ∈ T))
     ((∀x∈L.(∀y∈L.P[x] ∨ P[y] supposing ¬(x y ∈ T))) ⇐⇒ (∃x∈L. (∀y∈L.P[y] supposing ¬(x y ∈ T)))) 
    supposing 0 < ||L||


Proof




Definitions occuring in Statement :  l_exists: (∃x∈L. P[x]) l_all: (∀x∈L.P[x]) length: ||as|| list: List less_than: a < b decidable: Dec(P) uimplies: supposing a uall: [x:A]. B[x] prop: so_apply: x[s] all: x:A. B[x] iff: ⇐⇒ Q not: ¬A implies:  Q or: P ∨ Q function: x:A ⟶ B[x] natural_number: $n universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] all: x:A. B[x] uimplies: supposing a member: t ∈ T implies:  Q iff: ⇐⇒ Q and: P ∧ Q prop: so_lambda: λ2x.t[x] so_apply: x[s] rev_implies:  Q or: P ∨ Q less_than: a < b squash: T less_than': less_than'(a;b) false: False top: Top decidable: Dec(P) l_all: (∀x∈L.P[x]) not: ¬A int_seg: {i..j-} guard: {T} lelt: i ≤ j < k satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] uiff: uiff(P;Q) subtract: m ge: i ≥  le: A ≤ B cand: c∧ B true: True l_exists: (∃x∈L. P[x]) select: L[n] cons: [a b] subtype_rel: A ⊆B
Lemmas referenced :  member-less_than length_wf l_all_wf isect_wf not_wf equal_wf or_wf l_member_wf l_exists_wf all_wf decidable_wf less_than_wf list_wf list_induction length_of_nil_lemma length_of_cons_lemma cons_wf l_all_cons decidable__lt select_wf int_seg_properties decidable__le satisfiable-full-omega-tt intformand_wf intformnot_wf intformle_wf itermConstant_wf itermVar_wf 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 intformless_wf int_formula_prop_less_lemma add-member-int_seg2 subtract_wf itermSubtract_wf int_term_value_subtract_lemma non_neg_length itermAdd_wf int_term_value_add_lemma lelt_wf int_seg_wf add-associates add-swap add-commutes zero-add add-subtract-cancel select-cons-tl squash_wf le_wf true_wf and_wf false_wf iff_weakening_equal list-cases product_subtype_list nil_wf l_all_nil l_exists_iff l_all_iff
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation lambdaFormation cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin natural_numberEquality cumulativity hypothesisEquality hypothesis independent_isectElimination rename independent_pairFormation sqequalRule lambdaEquality setElimination applyEquality functionExtensionality because_Cache setEquality functionEquality universeEquality dependent_functionElimination independent_functionElimination imageElimination productElimination voidElimination isect_memberEquality voidEquality addEquality unionElimination dependent_pairFormation int_eqEquality intEquality computeAll dependent_set_memberEquality equalityTransitivity equalitySymmetry hyp_replacement productEquality imageMemberEquality baseClosed instantiate applyLambdaEquality promote_hyp hypothesis_subsumption inrFormation inlFormation

Latex:
\mforall{}[T:Type].  \mforall{}[P:T  {}\mrightarrow{}  \mBbbP{}].
    \mforall{}L:T  List
        (\mforall{}x,y:T.    Dec(x  =  y))
        {}\mRightarrow{}  ((\mforall{}x\mmember{}L.(\mforall{}y\mmember{}L.P[x]  \mvee{}  P[y]  supposing  \mneg{}(x  =  y)))  \mLeftarrow{}{}\mRightarrow{}  (\mexists{}x\mmember{}L.  (\mforall{}y\mmember{}L.P[y]  supposing  \mneg{}(x  =  y)))) 
        supposing  0  <  ||L||



Date html generated: 2017_04_17-AM-07_50_17
Last ObjectModification: 2017_02_27-PM-04_24_43

Theory : list_1


Home Index