Well, I have a new update here ( I still have the same problem above).
I erased the readLine part and added an int random generator as I show
below. When I run symbc for this method "TestPaths.testMe2(sym#sym)",
it doesn´t generate the conditions associated with the
nondeterministic random int as I expected.
So, if I got this right, symbc just tracks the symbolic arguments from
the method call, but it doesn´t bothers with the sources of non-
determinism inside the method, like input reads and random numbers. Is
this right?
It is possible to generate conditions for these cases to?
Thanks for your help!
public void testMe2 (int x, boolean b) {
System.out.println("!!!!!!!!!!!!!!! First step! ");
Random random = new Random();
int temp = random.nextInt();
if (temp > 50)
System.out.println("random > 50");
else
System.out.println("random <= 50");
if (b) {
if (x <= 1200){
System.out.println(" <= 1200");
}
if(x >= 1200){
System.out.println(" >= 1200");
}
}
}
result:
====================================================== Method
Summaries
Symbolic values: x_1_SYMINT,b_2_SYMINT
testMe2(1200,true)
testMe2(-1000000,true)
testMe2(1201,true)
testMe2(don't care,false)