91 lines
1.9 KiB
Bash
Executable file
91 lines
1.9 KiB
Bash
Executable file
#!/bin/sh
|
|
# -*- coding: utf-8 -*-
|
|
# Copyright (C) 2014, 2015, 2017 Laboratoire de Recherche et
|
|
# Développement de l'Epita (LRDE).
|
|
#
|
|
# This file is part of Spot, a model checking library.
|
|
#
|
|
# Spot is free software; you can redistribute it and/or modify it
|
|
# under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# Spot is distributed in the hope that it will be useful, but WITHOUT
|
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
|
|
# License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
. ./defs
|
|
|
|
set -e
|
|
|
|
cat >expect <<EOF
|
|
Inf(0)&Inf(1)&Inf(2)&Inf(3)
|
|
0 0
|
|
3 2
|
|
#2: {0,2}
|
|
#2: {0,3}
|
|
#2: {1,2}
|
|
#3: {0,2,3}
|
|
#1: {0}
|
|
#4: {0,1,2,3} accepting
|
|
#2: {0,2}
|
|
#2: {0,3}
|
|
#2: {1,2}
|
|
#3: {0,2,3}
|
|
#1: {0}
|
|
#4: {0,1,2,3}
|
|
#0: empty
|
|
#5: {0,1,2,3,4} accepting
|
|
#2: {1,2}
|
|
5 + 5 = 10
|
|
8 1
|
|
#4: {0,3,6,7}
|
|
#7: {0,1,2,3,4,6,7}
|
|
#10: {0,1,2,3,4,5,6,7,8,9} accepting
|
|
0,1,2,3,4,5,6,7,8,9
|
|
#0: empty accepting
|
|
#0: empty accepting
|
|
#1: {3}
|
|
#4: {0,1,2,3}
|
|
#2: {0,2}
|
|
stripping
|
|
#2: {0,2}
|
|
#0: empty
|
|
#2: {0,3}
|
|
#1: {1}
|
|
#2: {1,2}
|
|
#1: {0}
|
|
#1: {4}
|
|
#1: {2}
|
|
2 Inf(0)&Inf(1)&Inf(3) 1
|
|
5 Fin(2) | (Inf(0)&Inf(1)&Inf(3)) 1
|
|
5 (Fin(0)|Fin(2)) | (Inf(0)&Inf(1)&Inf(3)) 1
|
|
5 (Fin(0)|Fin(2)) | (Inf(0)&Inf(1)&Inf(3)) 1
|
|
5 (Fin(0)|Fin(2)) | (Inf(0)&Inf(1)&Inf(3)) 1
|
|
8 (Fin(0)|Fin(1)) & ((Fin(0)|Fin(2)) | (Inf(0)&Inf(1)&Inf(3))) 0
|
|
2 f 1
|
|
5 (Fin(0)|Fin(1)|Fin(2)) | (Inf(0)&Inf(1)&Inf(3)) 1
|
|
5 (Fin(2)|Fin(3)) & (Inf(0)&Inf(1)) 0
|
|
(Fin(2)|Fin(3)) & (Inf(0)&Inf(1)) {0} true
|
|
{1}
|
|
{!2, !3}
|
|
(Fin(2)|Fin(3)) & (Inf(0)&Inf(1)) {0} false
|
|
{!1, 2}
|
|
{!1, 3}
|
|
t
|
|
f
|
|
Fin(2)
|
|
Inf(2)
|
|
Fin(2) | Inf(2)
|
|
Inf(2) & Fin(2)
|
|
(Fin(0)|Fin(3)) | (Inf(1) & Fin(2))
|
|
(Fin(0)|Fin(3)) | (Inf(1) & Fin(2))
|
|
EOF
|
|
|
|
run 0 ../acc > stdout
|
|
diff stdout expect
|