[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [tlaplus] Model based testing
There are several ways to serialize traces into other machine-readable formats such as json. The simplest approach is to run TLC in a loop with the `-dumptrace` parameter enabled. For example:
for i in {1..5}; do tlc -note DieHard.tla -simulate num=3 -depth 42 -dumptrace json DieHard_$i.json; done
Markus
> On Jul 22, 2025, at 4:32 AM, Anatoliy Bilenko <anatoliy.bilenko@xxxxxxxxx> wrote:
>
> I've written a TLA+ model for my algorithm and am now experimenting with state exploration using TLC's -simulate mode. The goal is to observe various execution paths for an implementation of the algorithm written in another language.
>
> As an initial test, I used the DieHard.tla model available on Lemmy's GitHub and ran the following command:
>
> tlc -config DieHard.cfg -simulate 'file=dump.txt,num=3' -depth 42 DieHard.tla
>
> (Note: I'll explore the -depth, -aril, and -seed options more thoroughly later.)
>
> This produced a set of dump files in the working directory:
>
> $ ls dump.txt*
> dump.txt_0_0 dump.txt_0_1 dump.txt_0_2 dump.txt_0_3 dump.txt_0_4
> dump.txt_0_5 dump.txt_0_6 dump.txt_0_7 dump.txt_0_8 dump.txt_0_9
>
> Each file contains output in the following format:
>
> STATE_2 ==
> /\ big = 0
> /\ small = 3
>
> STATE_3 ==
> /\ big = 0
> /\ small = 3
>
> STATE_4 ==
> /\ big = 0
> /\ small = 3
>
> STATE_5 ==
> /\ big = 5
> /\ small = 3
> ...
>
> Question:
> Is there a library or built-in TLA+ functionality that can convert this TLC dump format into a machine-readable format like JSON?
>
> Thanks in advance,
> Anatoliy.
--
You received this message because you are subscribed to the Google Groups "tlaplus" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tlaplus+unsubscribe@xxxxxxxxxxxxxxxx.
To view this discussion visit https://groups.google.com/d/msgid/tlaplus/16BA9AB1-AE1C-48B8-AF74-9EAEBA9DC2E7%40lemmster.de.