Class BDDTTRF<T>

java.lang.Object
org.jreliability.bdd.BDDTTRF<T>
Type Parameters:
T - the type of the variables
All Implemented Interfaces:
TTRF<T>

public class BDDTTRF<T> extends Object implements TTRF<T>
The BDDTTRF transforms a Boolean function represented as a Term into a ReliabilityFunction or, if needed, into a BDD.
  • Field Details

  • Constructor Details

  • Method Details

    • convert

      public ReliabilityFunction convert(Term term, org.apache.commons.collections15.Transformer<T,ReliabilityFunction> functionTransformer)
      Description copied from interface: TTRF
      Converts a Term to a ReliabilityFunction.
      Specified by:
      convert in interface TTRF<T>
      Parameters:
      term - the term to transform
      functionTransformer - the used function functionTransformer
      Returns:
      the reliabilityFunction deduced from the term
    • convert

      public ReliabilityFunction convert(Term term, org.apache.commons.collections15.Transformer<T,ReliabilityFunction> functionTransformer, org.apache.commons.collections15.Predicate<T> existsPredicate)
      Description copied from interface: TTRF
      Converts a Term to a ReliabilityFunction and excludes the exists variables.
      Specified by:
      convert in interface TTRF<T>
      Parameters:
      term - the term to transform
      functionTransformer - the used function functionTransformer
      existsPredicate - the exists-variable existsPredicate
      Returns:
      the reliabilityFunction deduced from the term
    • convert

      public ReliabilityFunction convert(BDD<T> bdd, org.apache.commons.collections15.Transformer<T,ReliabilityFunction> functionTransformer)
      Converts a given BDD and a Transformer to a ReliabilityFunction.
      Parameters:
      bdd - the bdd
      functionTransformer - the function functionTransformer
      Returns:
      a reliability function from the given bdd and function functionTransformer
    • convertToBDD

      public BDD<T> convertToBDD(Term term)
      Returns a BDD representing the given Term.
      Parameters:
      term - the term
      Returns:
      a bdd representing the given term
    • convertToBDD

      public BDD<T> convertToBDD(Term term, org.apache.commons.collections15.Predicate<T> existsPredicate)
      Returns a BDD representing the given Term while respecting the exists-variables.
      Parameters:
      term - the term
      existsPredicate - the exists predicate
      Returns:
      a bdd representing the given term
    • transform

      protected BDD<T> transform(Term term)
      Transforms a Term to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the term
    • transformAND

      protected BDD<T> transformAND(ANDTerm term)
      Transforms an ANDTerm to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the AND term
    • transformOR

      protected BDD<T> transformOR(ORTerm term)
      Transforms an ORTerm to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the OR term
    • transformLinear

      protected BDD<T> transformLinear(LinearTerm term)
      Transforms a LinearTerm to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the linear term
    • transformLiteral

      protected BDD<T> transformLiteral(LiteralTerm<T> term)
      Transforms a LiteralTerm to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the literal term
    • transformTRUE

      protected BDD<T> transformTRUE(TRUETerm term)
      Transforms a TRUETerm to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the TRUE term
    • transformFALSE

      protected BDD<T> transformFALSE(FALSETerm term)
      Transforms a FALSETerm to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the FALSE term
    • transformNOT

      protected BDD<T> transformNOT(NOTTerm term)
      Transforms a NOTTerm to a BDD.
      Parameters:
      term - the term to transform
      Returns:
      a bdd representing the NOT term