#include "nusmv/shell/cmd/cmd.h"
#include "nusmv/shell/dd/ddCmd.h"
#include "nusmv/core/opt/opt.h"
#include "nusmv/core/utils/StreamMgr.h"
#include "nusmv/core/utils/error.h"
Functions | |
int | CommandDynamicVarOrdering (NuSMVEnv_ptr env, int argc, char **argv) |
The shell interface of the DD package. | |
int | CommandPrintBddStats (NuSMVEnv_ptr env, int argc, char **argv) |
int | CommandSetBddParameters (NuSMVEnv_ptr env, int argc, char **argv) |
void | dd_AddCmd (NuSMVEnv_ptr env) |
Module header for shell commands. |
int CommandDynamicVarOrdering | ( | NuSMVEnv_ptr | env, | |
int | argc, | |||
char ** | argv | |||
) |
The shell interface of the DD package.
Command arguments: [-d] [-e <method>] [-f <method>] [-h]
Controls the application and the modalities of (dynamic) variable ordering. Dynamic ordering is a technique to reorder the BDD variables to reduce the size of the existing BDDs. When no options are specified, the current status of dynamic ordering is displayed. At most one of the options -e
, -f
, and -d
should be specified.
Dynamic ordering may be time consuming, but can often reduce the size of the BDDs dramatically. A good point to invoke dynamic ordering explicitly (using the -f
option) is after the commands build_model
, once the transition relation has been built. It is possible to save the ordering found using write_order
in order to reuse it (using build_model -i order-file
) in the future.
Command options:
-d
-e <method>
<method>
must be one of the following: window{2,3,4}: Permutes the variables within windows of "n" adjacent variables, where "n" can be either 2, 3 or 4, so as to minimize the overall BDD size.
-f <method>
<method>
are the same as in option -e
. int CommandPrintBddStats | ( | NuSMVEnv_ptr | env, | |
int | argc, | |||
char ** | argv | |||
) |
Command arguments: [-h]
Prints the statistics for the BDD package. The amount of information depends on the BDD package configuration established at compilation time. The configurtion parameters are printed out too. More information about statistics and parameters can be found in the documentation of the CUDD Decision Diagram package.
int CommandSetBddParameters | ( | NuSMVEnv_ptr | env, | |
int | argc, | |||
char ** | argv | |||
) |
Command arguments: [-h] [-s]
Applies the variables table of the NuSMV environnement to the BDD package, so the user can set specific BDD parameters to the given value. This command works in conjunction with the print_bdd_stats
and set
commands.
print_bdd_stats
first prints a report of the parameters and statistics of the current bdd_manager. By using the command set
, the user may modify the value of any of the parameters of the underlying BDD package. The way to do it is by setting a value in the variable BDD.parameter name
where parameter name
is the name of the parameter exactly as printed by the print_bdd_stats
command.
Command options:
Prints the BDD parameter and statistics after the modification.
void dd_AddCmd | ( | NuSMVEnv_ptr | env | ) |