1. LTL translation benchmark

This page shows the result of some benchmarks run with LBTT.

1.1. Keys

LaCIM and FM correspond to the two algorithms of J.-M. Couvreur that are implemented in Spot.

degen means the automata has been degeneralized. gen means it is still generalized.

LTLopt means the LTL formula has been simplified beforehand using Oddoux's ltl2ba implementation. (This is historic, because we did not have rewriting rules in Spot itself when we started doing such benchmark.)

+pre means the formula has been simplified with all the LTL rewriting rules implemented in Spot.

+post means the automaton has been simplified with direct simulation.

symb_merge and exprop are two options corresponding respectively to the merge states ... and optimize determinism check-boxes of the on-line translator

+flapprox stands for fair loop approximations

+post_branch is branching postponement

1.2. Versions

Spot 0.0u of 2004-06-26.

Spin is version 4.0.6

LBT is version 1.2.1

ltl2ba is version 1.0

Wring is version 1.1.0.

Modella is version 1.5.1

LTL2NBA has no version.

1.3. A note on times

Most of these translators are run through a set of programs or scripts to perform a conversion to and from LBTT. The only algorithms that need no wrapper are LBT, ltl2ba degen (but not the gen version), and Modella.

The run-time of these wrappers is included in the times displayed below. These wrappers can actually be slower than the LTL translation itself, however they have a complexity linear in the size of the LTL formula and automaton.

Therefore it is hard to compare the speed of two different algorithms: if they differ only by a few second it might be because one of the wrapper is slower.

Also no effort have been made to compile these tools with optimizations. The FM and LaCIM tests, for instance, were run with a development version of Spot compiled with assertion checking turned on and all compiler optimizations explicitly disabled. Tools like Wring and LTL2NBA are script, in Perl and Python, so they will not compete with native code.

2. Results

Each table (except the last) sums the size of the automata produced for 100 random formulas, as well as the size of the product with a random state space.

The last table use 39 known formulae.

2.1. 100 random formulae of size 10

automata

translating

product

successful

Algorithm

states

trans.

acc.

time (sec)

states

trans.

translations

0

LaCIM, degen

1368

7424

98

5.44

273578

14325980

100

1

LaCIM, gen

962

5010

130

5.37

192400

10589209

100

1b

LaCIM, gen, +pre

812

3878

103

5.38

162400

8765697

100

2

LaCIM, degen, +pre, +post

1099

5265

97

26.06

219756

11262463

100

3

LaCIM, gen, +pre, +post

795

3727

103

10.28

159000

8479070

100

4

FM, degen, +symb_merge, +exprop, LTLopt

572

1239

97

6.66

114202

4232307

100

5

FM, degen, +symb_merge, +exprop, +pre

565

1223

97

5.22

112802

4185417

100

6

FM, degen, +symb_merge, +exprop, +pre, +post

497

990

97

5.44

99282

3516845

100

7

FM, degen, +symb_merge, +exprop, +pre, +post, +flapprox

497

990

97

6.02

99282

3516845

100

8

FM, degen, +symb_merge, +exprop, +pre, +post, +flapprox, +post_branch

527

1156

97

5.41

105323

3509804

100

9

FM, degen, +symb_merge, +exprop, +post_branch, LTLopt

566

1238

97

6.63

113002

4126367

100

10

FM, degen, +symb_merge, +exprop, +flapprox, LTLopt

541

1110

97

6.71

108077

3864929

100

11

FM, degen, +symb_merge, +exprop, +post_branch, +flapprox, LTLopt

568

1302

97

6.65

113448

3798906

100

12

FM, gen, -symb_merge, -exprop

553

1172

104

5.14

110598

4638420

100

13

FM, gen, -symb_merge, +exprop

553

1172

104

5.11

110484

3988863

100

14

FM, gen, +symb_merge, -exprop

524

1086

104

5.20

104798

4421932

100

15

FM, gen, +symb_merge, +exprop

524

1086

104

5.38

104709

3832079

100

16

FM, gen, -symb_merge, -exprop, LTLopt

511

1035

100

6.47

102198

4084879

100

17

FM, gen, -symb_merge, +exprop, LTLopt

511

1035

100

6.72

102089

3606468

100

18

FM, gen, +symb_merge, -exprop, LTLopt

494

975

100

6.63

98798

3935920

100

19

FM, gen, +symb_merge, +exprop, LTLopt

494

975

100

6.58

98707

3504671

100

20

FM, gen, +symb_merge, +exprop, +post_branch, LTLopt

492

986

100

6.61

98307

3444569

100

21

FM, gen, +symb_merge, +exprop, +flapprox, LTLopt

494

963

102

6.59

98707

3504084

100

22

FM, gen, +symb_merge, +exprop, +post_branch, +flapprox, LTLopt

539

1179

102

6.74

107681

3555402

100

23

FM, gen, +symb_merge, +exprop, +pre

487

959

100

5.27

97307

3457781

100

24

FM, gen, +symb_merge, +exprop, +pre, +post

479

919

103

5.65

95712

3373359

100

25

FM, gen, +symb_merge, +exprop, +pre, +post, +flapprox

479

919

103

5.33

95712

3373359

100

26

FM, gen, +symb_merge, +exprop, +pre, +post, +flapprox, +post_branch

524

1126

103

5.66

104692

3456246

100

27

Spin

723

2134

100

2.30

143191

7760542

100

28

LBT

1611

4498

133

1.15

321998

17171915

100

29

LTL2BA, degen

547

1172

100

1.21

109400

5147646

100

30

LTL2BA, gen (unfair)

507

1014

106

6.19

101400

4509576

100

31

Wring (Wring RewRule+BoolOpt+AutSempl)

761

1336

58

13.98

152125

6292227

96

32

Wring (Wring RewRule+BoolOpt+AutSempl), degen

761

1336

96

13.82

152125

6292227

96

33

Modella -o1 -g -e -r12

561

1181

100

0.77

112093

4078015

100

34

LTLNBA

499

991

97

8.96

99800

4392836

100

2.2. 100 random formulae of size 15..20

automata

translating

product

successful

Algorithm

states

trans.

acc.

time (sec)

states

trans.

translations

0

LaCIM, degen

6163

109497

97

13.56

1231860

66074303

100

1

LaCIM, gen

3287

53231

234

8.21

657400

40415644

100

1b

LaCIM, gen, +pre

2363

32343

193

7.11

472600

28859644

100

2

LaCIM, degen, +pre, +post

4163

55125

95

15982.94

832054

44600087

100

3

LaCIM, gen, +pre, +post

2330

31648

193

2018.34

466000

28218378

100

4

FM, degen, +symb_merge, +exprop, LTLopt

1286

5109

96

7.41

253084

9304307

100

5

FM, degen, +symb_merge, +exprop, +pre

1242

4907

95

5.87

244259

8852258

100

6

FM, degen, +symb_merge, +exprop, +pre, +post

1126

3944

95

33.20

222664

7985472

100

7

FM, degen, +symb_merge, +exprop, +pre, +post, +flapprox

1126

3944

95

34.05

222664

7985472

100

8

FM, degen, +symb_merge, +exprop, +pre, +post, +flapprox, +post_branch

1237

5376

95

44.84

241064

8367693

100

9

FM, degen, +symb_merge, +exprop, +post_branch, LTLopt

1171

4571

96

7.42

229646

8000221

100

10

FM, degen, +symb_merge, +exprop, +flapprox, LTLopt

1370

5095

96

7.56

270466

9680573

100

11

FM, degen, +symb_merge, +exprop, +post_branch, +flapprox, LTLopt

1446

6557

96

8.56

280294

9626074

100

12

FM, gen, -symb_merge, -exprop

1161

4455

200

5.78

231971

11344438

100

13

FM, gen, -symb_merge, +exprop

1161

4455

200

6.51

229575

8509410

100

14

FM, gen, +symb_merge, -exprop

1023

3609

200

5.26

204447

9609560

100

15

FM, gen, +symb_merge, +exprop

1023

3609

200

6.02

203077

7552753

100

16

FM, gen, -symb_merge, -exprop, LTLopt

1056

4000

191

7.15

211001

10170928

100

17

FM, gen, -symb_merge, +exprop, LTLopt

1056

4000

191

7.74

208817

7563089

100

18

FM, gen, +symb_merge, -exprop, LTLopt

961

3331

191

7.06

192050

8790687

100

19

FM, gen, +symb_merge, +exprop, LTLopt

961

3331

191

7.30

190684

6831836

100

20

FM, gen, +symb_merge, +exprop, +post_branch, LTLopt

899

3122

191

7.24

177998

6080813

100

21

FM, gen, +symb_merge, +exprop, +flapprox, LTLopt

961

3234

195

7.29

190684

6831488

100

22

FM, gen, +symb_merge, +exprop, +post_branch, +flapprox, LTLopt

1123

4833

193

8.41

218643

7527049

100

23

FM, gen, +symb_merge, +exprop, +pre

924

3155

191

5.77

183256

6444188

100

24

FM, gen, +symb_merge, +exprop, +pre, +post

898

2895

193

8.95

178232

6233221

100

25

FM, gen, +symb_merge, +exprop, +pre, +post, +flapprox

898

2895

193

9.16

178232

6233221

100

26

FM, gen, +symb_merge, +exprop, +pre, +post, +flapprox, +post_branch

1056

4310

193

17.69

206843

7063050

100

27

Spin

2044

13924

100

2856.37

398617

27056967

100

28

LBT

disabled

29

LTL2BA, degen

1175

4577

100

1.14

234870

12759396

100

30

LTL2BA, gen (unfair)

1004

3591

193

6.80

200729

10310947

100

31

Wring (Wring RewRule+BoolOpt+AutSempl)

disabled

32

Wring (Wring RewRule+BoolOpt+AutSempl), degen

disabled

33

Modella -o1 -g -e -r12

1472

6253

100

48.45

290869

10430392

100

34

LTL2NBA

1065

3881

95

47.50

212866

11464267

100

2.3. 39 known formulae

These are the formulae in http://www.science.unitn.it/~stonetta/modella/cfltl and http://www.science.unitn.it/~stonetta/modella/bfltl

automata

translating

product

successful

Algorithm

states

trans.

acc.

time (sec)

states

trans.

translations

0

LaCIM, degen

1378

13643

39

2.96

250389

11566062

39

1

LaCIM, gen

651

5603

81

2.15

129400

7147004

39

1b

LaCIM, gen, +pre

500

4409

76

2.20

99200

5475511

39

2

LaCIM, degen, +pre, +post

851

5671

38

7067.66

152998

7385199

39

3

LaCIM, gen, +pre, +post

416

3792

76

204.59

82196

4325770

39

4

FM, degen, +symb_merge, +exprop, LTLopt

222

904

37

2.65

43119

1813690

39

5

FM, degen, +symb_merge, +exprop, +pre

225

883

38

2.26

43719

1818870

39

6

FM, degen, +symb_merge, +exprop, +pre, +post

198

515

38

3.49

38785

1520334

39

7

FM, degen, +symb_merge, +exprop, +pre, +post, +flapprox

198

515

38

3.32

38785

1520334

39

8

FM, degen, +symb_merge, +exprop, +pre, +post, +flapprox, +post_branch

194

551

38

2.83

37459

1402330

39

9

FM, degen, +symb_merge, +exprop, +post_branch, LTLopt

223

909

37

2.65

43220

1791687

39

10

FM, degen, +symb_merge, +exprop, +flapprox, LTLopt

220

851

37

2.45

43126

1693270

39

11

FM, degen, +symb_merge, +exprop, +post_branch, +flapprox, LTLopt

216

921

37

2.78

41005

1604236

39

12

FM, gen, -symb_merge, -exprop

250

1735

74

2.38

46387

3360454

39

13

FM, gen, -symb_merge, +exprop

250

1735

74

2.38

46110

1951413

39

14

FM, gen, +symb_merge, -exprop

189

622

74

2.16

37200

2271545

39

15

FM, gen, +symb_merge, +exprop

189

622

74

2.01

37174

1580669

39

16

FM, gen, -symb_merge, -exprop, LTLopt

217

1599

64

2.79

39788

2816419

39

17

FM, gen, -symb_merge, +exprop, LTLopt

217

1599

64

2.84

39511

1590360

39

18

FM, gen, +symb_merge, -exprop, LTLopt

165

527

64

2.64

32400

1865274

39

19

FM, gen, +symb_merge, +exprop, LTLopt

165

527

64

2.59

32374

1310746

39

20

FM, gen, +symb_merge, +exprop, +post_branch, LTLopt

167

527

64

2.56

32737

1293659

39

21

FM, gen, +symb_merge, +exprop, +flapprox, LTLopt

165

512

64

2.55

32374

1310746

39

22

FM, gen, +symb_merge, +exprop, +post_branch, +flapprox, LTLopt

182

624

64

2.81

34564

1326087

39

23

FM, gen, +symb_merge, +exprop, +pre

170

549

70

2.08

33374

1369670

39

24

FM, gen, +symb_merge, +exprop, +pre, +post

162

489

70

2.65

31796

1284775

39

25

FM, gen, +symb_merge, +exprop, +pre, +post, +flapprox

162

489

70

2.78

31796

1284775

39

26

FM, gen, +symb_merge, +exprop, +pre, +post, +flapprox, +post_branch

168

543

70

2.43

32561

1232735

39

27

Spin

277

1196

39

450.10

54200

3548935

39

28

LBT

844

5584

83

0.57

161040

12530060

39

29

LTL2BA, degen

205

624

39

0.47

40200

2480261

39

30

LTL2BA, gen (unfair)

169

506

71

2.33

33200

1941344

39

31

Wring (Wring RewRule+BoolOpt+AutSempl)

276

1480

36

40.80

50986

3041195

38

32

Wring (Wring RewRule+BoolOpt+AutSempl), degen

407

5339

38

42.45

58762

4377735

38

33

Modella -o1 -g -e -r12

283

867

39

18.07

55689

2119971

39

34

LTL2NBA

235

1022

37

800.11

40800

2777045

39

LtlTranslationBenchmark (last edited 2004-06-28 12:00:33 by lucifer)

All text is available under the terms of the GNU Free Documentation License, see SpotWikiLicense for details.