Class AbstractUnfoldingModelChecker<I,​A,​P,​L extends Lasso<I,​?>>

  • Type Parameters:
    I - the input type
    A - the automaton type
    P - the property type
    L - the Lasso type
    All Implemented Interfaces:
    ModelChecker<I,​A,​P,​L>, ModelCheckerLasso<I,​A,​P,​L>

    public abstract class AbstractUnfoldingModelChecker<I,​A,​P,​L extends Lasso<I,​?>>
    extends Object
    implements ModelCheckerLasso<I,​A,​P,​L>
    An ModelCheckerLasso that can unfold loops of lassos.

    Unfolding a lasso is done according to two conditions: 1. the lasso has to be unfolded a minimum number of times (getMinimumUnfolds(). 2. the lasso has to be unfolded relative to the number of states in a hypothesis, multiplied by some double (getMultiplier().

    Note that one can unfold a lasso a fixed number of times if the multiplier is set to 0.0. Also note that a lasso needs to be unfolded at least once, and the multiplier can not be negative.