Class TryVarOrder


  • public class TryVarOrder
    extends Object
    Try var order.
    • Constructor Detail

      • TryVarOrder

        public TryVarOrder​(int nodeTableSize,
                           int cacheSize,
                           int maxIncrease,
                           long bestTime,
                           long delayTime)
    • Method Detail

      • init

        public void init​(BDD b1,
                         BDD b2,
                         BDD dom,
                         BDDFactory.BDDOp op)
                  throws IOException
        Initialize for a new trial. Takes the given input BDDs and saves them out to temporary files.
        Parameters:
        b1 - first input to applyEx
        b2 - second input to applyEx
        dom - third input to applyEx
        op - operation to be passed to applyEx
        Throws:
        IOException - In case of an I/O error.
      • cleanup

        public void cleanup()
        Clean up the temporary files.
      • writeBDDConfig

        public void writeBDDConfig​(BDDFactory bdd,
                                   String fileName)
                            throws IOException
        Write the BDD configuration to a file.
        Parameters:
        bdd - BDD factory
        fileName - filename
        Throws:
        IOException - In case of an I/O error.
      • tryOrder

        public long tryOrder​(String factory,
                             boolean reverse,
                             String varOrder)
        Try out a variable order.
        Parameters:
        factory - BDD factory name
        reverse - whether to reverse the bits
        varOrder - variable order to try
        Returns:
        time spent, or Long.MAX_VALUE if it didn't terminate
      • getBestOrder

        public String getBestOrder()
      • getBestTime

        public long getBestTime()