Next: Delete on condition, Previous: New copy and add, Up: Changing structure
C code | Spl encoding
|
---|---|
#include "intlist.h" /* acyclic(x) and l[x]==_l and data(x) */ void copyAllGeV(intlist x, int v) { intlist z; intlist y = null; intlist xi = x; while (xi != NULL) { if (xi->data >= v) { z = new(); z->data = xi->data; z->next = y; y = z; } xi = xi->next; } } |
var _data:real, _free:real, _len:real, _new:real, _next:real, _null:real, x:real, xi:real, y:real, yi:real, z:real, _l:int, _k:int, S:int, v: int; begin assume (x == 0); xi = _null; y = _null; yi = _null; z = _null; xi = x; while xi != _null do if (xi* _data >= v) then yi = _new; yi = (xi * _data) / _data; yi = y / _next; y = _null; y = yi; yi = _null; endif; z = xi * _next; xi = _null; xi = z; z = _null; done; end |
Domain | Param. | Log file | Interesting constraint
|
---|---|---|---|
LSUM-PRD | Anon=(0,1) | log/intlist-copyAllGeV-lsum-prd-01 | x(n1) and xi(n2) and l[n2]=1 and l>=l[n1]+1 and
S(n2)=0 and d(n1)+1<=v and d(n2)+1<=v
|
LSUM-PRD | Anon=(0,1), v=5 | log/intlist-copyAllGe5-lsum-prd-01 | x(n1) and xi(n2) and l[n2]=1 and l>=l[n1]+1 and
S(n2)=0 and d(n1)+1<=5 and d(n2)+1<=5 and
S >= d(n1)+d(n2)+S(n1)
|
LSUM-REL | Anon=(0,1) | log/intlist-copyAllGeV-lsum-rel-01 | x(n1) and xi(n2) and l[n2]=1 and l>=l[n1]+1 and
S(n2)=0 and d(n1)+1<=v and d(n2)+1<=v
|
LSUM-REL | Anon=(0,1), v=5 | log/intlist-copyAllGe5-lsum-rel-01 | x(n1) and xi(n2) and l[n2]=1 and l>=l[n1]+1 and
S(n2)=0 and d(n1)+1<=5 and d(n2)+1<=5 and
4l[n1] >= S(n1)+4
|
MSET | none
| ||
UCONS | Anon=(0,1) | TODO | x(n1) and xi(n2) and l[n2]=1 and l>=l[n1]+1 and
d(n1)+1<=v and d(n2)+1<=v and
\forall y1\in n1 \implies d(y1)+1<=v
|