{ 
[A,B:Type]. 
[ins:A List
]. 
[P:dataflow(A;bag(B))]. 
[init:bag(B)].
    (last(data-stream(seq-dataflow(P;buffer-dataflow(init;x.0 <z ...));ins)) 
    ~ let ins' = firstn(||ins|| - 1;ins) in
          if null(filter(
x.0 <z bag-size(x);data-stream(P;ins')))
          then init
          else last(filter(
x.0 <z bag-size(x);data-stream(P;ins')))
          fi ) }
{ Proof }
Definitions occuring in Statement : 
buffer-dataflow: buffer-dataflow(s;x.P[x]), 
seq-dataflow: seq-dataflow(P;Q), 
data-stream: data-stream(P;L), 
dataflow: dataflow(A;B), 
firstn: firstn(n;as), 
length: ||as||, 
null: null(as), 
lt_int: i <z j, 
ifthenelse: if b then t else f fi , 
let: let, 
uall:
[x:A]. B[x], 
lambda:
x.A[x], 
subtract: n - m, 
natural_number: $n, 
universe: Type, 
sqequal: s ~ t, 
filter: filter(P;l), 
listp: A List
, 
last: last(L)
Lemmas : 
bnot_wf, 
le_int_wf, 
assert_of_le_int, 
bnot_of_lt_int, 
assert_functionality_wrt_uiff, 
eqff_to_assert, 
assert_wf, 
assert_of_lt_int, 
eqtt_to_assert, 
uiff_transitivity, 
bool_wf, 
lt_int_wf, 
select-from-upto, 
from-upto_wf, 
length-from-upto, 
firstn-data-stream, 
int_subtype_base, 
set_subtype_base, 
dataflow_wf, 
listp_wf, 
delay-data-stream1, 
upto_decomp2, 
nat_plus_wf, 
subtype_rel_wf, 
listp_properties, 
length_wf_nat, 
nat_wf, 
le_wf, 
not_wf, 
false_wf, 
last-map, 
member_wf, 
length_wf1, 
top_wf, 
int_seg_wf, 
data-stream_wf, 
firstn_wf, 
filter_wf, 
last_wf, 
ifthenelse_wf, 
Error :bag_wf, 
subtype_base_sq, 
upto_wf
\mforall{}[A,B:Type].  \mforall{}[ins:A  List\msupplus{}].  \mforall{}[P:dataflow(A;bag(B))].  \mforall{}[init:bag(B)].
    (last(data-stream(seq-dataflow(P;buffer-dataflow(init;x.0  <z  bag-size(x)));ins)) 
    \msim{}  let  ins'  =  firstn(||ins||  -  1;ins)  in
                if  null(filter(\mlambda{}x.0  <z  bag-size(x);data-stream(P;ins')))
                then  init
                else  last(filter(\mlambda{}x.0  <z  bag-size(x);data-stream(P;ins')))
                fi  )
Date html generated:
2011_08_10-AM-08_18_19
Last ObjectModification:
2011_06_29-PM-03_55_25
Home
Index