Nuprl Lemma : SM3-class-nlp
[Info:{Info:Type| 
Info} ]
  
S:{S:Type| valueall-type(S)} 
    
[A,B,C:Type].
      
tr1:Id 
 A 
 S 
 S. 
X1:EClass(A). 
tr2:Id 
 B 
 S 
 S. 
X2:EClass(B). 
tr3:Id 
 C 
 S 
 S.
      
X3:EClass(C). 
init:Id 
 bag(S).
        (NormalLProgrammable(A;X1)
        
 NormalLProgrammable(B;X2)
        
 NormalLProgrammable(C;X3)
        
 NormalLProgrammable(S;SM3-class(init;<tr1, X1><tr2, X2><tr3, X3>)))
Proof not projected
Definitions occuring in Statement : 
SM3-class: SM3-class(init;trX1;trX2;trX3), 
normal-locally-programmable: NormalLProgrammable(A;X), 
eclass: EClass(A[eo; e]), 
Id: Id, 
uall:
[x:A]. B[x], 
all:
x:A. B[x], 
squash:
T, 
implies: P 
 Q, 
set: {x:A| B[x]} , 
function: x:A 
 B[x], 
pair: <a, b>, 
universe: Type, 
bag: bag(T), 
valueall-type: valueall-type(T)
Definitions : 
uall:
[x:A]. B[x], 
all:
x:A. B[x], 
implies: P 
 Q, 
SM3-class: SM3-class(init;trX1;trX2;trX3), 
ifthenelse: if b then t else f fi , 
eq_int: (i =
 j), 
nat_plus: 
, 
int_seg: {i..j
}, 
pi2: snd(t), 
member: t 
 T, 
lelt: i 
 j < k, 
btrue: tt, 
bfalse: ff, 
prop:
, 
and: P 
 Q, 
subtype: S 
 T, 
suptype: suptype(S; T), 
exists:
x:A. B[x], 
false: False, 
so_lambda: 
x y.t[x; y], 
bool:
, 
decidable: Dec(P), 
or: P 
 Q, 
not:
A, 
sq_type: SQType(T), 
uimplies: b supposing a, 
guard: {T}, 
unit: Unit, 
uiff: uiff(P;Q), 
le: A 
 B, 
so_apply: x[s1;s2], 
it:
Lemmas : 
SM-gen-class-locally-programmable, 
ifthenelse_wf, 
eq_int_wf, 
int_seg_wf, 
decidable__equal_int, 
subtype_base_sq, 
int_subtype_base, 
bfalse_wf, 
bool_wf, 
uiff_transitivity, 
assert_wf, 
eqtt_to_assert, 
assert_of_eq_int, 
bnot_wf, 
not_wf, 
eqff_to_assert, 
assert_of_bnot, 
not_functionality_wrt_uiff, 
le_wf, 
int_seg_properties, 
btrue_wf, 
Id_wf, 
normal-locally-programmable_wf, 
bag_wf, 
eclass_wf, 
es-E_wf, 
event-ordering+_inc, 
event-ordering+_wf, 
valueall-type_wf, 
squash_wf
\mforall{}[Info:\{Info:Type|  \mdownarrow{}Info\}  ]
    \mforall{}S:\{S:Type|  valueall-type(S)\} 
        \mforall{}[A,B,C:Type].
            \mforall{}tr1:Id  {}\mrightarrow{}  A  {}\mrightarrow{}  S  {}\mrightarrow{}  S.  \mforall{}X1:EClass(A).  \mforall{}tr2:Id  {}\mrightarrow{}  B  {}\mrightarrow{}  S  {}\mrightarrow{}  S.  \mforall{}X2:EClass(B).  \mforall{}tr3:Id
                                                                                                                                                                                  {}\mrightarrow{}  C
                                                                                                                                                                                  {}\mrightarrow{}  S
                                                                                                                                                                                  {}\mrightarrow{}  S.
            \mforall{}X3:EClass(C).  \mforall{}init:Id  {}\mrightarrow{}  bag(S).
                (NormalLProgrammable(A;X1)
                {}\mRightarrow{}  NormalLProgrammable(B;X2)
                {}\mRightarrow{}  NormalLProgrammable(C;X3)
                {}\mRightarrow{}  NormalLProgrammable(S;SM3-class(init;<tr1,  X1><tr2,  X2><tr3,  X3>)))
Date html generated:
2011_10_20-PM-04_06_10
Last ObjectModification:
2011_08_22-PM-03_16_17
Home
Index