Changes
Page history
many fragments
authored
Feb 06, 2020
by
Markus Klinik
Show whitespace changes
Inline
Side-by-side
Home.md
View page @
4867f715
...
...
@@ -229,3 +229,88 @@ x = TERM.readInt();
[

](https://gitlab.science.ru.nl/mklinik/eca-symbolic-execution/blob/master/code/website/nested-loops-main-no-merge-highres.svg)
[

](https://gitlab.science.ru.nl/mklinik/eca-symbolic-execution/blob/master/code/website/nested-loops-main-highres.svg)
## A function with many evaluation paths
```
c
int
max
=
3
;
int
main
()
{
y
=
1
;
z
=
TERM
.
readInt
();
x
=
z
;
while
(
0
<=
x
&&
x
<=
max
)
{
if
(
y
<=
0
)
{
LED1
.
switchOn
();
LED2
.
switchOff
();
}
else
{
LED2
.
switchOn
();
LED1
.
switchOff
();
}
y
=
y
*
-
1
;
x
=
x
+
1
;
}
z
=
TERM
.
readInt
();
x
=
z
;
while
(
0
<=
x
&&
x
<=
max
)
{
if
(
y
<=
0
)
{
LED1
.
switchOn
();
LED2
.
switchOff
();
}
else
{
LED2
.
switchOn
();
LED1
.
switchOff
();
}
y
=
y
*
-
1
;
x
=
x
+
1
;
}
z
=
TERM
.
readInt
();
x
=
z
;
while
(
0
<=
x
&&
x
<=
max
)
{
if
(
y
<=
0
)
{
LED1
.
switchOn
();
LED2
.
switchOff
();
}
else
{
LED2
.
switchOn
();
LED1
.
switchOff
();
}
y
=
y
*
-
1
;
x
=
x
+
1
;
}
return
0
;
}
```
[

](https://gitlab.science.ru.nl/mklinik/eca-symbolic-execution/blob/master/code/website/many-fragments-main-no-merge-highres.svg)
[

](https://gitlab.science.ru.nl/mklinik/eca-symbolic-execution/blob/master/code/website/many-fragments-main-highres.svg)