Nuprl Lemma : concat-unroll

∀a:Top. (concat(a) ~ if a is a pair then (fst(a)) @ concat(snd(a)) otherwise if a = Ax then [] otherwise ⊥)


Proof




Definitions occuring in Statement :  concat: concat(ll),  append: as @ bs,  nil: [],  bottom: ⊥,  top: Top,  pi1: fst(t),  pi2: snd(t),  ispair: if z is a pair then a otherwise b,  isaxiom: if z = Ax then a otherwise b,  all: ∀x:A. B[x],  sqequal: s ~ t
Definitions unfolded in proof :  all: ∀x:A. B[x],  concat: concat(ll),  reduce: reduce(f;k;as),  list_ind: list_ind,  has-value: (a)↓,  member: t ∈ T,  implies: P ⇒ Q,  or: P ∨ Q,  pi1: fst(t),  pi2: snd(t),  top: Top,  uall: ∀[x:A]. B[x]
Lemmas referenced :  is-exception_wf,  has-value_wf_base,  top_wf,  has-value-implies-dec-ispair-2
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  lambdaFormation,  sqequalRule,  sqequalSqle,  cut,  sqleRule,  thin,  divergentSqle,  callbyvalueCallbyvalue,  sqequalHypSubstitution,  hypothesis,  callbyvalueReduce,  lemma_by_obid,  dependent_functionElimination,  hypothesisEquality,  independent_functionElimination,  unionElimination,  sqleReflexivity,  isect_memberEquality,  voidElimination,  voidEquality,  because_Cache,  introduction,  callbyvalueExceptionCases,  axiomSqleEquality,  exceptionSqequal,  baseApply,  closedConclusion,  baseClosed,  isectElimination,  callbyvalueIspair,  ispairExceptionCases

Latex:
\mforall{}a:Top
    (concat(a)  \msim{}  if  a  is  a  pair  then  (fst(a))  @  concat(snd(a))
                              otherwise  if  a  =  Ax  then  []  otherwise  \mbot{})



Date html generated: 2016_05_14-AM-06_31_57
Last ObjectModification: 2016_01_14-PM-08_24_01

Theory : list_0


Home Index