./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/recursive/BallRajamani-SPIN2000-Fig1.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8bd4bc60 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx12G -Xms1G -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/recursive/BallRajamani-SPIN2000-Fig1.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash ccae6f392e1d87c0b193f39dee91a5c51306cb93 ................................................................................................................................................................................................................................................................................................................................................................ Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx12G -Xms1G -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/recursive/BallRajamani-SPIN2000-Fig1.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash ccae6f392e1d87c0b193f39dee91a5c51306cb93 ....................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator --- Real Ultimate output --- This is Ultimate 0.1.25-8bd4bc6 [2020-07-28 19:07:30,302 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-28 19:07:30,304 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-28 19:07:30,315 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-28 19:07:30,315 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-28 19:07:30,316 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-28 19:07:30,318 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-28 19:07:30,320 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-28 19:07:30,321 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-28 19:07:30,322 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-28 19:07:30,323 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-28 19:07:30,324 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-28 19:07:30,325 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-28 19:07:30,326 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-28 19:07:30,327 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-28 19:07:30,328 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-28 19:07:30,329 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-28 19:07:30,330 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-28 19:07:30,332 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-28 19:07:30,334 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-28 19:07:30,336 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-28 19:07:30,337 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-28 19:07:30,338 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-28 19:07:30,339 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-28 19:07:30,342 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-28 19:07:30,343 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-28 19:07:30,343 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-28 19:07:30,344 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-28 19:07:30,345 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-28 19:07:30,346 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-28 19:07:30,346 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-28 19:07:30,347 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-28 19:07:30,348 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-28 19:07:30,349 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-28 19:07:30,350 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-28 19:07:30,350 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-28 19:07:30,351 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-28 19:07:30,351 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-28 19:07:30,351 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-28 19:07:30,352 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-28 19:07:30,353 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-28 19:07:30,354 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2020-07-28 19:07:30,369 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-28 19:07:30,370 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-28 19:07:30,371 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-28 19:07:30,371 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-28 19:07:30,372 INFO L138 SettingsManager]: * Use SBE=true [2020-07-28 19:07:30,372 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-28 19:07:30,372 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-28 19:07:30,372 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-28 19:07:30,373 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-28 19:07:30,373 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-28 19:07:30,373 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-28 19:07:30,373 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-28 19:07:30,373 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-28 19:07:30,374 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-28 19:07:30,374 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-28 19:07:30,374 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-28 19:07:30,374 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-28 19:07:30,375 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-28 19:07:30,375 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-28 19:07:30,375 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-28 19:07:30,375 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-28 19:07:30,376 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-28 19:07:30,376 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-28 19:07:30,376 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-28 19:07:30,376 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2020-07-28 19:07:30,377 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-07-28 19:07:30,377 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2020-07-28 19:07:30,377 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-28 19:07:30,377 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-28 19:07:30,377 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> ccae6f392e1d87c0b193f39dee91a5c51306cb93 [2020-07-28 19:07:30,713 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-28 19:07:30,733 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-28 19:07:30,736 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-28 19:07:30,737 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-28 19:07:30,738 INFO L275 PluginConnector]: CDTParser initialized [2020-07-28 19:07:30,738 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/recursive/BallRajamani-SPIN2000-Fig1.c [2020-07-28 19:07:30,796 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/46f2d621a/235c6f9ccdcf4f67a486109fedc5883f/FLAGe789cae4d [2020-07-28 19:07:31,245 INFO L306 CDTParser]: Found 1 translation units. [2020-07-28 19:07:31,246 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/recursive/BallRajamani-SPIN2000-Fig1.c [2020-07-28 19:07:31,251 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/46f2d621a/235c6f9ccdcf4f67a486109fedc5883f/FLAGe789cae4d [2020-07-28 19:07:31,609 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/46f2d621a/235c6f9ccdcf4f67a486109fedc5883f [2020-07-28 19:07:31,613 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-28 19:07:31,617 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2020-07-28 19:07:31,618 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-28 19:07:31,618 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-28 19:07:31,622 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-28 19:07:31,624 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,627 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2caa659d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31, skipping insertion in model container [2020-07-28 19:07:31,627 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,635 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-28 19:07:31,652 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-28 19:07:31,853 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-28 19:07:31,859 INFO L203 MainTranslator]: Completed pre-run [2020-07-28 19:07:31,880 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-28 19:07:31,895 INFO L208 MainTranslator]: Completed translation [2020-07-28 19:07:31,896 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31 WrapperNode [2020-07-28 19:07:31,896 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-28 19:07:31,898 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2020-07-28 19:07:31,899 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2020-07-28 19:07:31,899 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2020-07-28 19:07:31,908 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,914 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,930 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2020-07-28 19:07:31,931 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-28 19:07:31,931 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-28 19:07:31,931 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-28 19:07:31,937 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,938 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,938 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,939 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:31,998 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:32,001 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:32,003 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... [2020-07-28 19:07:32,009 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-28 19:07:32,009 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-28 19:07:32,009 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-28 19:07:32,010 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-28 19:07:32,011 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-28 19:07:32,072 INFO L130 BoogieDeclarations]: Found specification of procedure A [2020-07-28 19:07:32,072 INFO L138 BoogieDeclarations]: Found implementation of procedure A [2020-07-28 19:07:32,073 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-28 19:07:32,073 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-28 19:07:32,293 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-28 19:07:32,294 INFO L295 CfgBuilder]: Removed 4 assume(true) statements. [2020-07-28 19:07:32,299 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.07 07:07:32 BoogieIcfgContainer [2020-07-28 19:07:32,299 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-28 19:07:32,302 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-28 19:07:32,302 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-28 19:07:32,306 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-28 19:07:32,307 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.07 07:07:31" (1/3) ... [2020-07-28 19:07:32,308 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ddc018e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.07 07:07:32, skipping insertion in model container [2020-07-28 19:07:32,308 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:31" (2/3) ... [2020-07-28 19:07:32,308 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ddc018e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.07 07:07:32, skipping insertion in model container [2020-07-28 19:07:32,309 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.07 07:07:32" (3/3) ... [2020-07-28 19:07:32,310 INFO L109 eAbstractionObserver]: Analyzing ICFG BallRajamani-SPIN2000-Fig1.c [2020-07-28 19:07:32,320 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-28 19:07:32,330 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-28 19:07:32,347 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-28 19:07:32,374 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-28 19:07:32,374 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-28 19:07:32,374 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-28 19:07:32,374 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-28 19:07:32,375 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-28 19:07:32,375 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-28 19:07:32,375 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-28 19:07:32,375 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-28 19:07:32,396 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states. [2020-07-28 19:07:32,403 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-28 19:07:32,403 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:07:32,404 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:07:32,404 INFO L427 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:07:32,410 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:07:32,411 INFO L82 PathProgramCache]: Analyzing trace with hash -103722487, now seen corresponding path program 1 times [2020-07-28 19:07:32,422 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:07:32,423 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [754680627] [2020-07-28 19:07:32,423 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:07:32,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:07:32,670 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2020-07-28 19:07:32,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:07:32,729 INFO L280 TraceCheckUtils]: 0: Hoare triple {32#(= ~g~0 |old(~g~0)|)} ~a1 := #in~a1;~a2 := #in~a2; {33#(= A_~a1 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,730 INFO L280 TraceCheckUtils]: 1: Hoare triple {33#(= A_~a1 |A_#in~a1|)} assume !(0 != ~a1);~g~0 := ~a2; {34#(= 0 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,731 INFO L280 TraceCheckUtils]: 2: Hoare triple {34#(= 0 |A_#in~a1|)} assume true; {34#(= 0 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,733 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {34#(= 0 |A_#in~a1|)} {21#true} #31#return; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,736 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2020-07-28 19:07:32,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:07:32,748 INFO L280 TraceCheckUtils]: 0: Hoare triple {32#(= ~g~0 |old(~g~0)|)} ~a1 := #in~a1;~a2 := #in~a2; {21#true} is VALID [2020-07-28 19:07:32,749 INFO L280 TraceCheckUtils]: 1: Hoare triple {21#true} assume !(0 != ~a1);~g~0 := ~a2; {21#true} is VALID [2020-07-28 19:07:32,749 INFO L280 TraceCheckUtils]: 2: Hoare triple {21#true} assume true; {21#true} is VALID [2020-07-28 19:07:32,751 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {21#true} {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} #33#return; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,751 INFO L280 TraceCheckUtils]: 0: Hoare triple {21#true} ~g~0 := 0; {21#true} is VALID [2020-07-28 19:07:32,751 INFO L280 TraceCheckUtils]: 1: Hoare triple {21#true} havoc main_#res;havoc main_#t~nondet1, main_#t~ret2, main_#t~ret3, main_~g~1, main_~h~0;assume -2147483648 <= main_#t~nondet1 && main_#t~nondet1 <= 2147483647;main_~g~1 := main_#t~nondet1;havoc main_#t~nondet1;main_~h~0 := (if 0 == main_~g~1 then 1 else 0); {21#true} is VALID [2020-07-28 19:07:32,753 INFO L263 TraceCheckUtils]: 2: Hoare triple {21#true} call main_#t~ret2 := A(main_~g~1, main_~h~0); {32#(= ~g~0 |old(~g~0)|)} is VALID [2020-07-28 19:07:32,754 INFO L280 TraceCheckUtils]: 3: Hoare triple {32#(= ~g~0 |old(~g~0)|)} ~a1 := #in~a1;~a2 := #in~a2; {33#(= A_~a1 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,755 INFO L280 TraceCheckUtils]: 4: Hoare triple {33#(= A_~a1 |A_#in~a1|)} assume !(0 != ~a1);~g~0 := ~a2; {34#(= 0 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,756 INFO L280 TraceCheckUtils]: 5: Hoare triple {34#(= 0 |A_#in~a1|)} assume true; {34#(= 0 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,758 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {34#(= 0 |A_#in~a1|)} {21#true} #31#return; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,759 INFO L280 TraceCheckUtils]: 7: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} assume -2147483648 <= main_#t~ret2 && main_#t~ret2 <= 2147483647;havoc main_#t~ret2; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,761 INFO L263 TraceCheckUtils]: 8: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} call main_#t~ret3 := A(main_~g~1, main_~h~0); {32#(= ~g~0 |old(~g~0)|)} is VALID [2020-07-28 19:07:32,761 INFO L280 TraceCheckUtils]: 9: Hoare triple {32#(= ~g~0 |old(~g~0)|)} ~a1 := #in~a1;~a2 := #in~a2; {21#true} is VALID [2020-07-28 19:07:32,761 INFO L280 TraceCheckUtils]: 10: Hoare triple {21#true} assume !(0 != ~a1);~g~0 := ~a2; {21#true} is VALID [2020-07-28 19:07:32,762 INFO L280 TraceCheckUtils]: 11: Hoare triple {21#true} assume true; {21#true} is VALID [2020-07-28 19:07:32,763 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {21#true} {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} #33#return; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,765 INFO L280 TraceCheckUtils]: 13: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} assume -2147483648 <= main_#t~ret3 && main_#t~ret3 <= 2147483647;havoc main_#t~ret3; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,766 INFO L280 TraceCheckUtils]: 14: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} assume 0 != main_~g~1; {22#false} is VALID [2020-07-28 19:07:32,766 INFO L280 TraceCheckUtils]: 15: Hoare triple {22#false} assume !false; {22#false} is VALID [2020-07-28 19:07:32,769 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-28 19:07:32,769 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [754680627] [2020-07-28 19:07:32,770 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1447458803] [2020-07-28 19:07:32,771 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-28 19:07:32,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:07:32,811 INFO L263 TraceCheckSpWp]: Trace formula consists of 54 conjuncts, 7 conjunts are in the unsatisfiable core [2020-07-28 19:07:32,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:07:32,826 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-28 19:07:32,965 INFO L280 TraceCheckUtils]: 0: Hoare triple {21#true} ~g~0 := 0; {21#true} is VALID [2020-07-28 19:07:32,965 INFO L280 TraceCheckUtils]: 1: Hoare triple {21#true} havoc main_#res;havoc main_#t~nondet1, main_#t~ret2, main_#t~ret3, main_~g~1, main_~h~0;assume -2147483648 <= main_#t~nondet1 && main_#t~nondet1 <= 2147483647;main_~g~1 := main_#t~nondet1;havoc main_#t~nondet1;main_~h~0 := (if 0 == main_~g~1 then 1 else 0); {21#true} is VALID [2020-07-28 19:07:32,966 INFO L263 TraceCheckUtils]: 2: Hoare triple {21#true} call main_#t~ret2 := A(main_~g~1, main_~h~0); {21#true} is VALID [2020-07-28 19:07:32,966 INFO L280 TraceCheckUtils]: 3: Hoare triple {21#true} ~a1 := #in~a1;~a2 := #in~a2; {33#(= A_~a1 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,967 INFO L280 TraceCheckUtils]: 4: Hoare triple {33#(= A_~a1 |A_#in~a1|)} assume !(0 != ~a1);~g~0 := ~a2; {34#(= 0 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,968 INFO L280 TraceCheckUtils]: 5: Hoare triple {34#(= 0 |A_#in~a1|)} assume true; {34#(= 0 |A_#in~a1|)} is VALID [2020-07-28 19:07:32,970 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {34#(= 0 |A_#in~a1|)} {21#true} #31#return; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,971 INFO L280 TraceCheckUtils]: 7: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} assume -2147483648 <= main_#t~ret2 && main_#t~ret2 <= 2147483647;havoc main_#t~ret2; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,972 INFO L263 TraceCheckUtils]: 8: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} call main_#t~ret3 := A(main_~g~1, main_~h~0); {21#true} is VALID [2020-07-28 19:07:32,972 INFO L280 TraceCheckUtils]: 9: Hoare triple {21#true} ~a1 := #in~a1;~a2 := #in~a2; {21#true} is VALID [2020-07-28 19:07:32,972 INFO L280 TraceCheckUtils]: 10: Hoare triple {21#true} assume !(0 != ~a1);~g~0 := ~a2; {21#true} is VALID [2020-07-28 19:07:32,973 INFO L280 TraceCheckUtils]: 11: Hoare triple {21#true} assume true; {21#true} is VALID [2020-07-28 19:07:32,975 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {21#true} {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} #33#return; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,976 INFO L280 TraceCheckUtils]: 13: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} assume -2147483648 <= main_#t~ret3 && main_#t~ret3 <= 2147483647;havoc main_#t~ret3; {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} is VALID [2020-07-28 19:07:32,977 INFO L280 TraceCheckUtils]: 14: Hoare triple {27#(and (<= ULTIMATE.start_main_~g~1 0) (<= 0 ULTIMATE.start_main_~g~1))} assume 0 != main_~g~1; {22#false} is VALID [2020-07-28 19:07:32,978 INFO L280 TraceCheckUtils]: 15: Hoare triple {22#false} assume !false; {22#false} is VALID [2020-07-28 19:07:32,979 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-28 19:07:32,980 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-28 19:07:32,980 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5] total 6 [2020-07-28 19:07:32,982 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1593913552] [2020-07-28 19:07:32,989 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 16 [2020-07-28 19:07:32,992 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:07:32,996 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-28 19:07:33,031 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:07:33,031 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-28 19:07:33,031 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:07:33,040 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-28 19:07:33,041 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2020-07-28 19:07:33,044 INFO L87 Difference]: Start difference. First operand 18 states. Second operand 6 states. [2020-07-28 19:07:33,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:07:33,381 INFO L93 Difference]: Finished difference Result 39 states and 49 transitions. [2020-07-28 19:07:33,381 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2020-07-28 19:07:33,381 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 16 [2020-07-28 19:07:33,382 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:07:33,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:07:33,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 49 transitions. [2020-07-28 19:07:33,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:07:33,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 49 transitions. [2020-07-28 19:07:33,399 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 49 transitions. [2020-07-28 19:07:33,477 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:07:33,488 INFO L225 Difference]: With dead ends: 39 [2020-07-28 19:07:33,489 INFO L226 Difference]: Without dead ends: 17 [2020-07-28 19:07:33,492 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 19 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=29, Invalid=61, Unknown=0, NotChecked=0, Total=90 [2020-07-28 19:07:33,510 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2020-07-28 19:07:33,531 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 17. [2020-07-28 19:07:33,531 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:07:33,532 INFO L82 GeneralOperation]: Start isEquivalent. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:33,532 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:33,533 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:33,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:07:33,538 INFO L93 Difference]: Finished difference Result 17 states and 19 transitions. [2020-07-28 19:07:33,538 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 19 transitions. [2020-07-28 19:07:33,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:07:33,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:07:33,539 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:33,540 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:33,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:07:33,544 INFO L93 Difference]: Finished difference Result 17 states and 19 transitions. [2020-07-28 19:07:33,544 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 19 transitions. [2020-07-28 19:07:33,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:07:33,545 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:07:33,545 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:07:33,546 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:07:33,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2020-07-28 19:07:33,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 19 transitions. [2020-07-28 19:07:33,551 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 19 transitions. Word has length 16 [2020-07-28 19:07:33,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:07:33,552 INFO L479 AbstractCegarLoop]: Abstraction has 17 states and 19 transitions. [2020-07-28 19:07:33,552 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-28 19:07:33,552 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 19 transitions. [2020-07-28 19:07:33,554 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2020-07-28 19:07:33,554 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:07:33,554 INFO L422 BasicCegarLoop]: trace histogram [4, 4, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:07:33,769 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2020-07-28 19:07:33,769 INFO L427 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:07:33,770 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:07:33,770 INFO L82 PathProgramCache]: Analyzing trace with hash -1835094219, now seen corresponding path program 1 times [2020-07-28 19:07:33,771 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:07:33,772 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [624216661] [2020-07-28 19:07:33,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:07:33,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-28 19:07:33,802 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-28 19:07:33,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-28 19:07:33,830 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-28 19:07:33,852 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-28 19:07:33,852 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-28 19:07:33,853 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-28 19:07:33,873 FATAL L488 DefaultTranslator]: Callstack has procedure call flag but succeeding procedure is empty at [CALL] call #t~ret2 := A(~g~1, ~h~0); [2020-07-28 19:07:33,874 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: callstack broken after backtranslation by InlinerBacktranslator at de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:206) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getProgramExecutionAsString(CounterExampleResult.java:155) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getLongDescription(CounterExampleResult.java:134) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:85) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportResult(TraceAbstractionStarter.java:693) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportCounterexampleResult(TraceAbstractionStarter.java:626) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportResults(TraceAbstractionStarter.java:525) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterateNew(TraceAbstractionStarter.java:383) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:127) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:120) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:317) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [2020-07-28 19:07:33,879 INFO L168 Benchmark]: Toolchain (without parser) took 2263.42 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.1 MB). Free memory was 960.2 MB in the beginning and 982.8 MB in the end (delta: -22.6 MB). Peak memory consumption was 109.6 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:33,880 INFO L168 Benchmark]: CDTParser took 0.76 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-28 19:07:33,881 INFO L168 Benchmark]: CACSL2BoogieTranslator took 278.47 ms. Allocated memory is still 1.0 GB. Free memory was 960.2 MB in the beginning and 949.5 MB in the end (delta: 10.7 MB). Peak memory consumption was 10.7 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:33,881 INFO L168 Benchmark]: Boogie Procedure Inliner took 31.95 ms. Allocated memory is still 1.0 GB. Free memory is still 949.5 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-28 19:07:33,882 INFO L168 Benchmark]: Boogie Preprocessor took 78.19 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.1 MB). Free memory was 949.5 MB in the beginning and 1.1 GB in the end (delta: -172.5 MB). Peak memory consumption was 9.8 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:33,883 INFO L168 Benchmark]: RCFGBuilder took 290.33 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 20.1 MB). Peak memory consumption was 20.1 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:33,884 INFO L168 Benchmark]: TraceAbstraction took 1574.08 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 982.8 MB in the end (delta: 119.0 MB). Peak memory consumption was 119.0 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:33,888 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.76 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 278.47 ms. Allocated memory is still 1.0 GB. Free memory was 960.2 MB in the beginning and 949.5 MB in the end (delta: 10.7 MB). Peak memory consumption was 10.7 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 31.95 ms. Allocated memory is still 1.0 GB. Free memory is still 949.5 MB. There was no memory consumed. Max. memory is 11.5 GB. * Boogie Preprocessor took 78.19 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.1 MB). Free memory was 949.5 MB in the beginning and 1.1 GB in the end (delta: -172.5 MB). Peak memory consumption was 9.8 MB. Max. memory is 11.5 GB. * RCFGBuilder took 290.33 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 20.1 MB). Peak memory consumption was 20.1 MB. Max. memory is 11.5 GB. * TraceAbstraction took 1574.08 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 982.8 MB in the end (delta: 119.0 MB). Peak memory consumption was 119.0 MB. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: callstack broken after backtranslation by InlinerBacktranslator: de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:216) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request... ### Bit-precise run ### This is Ultimate 0.1.25-8bd4bc6 [2020-07-28 19:07:35,857 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-28 19:07:35,859 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-28 19:07:35,871 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-28 19:07:35,871 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-28 19:07:35,872 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-28 19:07:35,874 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-28 19:07:35,876 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-28 19:07:35,877 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-28 19:07:35,878 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-28 19:07:35,879 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-28 19:07:35,880 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-28 19:07:35,881 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-28 19:07:35,882 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-28 19:07:35,883 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-28 19:07:35,884 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-28 19:07:35,885 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-28 19:07:35,886 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-28 19:07:35,888 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-28 19:07:35,890 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-28 19:07:35,891 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-28 19:07:35,892 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-28 19:07:35,893 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-28 19:07:35,894 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-28 19:07:35,897 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-28 19:07:35,897 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-28 19:07:35,897 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-28 19:07:35,898 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-28 19:07:35,899 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-28 19:07:35,900 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-28 19:07:35,900 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-28 19:07:35,901 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-28 19:07:35,901 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-28 19:07:35,903 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-28 19:07:35,904 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-28 19:07:35,904 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-28 19:07:35,905 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-28 19:07:35,905 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-28 19:07:35,905 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-28 19:07:35,906 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-28 19:07:35,907 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-28 19:07:35,907 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2020-07-28 19:07:35,922 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-28 19:07:35,923 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-28 19:07:35,924 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-28 19:07:35,924 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-28 19:07:35,924 INFO L138 SettingsManager]: * Use SBE=true [2020-07-28 19:07:35,924 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-28 19:07:35,925 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-28 19:07:35,925 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-28 19:07:35,925 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-28 19:07:35,925 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-28 19:07:35,926 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-28 19:07:35,926 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-28 19:07:35,926 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2020-07-28 19:07:35,926 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2020-07-28 19:07:35,926 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-28 19:07:35,927 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-28 19:07:35,927 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-28 19:07:35,927 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-28 19:07:35,927 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-28 19:07:35,928 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-28 19:07:35,928 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-28 19:07:35,928 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-28 19:07:35,928 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-28 19:07:35,928 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-28 19:07:35,929 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-28 19:07:35,929 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2020-07-28 19:07:35,929 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2020-07-28 19:07:35,929 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --rewrite-divk --print-success --lang smt [2020-07-28 19:07:35,929 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-28 19:07:35,930 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-28 19:07:35,930 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2020-07-28 19:07:35,930 INFO L138 SettingsManager]: * Logic for external solver=AUFBV Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> ccae6f392e1d87c0b193f39dee91a5c51306cb93 [2020-07-28 19:07:36,268 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-28 19:07:36,281 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-28 19:07:36,284 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-28 19:07:36,285 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-28 19:07:36,286 INFO L275 PluginConnector]: CDTParser initialized [2020-07-28 19:07:36,287 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/recursive/BallRajamani-SPIN2000-Fig1.c [2020-07-28 19:07:36,355 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/140a163de/261ce59d6f3c45619d01edb4f440e9dd/FLAG17487bcf7 [2020-07-28 19:07:36,740 INFO L306 CDTParser]: Found 1 translation units. [2020-07-28 19:07:36,741 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/recursive/BallRajamani-SPIN2000-Fig1.c [2020-07-28 19:07:36,749 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/140a163de/261ce59d6f3c45619d01edb4f440e9dd/FLAG17487bcf7 [2020-07-28 19:07:37,130 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/140a163de/261ce59d6f3c45619d01edb4f440e9dd [2020-07-28 19:07:37,133 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-28 19:07:37,137 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2020-07-28 19:07:37,138 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-28 19:07:37,138 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-28 19:07:37,142 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-28 19:07:37,143 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,146 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@17e2c6c5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37, skipping insertion in model container [2020-07-28 19:07:37,146 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,154 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-28 19:07:37,170 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-28 19:07:37,329 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-28 19:07:37,336 INFO L203 MainTranslator]: Completed pre-run [2020-07-28 19:07:37,352 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-28 19:07:37,367 INFO L208 MainTranslator]: Completed translation [2020-07-28 19:07:37,368 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37 WrapperNode [2020-07-28 19:07:37,368 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-28 19:07:37,369 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2020-07-28 19:07:37,369 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2020-07-28 19:07:37,369 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2020-07-28 19:07:37,378 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,384 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,400 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2020-07-28 19:07:37,400 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-28 19:07:37,400 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-28 19:07:37,401 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-28 19:07:37,463 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,464 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,465 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,465 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,469 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,471 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,472 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... [2020-07-28 19:07:37,473 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-28 19:07:37,474 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-28 19:07:37,474 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-28 19:07:37,474 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-28 19:07:37,481 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-28 19:07:37,543 INFO L130 BoogieDeclarations]: Found specification of procedure A [2020-07-28 19:07:37,543 INFO L138 BoogieDeclarations]: Found implementation of procedure A [2020-07-28 19:07:37,544 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-28 19:07:37,544 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-28 19:07:37,729 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-28 19:07:37,729 INFO L295 CfgBuilder]: Removed 4 assume(true) statements. [2020-07-28 19:07:37,733 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.07 07:07:37 BoogieIcfgContainer [2020-07-28 19:07:37,733 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-28 19:07:37,735 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-28 19:07:37,735 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-28 19:07:37,738 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-28 19:07:37,739 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.07 07:07:37" (1/3) ... [2020-07-28 19:07:37,740 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@452701ed and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.07 07:07:37, skipping insertion in model container [2020-07-28 19:07:37,740 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:07:37" (2/3) ... [2020-07-28 19:07:37,740 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@452701ed and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.07 07:07:37, skipping insertion in model container [2020-07-28 19:07:37,741 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.07 07:07:37" (3/3) ... [2020-07-28 19:07:37,742 INFO L109 eAbstractionObserver]: Analyzing ICFG BallRajamani-SPIN2000-Fig1.c [2020-07-28 19:07:37,753 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-28 19:07:37,761 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-28 19:07:37,781 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-28 19:07:37,809 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-28 19:07:37,809 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-28 19:07:37,810 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-28 19:07:37,810 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-28 19:07:37,810 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-28 19:07:37,810 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-28 19:07:37,811 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-28 19:07:37,811 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-28 19:07:37,837 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states. [2020-07-28 19:07:37,849 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-28 19:07:37,853 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:07:37,854 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:07:37,855 INFO L427 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:07:37,869 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:07:37,870 INFO L82 PathProgramCache]: Analyzing trace with hash -103722487, now seen corresponding path program 1 times [2020-07-28 19:07:37,897 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-28 19:07:37,898 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1216838778] [2020-07-28 19:07:37,899 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 2 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with mathsat -unsat_core_generation=3 [2020-07-28 19:07:37,994 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:07:37,997 INFO L263 TraceCheckSpWp]: Trace formula consists of 29 conjuncts, 4 conjunts are in the unsatisfiable core [2020-07-28 19:07:38,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:07:38,014 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-28 19:07:38,151 INFO L280 TraceCheckUtils]: 0: Hoare triple {21#true} ~g~0 := 0bv32; {21#true} is VALID [2020-07-28 19:07:38,152 INFO L280 TraceCheckUtils]: 1: Hoare triple {21#true} havoc main_#res;havoc main_#t~nondet1, main_#t~ret2, main_#t~ret3, main_~g~1, main_~h~0;main_~g~1 := main_#t~nondet1;havoc main_#t~nondet1;main_~h~0 := (if 0bv32 == main_~g~1 then 1bv32 else 0bv32); {21#true} is VALID [2020-07-28 19:07:38,152 INFO L263 TraceCheckUtils]: 2: Hoare triple {21#true} call main_#t~ret2 := A(main_~g~1, main_~h~0); {21#true} is VALID [2020-07-28 19:07:38,154 INFO L280 TraceCheckUtils]: 3: Hoare triple {21#true} ~a1 := #in~a1;~a2 := #in~a2; {35#(= |A_#in~a1| A_~a1)} is VALID [2020-07-28 19:07:38,155 INFO L280 TraceCheckUtils]: 4: Hoare triple {35#(= |A_#in~a1| A_~a1)} assume !(0bv32 != ~a1);~g~0 := ~a2; {39#(= |A_#in~a1| (_ bv0 32))} is VALID [2020-07-28 19:07:38,156 INFO L280 TraceCheckUtils]: 5: Hoare triple {39#(= |A_#in~a1| (_ bv0 32))} assume true; {39#(= |A_#in~a1| (_ bv0 32))} is VALID [2020-07-28 19:07:38,161 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {39#(= |A_#in~a1| (_ bv0 32))} {21#true} #31#return; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,162 INFO L280 TraceCheckUtils]: 7: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} havoc main_#t~ret2; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,163 INFO L263 TraceCheckUtils]: 8: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} call main_#t~ret3 := A(main_~g~1, main_~h~0); {21#true} is VALID [2020-07-28 19:07:38,163 INFO L280 TraceCheckUtils]: 9: Hoare triple {21#true} ~a1 := #in~a1;~a2 := #in~a2; {21#true} is VALID [2020-07-28 19:07:38,164 INFO L280 TraceCheckUtils]: 10: Hoare triple {21#true} assume !(0bv32 != ~a1);~g~0 := ~a2; {21#true} is VALID [2020-07-28 19:07:38,164 INFO L280 TraceCheckUtils]: 11: Hoare triple {21#true} assume true; {21#true} is VALID [2020-07-28 19:07:38,166 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {21#true} {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} #33#return; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,167 INFO L280 TraceCheckUtils]: 13: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} havoc main_#t~ret3; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,169 INFO L280 TraceCheckUtils]: 14: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} assume 0bv32 != main_~g~1; {22#false} is VALID [2020-07-28 19:07:38,169 INFO L280 TraceCheckUtils]: 15: Hoare triple {22#false} assume !false; {22#false} is VALID [2020-07-28 19:07:38,175 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-28 19:07:38,177 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-28 19:07:38,319 INFO L280 TraceCheckUtils]: 15: Hoare triple {22#false} assume !false; {22#false} is VALID [2020-07-28 19:07:38,320 INFO L280 TraceCheckUtils]: 14: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} assume 0bv32 != main_~g~1; {22#false} is VALID [2020-07-28 19:07:38,322 INFO L280 TraceCheckUtils]: 13: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} havoc main_#t~ret3; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,324 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {21#true} {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} #33#return; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,325 INFO L280 TraceCheckUtils]: 11: Hoare triple {21#true} assume true; {21#true} is VALID [2020-07-28 19:07:38,325 INFO L280 TraceCheckUtils]: 10: Hoare triple {21#true} assume !(0bv32 != ~a1);~g~0 := ~a2; {21#true} is VALID [2020-07-28 19:07:38,325 INFO L280 TraceCheckUtils]: 9: Hoare triple {21#true} ~a1 := #in~a1;~a2 := #in~a2; {21#true} is VALID [2020-07-28 19:07:38,326 INFO L263 TraceCheckUtils]: 8: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} call main_#t~ret3 := A(main_~g~1, main_~h~0); {21#true} is VALID [2020-07-28 19:07:38,327 INFO L280 TraceCheckUtils]: 7: Hoare triple {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} havoc main_#t~ret2; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,329 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {39#(= |A_#in~a1| (_ bv0 32))} {21#true} #31#return; {46#(= (_ bv0 32) ULTIMATE.start_main_~g~1)} is VALID [2020-07-28 19:07:38,330 INFO L280 TraceCheckUtils]: 5: Hoare triple {39#(= |A_#in~a1| (_ bv0 32))} assume true; {39#(= |A_#in~a1| (_ bv0 32))} is VALID [2020-07-28 19:07:38,331 INFO L280 TraceCheckUtils]: 4: Hoare triple {110#(or (not (= A_~a1 (_ bv0 32))) (= |A_#in~a1| (_ bv0 32)))} assume !(0bv32 != ~a1);~g~0 := ~a2; {39#(= |A_#in~a1| (_ bv0 32))} is VALID [2020-07-28 19:07:38,332 INFO L280 TraceCheckUtils]: 3: Hoare triple {21#true} ~a1 := #in~a1;~a2 := #in~a2; {110#(or (not (= A_~a1 (_ bv0 32))) (= |A_#in~a1| (_ bv0 32)))} is VALID [2020-07-28 19:07:38,333 INFO L263 TraceCheckUtils]: 2: Hoare triple {21#true} call main_#t~ret2 := A(main_~g~1, main_~h~0); {21#true} is VALID [2020-07-28 19:07:38,333 INFO L280 TraceCheckUtils]: 1: Hoare triple {21#true} havoc main_#res;havoc main_#t~nondet1, main_#t~ret2, main_#t~ret3, main_~g~1, main_~h~0;main_~g~1 := main_#t~nondet1;havoc main_#t~nondet1;main_~h~0 := (if 0bv32 == main_~g~1 then 1bv32 else 0bv32); {21#true} is VALID [2020-07-28 19:07:38,334 INFO L280 TraceCheckUtils]: 0: Hoare triple {21#true} ~g~0 := 0bv32; {21#true} is VALID [2020-07-28 19:07:38,335 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-28 19:07:38,337 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1216838778] [2020-07-28 19:07:38,337 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-28 19:07:38,338 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 6 [2020-07-28 19:07:38,339 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [343489306] [2020-07-28 19:07:38,346 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 16 [2020-07-28 19:07:38,349 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:07:38,353 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-28 19:07:38,395 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:07:38,395 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-28 19:07:38,396 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-28 19:07:38,405 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-28 19:07:38,406 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-28 19:07:38,408 INFO L87 Difference]: Start difference. First operand 18 states. Second operand 6 states. [2020-07-28 19:07:38,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:07:38,724 INFO L93 Difference]: Finished difference Result 39 states and 49 transitions. [2020-07-28 19:07:38,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-28 19:07:38,724 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 16 [2020-07-28 19:07:38,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:07:38,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:07:38,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2020-07-28 19:07:38,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:07:38,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2020-07-28 19:07:38,743 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 49 transitions. [2020-07-28 19:07:38,829 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:07:38,841 INFO L225 Difference]: With dead ends: 39 [2020-07-28 19:07:38,841 INFO L226 Difference]: Without dead ends: 17 [2020-07-28 19:07:38,845 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 26 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=16, Invalid=26, Unknown=0, NotChecked=0, Total=42 [2020-07-28 19:07:38,863 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2020-07-28 19:07:38,887 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 17. [2020-07-28 19:07:38,888 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:07:38,888 INFO L82 GeneralOperation]: Start isEquivalent. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:38,889 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:38,889 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:38,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:07:38,893 INFO L93 Difference]: Finished difference Result 17 states and 19 transitions. [2020-07-28 19:07:38,893 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 19 transitions. [2020-07-28 19:07:38,894 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:07:38,894 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:07:38,894 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:38,894 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 17 states. [2020-07-28 19:07:38,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:07:38,898 INFO L93 Difference]: Finished difference Result 17 states and 19 transitions. [2020-07-28 19:07:38,898 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 19 transitions. [2020-07-28 19:07:38,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:07:38,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:07:38,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:07:38,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:07:38,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2020-07-28 19:07:38,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 19 transitions. [2020-07-28 19:07:38,904 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 19 transitions. Word has length 16 [2020-07-28 19:07:38,905 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:07:38,905 INFO L479 AbstractCegarLoop]: Abstraction has 17 states and 19 transitions. [2020-07-28 19:07:38,905 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-28 19:07:38,905 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 19 transitions. [2020-07-28 19:07:38,907 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2020-07-28 19:07:38,907 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:07:38,907 INFO L422 BasicCegarLoop]: trace histogram [4, 4, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:07:39,119 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 mathsat -unsat_core_generation=3 [2020-07-28 19:07:39,120 INFO L427 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:07:39,121 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:07:39,121 INFO L82 PathProgramCache]: Analyzing trace with hash -1835094219, now seen corresponding path program 1 times [2020-07-28 19:07:39,122 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-28 19:07:39,123 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [310262078] [2020-07-28 19:07:39,123 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 3 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with mathsat -unsat_core_generation=3 [2020-07-28 19:07:39,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-28 19:07:39,155 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-28 19:07:39,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-28 19:07:39,177 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-28 19:07:39,225 INFO L174 FreeRefinementEngine]: Strategy WOLF found a feasible trace [2020-07-28 19:07:39,225 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-28 19:07:39,438 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 mathsat -unsat_core_generation=3 [2020-07-28 19:07:39,476 FATAL L488 DefaultTranslator]: Callstack has procedure call flag but succeeding procedure is empty at [CALL] call #t~ret2 := A(~g~1, ~h~0); [2020-07-28 19:07:39,478 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: callstack broken after backtranslation by InlinerBacktranslator at de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:206) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getProgramExecutionAsString(CounterExampleResult.java:155) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getLongDescription(CounterExampleResult.java:134) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:85) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportResult(TraceAbstractionStarter.java:693) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportCounterexampleResult(TraceAbstractionStarter.java:626) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportResults(TraceAbstractionStarter.java:525) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterateNew(TraceAbstractionStarter.java:383) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:127) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:120) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:317) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [2020-07-28 19:07:39,486 INFO L168 Benchmark]: Toolchain (without parser) took 2349.05 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 137.4 MB). Free memory was 948.2 MB in the beginning and 992.2 MB in the end (delta: -44.0 MB). Peak memory consumption was 93.3 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:39,488 INFO L168 Benchmark]: CDTParser took 0.17 ms. Allocated memory is still 1.0 GB. Free memory is still 981.7 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-28 19:07:39,489 INFO L168 Benchmark]: CACSL2BoogieTranslator took 230.65 ms. Allocated memory is still 1.0 GB. Free memory was 948.2 MB in the beginning and 937.4 MB in the end (delta: 10.7 MB). Peak memory consumption was 10.7 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:39,490 INFO L168 Benchmark]: Boogie Procedure Inliner took 31.10 ms. Allocated memory is still 1.0 GB. Free memory is still 937.4 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-28 19:07:39,491 INFO L168 Benchmark]: Boogie Preprocessor took 73.26 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 137.4 MB). Free memory was 937.4 MB in the beginning and 1.1 GB in the end (delta: -196.3 MB). Peak memory consumption was 9.9 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:39,493 INFO L168 Benchmark]: RCFGBuilder took 259.66 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 19.3 MB). Peak memory consumption was 19.3 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:39,494 INFO L168 Benchmark]: TraceAbstraction took 1746.90 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 992.2 MB in the end (delta: 122.3 MB). Peak memory consumption was 122.3 MB. Max. memory is 11.5 GB. [2020-07-28 19:07:39,511 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.17 ms. Allocated memory is still 1.0 GB. Free memory is still 981.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 230.65 ms. Allocated memory is still 1.0 GB. Free memory was 948.2 MB in the beginning and 937.4 MB in the end (delta: 10.7 MB). Peak memory consumption was 10.7 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 31.10 ms. Allocated memory is still 1.0 GB. Free memory is still 937.4 MB. There was no memory consumed. Max. memory is 11.5 GB. * Boogie Preprocessor took 73.26 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 137.4 MB). Free memory was 937.4 MB in the beginning and 1.1 GB in the end (delta: -196.3 MB). Peak memory consumption was 9.9 MB. Max. memory is 11.5 GB. * RCFGBuilder took 259.66 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 19.3 MB). Peak memory consumption was 19.3 MB. Max. memory is 11.5 GB. * TraceAbstraction took 1746.90 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 992.2 MB in the end (delta: 122.3 MB). Peak memory consumption was 122.3 MB. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: callstack broken after backtranslation by InlinerBacktranslator: de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:216) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...