[klee-dev] how to use concrete value to replace symbolic value when solving failed

Qixue Xiao s2exqx at gmail.com
Thu May 21 15:46:34 BST 2015


Hi,

The failed situations, what I want to say, are timeout of solving a
query or a query (such as square root ) cannot be solved by current
solver.
when the solver cannot get a solution, it would return failed. and
KLEE will terminate the state early.
And what I want to do is make the state go on by replacing a concrete
value (from a seed).

>If that is the case, one way to do it is to modify the Executor::executeMemoryOperation function in such a way that whenever you
>are about to read or write symbolic value, you replace it with a concrete one, so that in doesn’t further propagate into the program.
this method may not work, because when KLEE could not know which
symbolic value should be replace before solving.
or how to do it ?

thanks
xqx








2015-05-20 22:58 GMT+08:00 Kuchta, Tomasz <t.kuchta12 at imperial.ac.uk>:
> Hi,
>
> When you say failed, do you mean that the branch was not feasible?
> If that is the case, it means that there are no such values in the program input that would make the program execute certain path.
> Or do you want to just replace symbolic data with concrete values?
> If that is the case, one way to do it is to modify the Executor::executeMemoryOperation function in such a way that whenever you
> are about to read or write symbolic value, you replace it with a concrete one, so that in doesn’t further propagate into the program.
>
> Hope that helps,
> Tomek
>
>
>> On 19 May 2015, at 16:48, Qixue Xiao <s2exqx at gmail.com> wrote:
>>
>> hi,
>>
>> when constraints are solved failed during symbolic execution, I want
>> to use concrete value (like seeds) to replace the related symbolic
>> value. So that the execution could continue.
>>
>> How could I use this feature in KLEE ?
>>
>> thanks.
>>
>> xqx
>>
>> _______________________________________________
>> klee-dev mailing list
>> klee-dev at imperial.ac.uk
>> https://mailman.ic.ac.uk/mailman/listinfo/klee-dev
>



More information about the klee-dev mailing list