Nuprl Lemma : conditional-ifthenelse
[T,V:Type]. 
[A,B:T 
 
]. 
[f:{x:T| 
(A x)}  
 V]. 
[g:{x:T| 
(B x)}  
 V].
  ((
x.if A x then f x else g x fi ) = [
x.(
(A x))? f : g])
Proof not projected
Definitions occuring in Statement : 
conditional: [P? f : g], 
assert:
b, 
ifthenelse: if b then t else f fi , 
bool:
, 
uall:
[x:A]. B[x], 
or: P 
 Q, 
set: {x:A| B[x]} , 
apply: f a, 
lambda:
x.A[x], 
function: x:A 
 B[x], 
universe: Type, 
equal: s = t, 
bool-decider: bool-decider(b)
Definitions : 
member: t 
 T, 
uall:
[x:A]. B[x], 
conditional: [P? f : g], 
so_lambda: 
x.t[x], 
all:
x:A. B[x], 
or: P 
 Q, 
bfalse: ff, 
btrue: tt, 
implies: P 
 Q, 
top: Top, 
ifthenelse: if b then t else f fi , 
prop:
, 
false: False, 
so_apply: x[s], 
not:
A, 
and: P 
 Q, 
uiff: uiff(P;Q), 
uimplies: b supposing a, 
unit: Unit, 
bool:
, 
iff: P 

 Q, 
decidable: Dec(P), 
it:
Lemmas : 
bool_wf, 
assert_wf, 
not_wf, 
bool-decider_wf, 
branch_wf2, 
or_wf, 
assert_of_bnot, 
eqff_to_assert, 
bnot_wf, 
equal_wf, 
uiff_transitivity, 
eqtt_to_assert, 
branch-ifthenelse, 
iff_weakening_uiff, 
decidable__assert, 
decidable__or
\mforall{}[T,V:Type].  \mforall{}[A,B:T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[f:\{x:T|  \muparrow{}(A  x)\}    {}\mrightarrow{}  V].  \mforall{}[g:\{x:T|  \muparrow{}(B  x)\}    {}\mrightarrow{}  V].
    ((\mlambda{}x.if  A  x  then  f  x  else  g  x  fi  )  =  [\mlambda{}x.(\muparrow{}(A  x))?  f  :  g])
Date html generated:
2012_01_23-PM-12_14_39
Last ObjectModification:
2011_12_13-PM-12_48_05
Home
Index