// Author: Christian Schilling (schillic@informatik.uni-freiburg.de) // Date: 2017-04-01 // // Reduced version of MinimizeDfaTable_Bug02.ats // Result of ReduceBuchiFairDirectSimulation is wrong. NestedWordAutomaton preprocessed = removeUnreachable(nwa); int minimizeSevpaSize = numberOfStates(minimizeSevpa(preprocessed)); int shrinkNwaSize = numberOfStates(shrinkNwa(preprocessed)); int minimizeNwaPmaxSatDirectBiSize = numberOfStates(minimizeNwaPmaxSatDirectBi(preprocessed)); int minimizeNwaPmaxSatDirectSize = numberOfStates(minimizeNwaPmaxSatDirect(preprocessed)); int minimizeDfaSimulationSize = numberOfStates(minimizeDfaSimulation(preprocessed)); int reduceNwaDirectSimulationSize = numberOfStates(reduceNwaDirectSimulation(preprocessed)); int reduceNwaDirectSimulationBSize = numberOfStates(reduceNwaDirectSimulationB(preprocessed)); int reduceNwaDirectFullMultipebbleSimulationSize = numberOfStates(reduceNwaDirectFullMultipebbleSimulation(preprocessed)); int buchiReduceSize = numberOfStates(buchiReduce(preprocessed)); int reduceNwaDelayedSimulationSize = numberOfStates(reduceNwaDelayedSimulation(preprocessed)); int reduceNwaDelayedSimulationBSize = numberOfStates(reduceNwaDelayedSimulationB(preprocessed)); // int reduceNwaDelayedFullMultipebbleSimulationSize = numberOfStates(reduceNwaDelayedFullMultipebbleSimulation(preprocessed)); // int reduceBuchiFairDirectSimulationSize = numberOfStates(reduceBuchiFairDirectSimulation(preprocessed)); TODO result wrong // int reduceBuchiFairSimulationSize = numberOfStates(reduceBuchiFairSimulation(preprocessed)); TODO result wrong assert(minimizeSevpaSize == 2); assert(shrinkNwaSize == 2); assert(minimizeNwaPmaxSatDirectBiSize == 2); assert(minimizeNwaPmaxSatDirectSize == 2); assert(minimizeDfaSimulationSize == 2); assert(reduceNwaDirectSimulationSize == 2); assert(reduceNwaDirectSimulationBSize == 2); assert(reduceNwaDirectFullMultipebbleSimulationSize == 2); assert(buchiReduceSize == 2); assert(reduceNwaDelayedSimulationSize == 2); assert(reduceNwaDelayedSimulationBSize == 2); // assert(reduceNwaDelayedFullMultipebbleSimulationSize == 2); // assert(reduceBuchiFairDirectSimulationSize == 2); // assert(reduceBuchiFairSimulationSize == 2); NestedWordAutomaton nwa = ( alphabet = {"a" "b"}, states = {"q0" "q1" "qF"}, initialStates = {"q0"}, finalStates = {"qF"}, transitions = { ("q0" "a" "q1") ("q0" "b" "qF") ("q1" "a" "q1") ("q1" "b" "qF") ("qF" "a" "q1") ("qF" "b" "qF") } );