2005-04-10 16:30:47 +01:00
|
|
|
#ifndef SWITCHES
|
|
|
|
#define SWITCHES
|
|
|
|
|
2005-06-07 16:02:27 +01:00
|
|
|
#include "term.h"
|
|
|
|
#include "system.h"
|
|
|
|
|
|
|
|
void switchesInit ();
|
|
|
|
void switchesDone ();
|
|
|
|
|
|
|
|
//! Command-line switches structure
|
|
|
|
struct switchdata
|
|
|
|
{
|
|
|
|
// Command-line
|
|
|
|
int argc;
|
|
|
|
char **argv;
|
|
|
|
|
|
|
|
// Methods
|
|
|
|
int engine; //!< Engine type (POR_ENGINE,ARACHNE_ENGINE)
|
|
|
|
int match; //!< Matching type.
|
|
|
|
int clp; //!< Do we use clp?
|
|
|
|
|
|
|
|
// Pruning and Bounding
|
|
|
|
int prune; //!< Type of pruning.
|
|
|
|
int maxproofdepth; //!< Maximum proof depth
|
|
|
|
int maxtracelength; //!< Maximum trace length allowed
|
|
|
|
int runs; //!< The number of runs as in the switch
|
|
|
|
Term filterClaim; //!< Which claim should be checked?
|
|
|
|
|
|
|
|
// Modelchecker
|
|
|
|
int traverse; //!< Traversal method
|
|
|
|
int forceChoose; //!< Force chooses for each run, even if involved in first read
|
|
|
|
int chooseFirst; //!< Priority to chooses, implicit and explicit
|
|
|
|
int readSymmetries; //!< Enable read symmetry reduction
|
|
|
|
int agentSymmetries; //!< Enable agent symmetry reduction
|
|
|
|
int orderSymmetries; //!< Enable symmetry order reduction
|
|
|
|
int pruneNomoreClaims; //!< Enable no more claims cutter
|
|
|
|
int reduceEndgame; //!< Enable endgame cutter
|
|
|
|
int reduceClaims; //!< Symmetry reduction on claims (only works when switchAgentSymm is true)
|
|
|
|
// Parallellism
|
|
|
|
int scenario; //!< -1 to count, 0 for disable, 1-n to select the choose scenario
|
|
|
|
int scenarioSize; //!< Scenario size, also called fixed trace prefix length
|
|
|
|
|
|
|
|
// Arachne
|
|
|
|
int arachneSelector; //!< Goal selection method for Arachne engine
|
|
|
|
|
|
|
|
// Misc
|
|
|
|
int switchP; //!< A multi-purpose integer parameter, passed to the partial order reduction method selected.
|
|
|
|
|
|
|
|
// Output
|
|
|
|
int output; //!< From enum outputs: what should be produced. Default ATTACK.
|
|
|
|
int report;
|
|
|
|
int reportClaims; //!< Enable claims report
|
|
|
|
int xml; //!< xml output
|
|
|
|
int human; //!< human readable
|
|
|
|
int reportMemory; //!< Memory display switch.
|
|
|
|
int reportTime; //!< Time display switch.
|
|
|
|
int reportStates; //!< Progress display switch. (traversed states)
|
2005-06-21 12:04:34 +01:00
|
|
|
int extendNonReads; //!< Show further events in arachne xml output.
|
|
|
|
|
2005-06-07 16:02:27 +01:00
|
|
|
//! Latex output switch.
|
|
|
|
/**
|
|
|
|
* Obsolete. Use globalLatex instead.
|
|
|
|
*\sa globalLatex
|
|
|
|
*/
|
|
|
|
int latex;
|
|
|
|
};
|
|
|
|
|
|
|
|
extern struct switchdata switches;
|
2005-04-10 16:30:47 +01:00
|
|
|
|
|
|
|
#endif
|