Nuprl Lemma : alpha-eq-terms_functionality
∀[opr:Type]
  ∀x1,x2,y1,y2:term(opr).
    (alpha-eq-terms(opr;x1;x2)
    ⇒ alpha-eq-terms(opr;y1;y2)
    ⇒ (alpha-eq-terms(opr;x1;y1) ⇐⇒ alpha-eq-terms(opr;x2;y2)))
Proof
Definitions occuring in Statement : 
alpha-eq-terms: alpha-eq-terms(opr;a;b), 
term: term(opr), 
uall: ∀[x:A]. B[x], 
all: ∀x:A. B[x], 
iff: P ⇐⇒ Q, 
implies: P ⇒ Q, 
universe: Type
Definitions unfolded in proof : 
uall: ∀[x:A]. B[x], 
all: ∀x:A. B[x], 
implies: P ⇒ Q, 
iff: P ⇐⇒ Q, 
and: P ∧ Q, 
member: t ∈ T, 
guard: {T}, 
prop: ℙ, 
rev_implies: P ⇐ Q
Lemmas referenced : 
alpha-eq-terms_inversion, 
alpha-eq-terms_transitivity, 
alpha-eq-terms_wf, 
term_wf, 
istype-universe
Rules used in proof : 
sqequalSubstitution, 
sqequalTransitivity, 
computationStep, 
sqequalReflexivity, 
isect_memberFormation_alt, 
lambdaFormation_alt, 
independent_pairFormation, 
cut, 
introduction, 
extract_by_obid, 
sqequalHypSubstitution, 
isectElimination, 
thin, 
hypothesisEquality, 
dependent_functionElimination, 
independent_functionElimination, 
hypothesis, 
universeIsType, 
inhabitedIsType, 
instantiate, 
universeEquality
Latex:
\mforall{}[opr:Type]
    \mforall{}x1,x2,y1,y2:term(opr).
        (alpha-eq-terms(opr;x1;x2)
        {}\mRightarrow{}  alpha-eq-terms(opr;y1;y2)
        {}\mRightarrow{}  (alpha-eq-terms(opr;x1;y1)  \mLeftarrow{}{}\mRightarrow{}  alpha-eq-terms(opr;x2;y2)))
Date html generated:
2020_05_19-PM-09_55_46
Last ObjectModification:
2020_03_09-PM-04_09_07
Theory : terms
Home
Index