spot  2.11.6
Public Attributes | List of all members

Options to control various optimizations of to_parity(). More...

#include <spot/twaalgos/toparity.hh>

Collaboration diagram for spot::to_parity_options:

Public Attributes

bool search_ex = true
 
bool use_last = true
 
bool use_last_post_process = false
 
bool force_order = true
 
bool partial_degen = true
 
bool acc_clean = true
 
bool parity_equiv = true
 
bool car = true
 
bool tar = false
 
bool iar = true
 If iar is true, to_parity will try to apply IAR. More...
 
bool lar_dfs = true
 
bool bscc = true
 
bool parity_prefix = true
 
bool parity_prefix_general = false
 
bool generic_emptiness = false
 
bool rabin_to_buchi = true
 
bool buchi_type_to_buchi = false
 
bool parity_type_to_parity = false
 
bool reduce_col_deg = false
 
bool propagate_col = true
 
bool use_generalized_rabin = false
 
bool pretty_print = false
 
to_parity_datadatas = nullptr
 Structure used to store some information about the construction. More...
 

Detailed Description

Options to control various optimizations of to_parity().

Member Data Documentation

◆ acc_clean

bool spot::to_parity_options::acc_clean = true

If scc_acc_clean is true, to_parity() will ignore colors not occurring in an SCC while processing this SCC.

◆ bscc

bool spot::to_parity_options::bscc = true

If bscc is true, to_parity() will only keep the bottommost automaton when it applies LAR.

◆ buchi_type_to_buchi

bool spot::to_parity_options::buchi_type_to_buchi = false

If buchi_type_to_buchi is true, to_parity converts a (co-)Büchi type automaton to a (co-)Büchi automaton.

◆ car

bool spot::to_parity_options::car = true

If Car is true, to_parity will try to apply CAR. It is a version of LAR that tracks colors.

◆ datas

to_parity_data* spot::to_parity_options::datas = nullptr

Structure used to store some information about the construction.

◆ force_order

bool spot::to_parity_options::force_order = true

If force_order is true, we force to use an order when CAR or IAR is applied. Given a state s and a set E ({0}, {0 1}, {2} for example) we construct an order on colors. With the given example, we ask to have a permutation that start with [0 …], [0 1 …] or [2 …] in that order of preference.

◆ generic_emptiness

bool spot::to_parity_options::generic_emptiness = false

If generic_emptiness is true, to_parity() will check if the automaton does not accept any word with an emptiness check algorithm.

◆ iar

bool spot::to_parity_options::iar = true

If iar is true, to_parity will try to apply IAR.

◆ lar_dfs

bool spot::to_parity_options::lar_dfs = true

if lar_dfs is true, then when LAR is used the next state of the result that will be processed is the last created state.

◆ parity_equiv

bool spot::to_parity_options::parity_equiv = true

If parity_equiv is true, to_parity() will check if there exists a way to see the acceptance condition as a parity max one.

◆ parity_prefix

bool spot::to_parity_options::parity_prefix = true

If parity_prefix is true, to_parity() will use a special handling for acceptance conditions of the form Inf(m0) | (Fin(m1) & (Inf(m2) | (… β))) that start as a parity condition (modulo a renumbering of m0, m1, m2, ...) but where β can be an arbitrary formula. In this case, the paritization algorithm is really applied only to β, and the marks of the prefix are appended after a suitable renumbering.

◆ parity_prefix_general

bool spot::to_parity_options::parity_prefix_general = false

If parity_prefix_general is true, to_parity() will rewrite the acceptance condition as Inf(m0) | (Fin(m1) & (Inf(m2) | (… β))) before applying the same construction as with the option parity_prefix.

◆ parity_type_to_parity

bool spot::to_parity_options::parity_type_to_parity = false

If parity_type_to_parity is true, to_parity converts a parity type automaton to a parity automaton.

◆ partial_degen

bool spot::to_parity_options::partial_degen = true

If partial_degen is true, apply a partial degeneralization to remove occurrences of acceptance subformulas such as Fin(x) | Fin(y) or Inf(x) & Inf(y).

◆ pretty_print

bool spot::to_parity_options::pretty_print = false

If pretty_print is true, states of the output automaton are named to help debugging.

◆ propagate_col

bool spot::to_parity_options::propagate_col = true

Use propagate_marks_here to increase the number of marks on transition in order to move more colors (and increase the number of compatible states) when we apply LAR.

◆ rabin_to_buchi

bool spot::to_parity_options::rabin_to_buchi = true

If rabin_to_buchi is true, to_parity() tries to convert a Rabin or Streett condition to Büchi or co-Büchi with rabin_to_buchi_if_realizable().

◆ reduce_col_deg

bool spot::to_parity_options::reduce_col_deg = false

Only allow partial degeneralization if it reduces the number of colors in the acceptance condition or if it implies to apply IAR instead of CAR.

◆ search_ex

bool spot::to_parity_options::search_ex = true

If search_ex is true, whenever CAR or IAR have to move several elements in a record, it tries to find an order such that the new permutation already exists.

◆ tar

bool spot::to_parity_options::tar = false

If tar is true, to_parity will try to apply TAR. It is a version of LAR that tracks transitions instead of colors.

◆ use_generalized_rabin

bool spot::to_parity_options::use_generalized_rabin = false

If use_generalized_buchi is true, each SCC will use a generalized Rabin acceptance in order to avoid CAR.

◆ use_last

bool spot::to_parity_options::use_last = true

If use_last is true and search_ex are true, we use the most recent state when we find multiple existing state compatible with the current move.

◆ use_last_post_process

bool spot::to_parity_options::use_last_post_process = false

If use_last_post_process is true, then when LAR ends, it tries to replace the destination of an edge by the newest compatible state.


The documentation for this struct was generated from the following file:

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Fri Feb 27 2015 10:00:07 for spot by doxygen 1.9.1