Nuprl Lemma : test-exists-elim

[A:Type]. ∀[Q:A ⟶ A ⟶ ℙ].  ∀x,b:A.  (∃z:A × A. (Q[fst(z);snd(z)] ∧ (z = <x, b> ∈ (A × A))) ⇐⇒ Q[x;b] ∧ (x x ∈ A))


Proof




Definitions occuring in Statement :  uall: [x:A]. B[x] prop: so_apply: x[s1;s2] pi1: fst(t) pi2: snd(t) all: x:A. B[x] exists: x:A. B[x] iff: ⇐⇒ Q and: P ∧ Q function: x:A ⟶ B[x] pair: <a, b> product: x:A × B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] all: x:A. B[x] member: t ∈ T prop: iff: ⇐⇒ Q and: P ∧ Q implies:  Q exists: x:A. B[x] cand: c∧ B so_lambda: λ2x.t[x] so_apply: x[s] so_apply: x[s1;s2] subtype_rel: A ⊆B pi1: fst(t) pi2: snd(t) rev_implies:  Q
Lemmas referenced :  and_wf equal_wf pi1_wf pi2_wf subtype_rel_self exists_wf member_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation lambdaFormation hypothesisEquality functionEquality cumulativity universeEquality cut sqequalHypSubstitution productElimination thin independent_pairFormation independent_functionElimination dependent_pairFormation because_Cache hypothesis hyp_replacement equalitySymmetry sqequalRule dependent_set_memberEquality introduction extract_by_obid isectElimination productEquality equalityTransitivity applyLambdaEquality setElimination rename lambdaEquality applyEquality independent_pairEquality dependent_functionElimination instantiate promote_hyp

Latex:
\mforall{}[A:Type].  \mforall{}[Q:A  {}\mrightarrow{}  A  {}\mrightarrow{}  \mBbbP{}].
    \mforall{}x,b:A.    (\mexists{}z:A  \mtimes{}  A.  (Q[fst(z);snd(z)]  \mwedge{}  (z  =  <x,  b>))  \mLeftarrow{}{}\mRightarrow{}  Q[x;b]  \mwedge{}  (x  =  x))



Date html generated: 2019_10_15-AM-11_06_52
Last ObjectModification: 2018_09_25-PM-00_08_23

Theory : general


Home Index