* src/misc/bddalloc.hh: Make all methods public.
* wrap/python/spot.i: Include misc/bddalloc.hh and misc/minato.hh. * wrap/python/tests/minato.py: New file. * wrap/python/tests/Makefile.am (TESTS): Add minato.py.
This commit is contained in:
parent
e0b15c6f67
commit
c46204dfad
5 changed files with 63 additions and 5 deletions
|
|
@ -1,5 +1,10 @@
|
|||
2004-02-02 Alexandre Duret-Lutz <adl@gnu.org>
|
||||
|
||||
* src/misc/bddalloc.hh: Make all methods public.
|
||||
* wrap/python/spot.i: Include misc/bddalloc.hh and misc/minato.hh.
|
||||
* wrap/python/tests/minato.py: New file.
|
||||
* wrap/python/tests/Makefile.am (TESTS): Add minato.py.
|
||||
|
||||
* src/tgbatest/explicit.cc, src/tgbatest/explprod.cc,
|
||||
src/tgbatest/ltl2tgba.cc, src/tgbatest/ltlprod.cc,
|
||||
src/tgbatest/mixprod.cc, src/tgbatest/powerset.cc,
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
// et Marie Curie.
|
||||
//
|
||||
|
|
@ -31,7 +31,7 @@ namespace spot
|
|||
/// Manage ranges of variables.
|
||||
class bdd_allocator
|
||||
{
|
||||
protected:
|
||||
public:
|
||||
/// Default constructor.
|
||||
bdd_allocator();
|
||||
/// Initialize the BDD library.
|
||||
|
|
@ -40,7 +40,7 @@ namespace spot
|
|||
int allocate_variables(int n);
|
||||
/// Release \a n BDD variables starting at \a base.
|
||||
void release_variables(int base, int n);
|
||||
|
||||
protected:
|
||||
static bool initialized; ///< Whether the BDD library has been initialized.
|
||||
static int varnum; ///< number of variables in use in the BDD library.
|
||||
int lvarnum; ///< number of variables in use in this allocator.
|
||||
|
|
|
|||
|
|
@ -32,6 +32,8 @@
|
|||
#include <sstream>
|
||||
|
||||
#include "misc/version.hh"
|
||||
#include "misc/bddalloc.hh"
|
||||
#include "misc/minato.hh"
|
||||
|
||||
#include "ltlast/formula.hh"
|
||||
#include "ltlast/refformula.hh"
|
||||
|
|
@ -83,6 +85,8 @@ using namespace spot;
|
|||
%}
|
||||
|
||||
%include "misc/version.hh"
|
||||
%include "misc/bddalloc.hh"
|
||||
%include "misc/minato.hh"
|
||||
|
||||
%include "ltlast/formula.hh"
|
||||
%include "ltlast/refformula.hh"
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
## Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
## Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
## département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
## et Marie Curie.
|
||||
##
|
||||
|
|
@ -32,4 +32,5 @@ TESTS = \
|
|||
ltlparse.py \
|
||||
bddnqueen.py \
|
||||
ltl2tgba.test \
|
||||
interdep.py
|
||||
interdep.py \
|
||||
minato.py
|
||||
|
|
|
|||
48
wrap/python/tests/minato.py
Executable file
48
wrap/python/tests/minato.py
Executable file
|
|
@ -0,0 +1,48 @@
|
|||
# -*- mode: python; coding: iso-8859-1 -*-
|
||||
# Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
# département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
# et Marie Curie.
|
||||
#
|
||||
# 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 2 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 Spot; see the file COPYING. If not, write to the Free
|
||||
# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
# 02111-1307, USA.
|
||||
|
||||
import ltihooks
|
||||
import spot
|
||||
import buddy
|
||||
import sys
|
||||
|
||||
alloc = spot.bdd_allocator()
|
||||
|
||||
alloc.allocate_variables(3)
|
||||
|
||||
a = buddy.bdd_ithvar(0)
|
||||
b = buddy.bdd_ithvar(1)
|
||||
c = buddy.bdd_ithvar(2)
|
||||
|
||||
w = -a & -b | -c & b | a & -b
|
||||
|
||||
isop = spot.minato_isop(w)
|
||||
|
||||
i = isop.next()
|
||||
l = []
|
||||
while i != buddy.bddfalse:
|
||||
buddy.bdd_printset(i)
|
||||
print
|
||||
l.append(i)
|
||||
i = isop.next()
|
||||
|
||||
sys.exit(l == [-a, -c])
|
||||
Loading…
Add table
Add a link
Reference in a new issue