/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/recursive-simple/fibo_2calls_4-2.c -------------------------------------------------------------------------------- This is Ultimate 0.1.25-46f3038-m [2020-07-08 12:14:02,711 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-08 12:14:02,714 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-08 12:14:02,736 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-08 12:14:02,736 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-08 12:14:02,737 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-08 12:14:02,739 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-08 12:14:02,741 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-08 12:14:02,742 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-08 12:14:02,743 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-08 12:14:02,744 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-08 12:14:02,745 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-08 12:14:02,746 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-08 12:14:02,747 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-08 12:14:02,748 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-08 12:14:02,749 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-08 12:14:02,750 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-08 12:14:02,751 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-08 12:14:02,753 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-08 12:14:02,755 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-08 12:14:02,756 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-08 12:14:02,758 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-08 12:14:02,759 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-08 12:14:02,760 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-08 12:14:02,762 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-08 12:14:02,763 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-08 12:14:02,763 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-08 12:14:02,764 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-08 12:14:02,764 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-08 12:14:02,766 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-08 12:14:02,766 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-08 12:14:02,768 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-08 12:14:02,769 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-08 12:14:02,770 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-08 12:14:02,771 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-08 12:14:02,772 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-08 12:14:02,772 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-08 12:14:02,773 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-08 12:14:02,773 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-08 12:14:02,774 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-08 12:14:02,775 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-08 12:14:02,775 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2020-07-08 12:14:02,791 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-08 12:14:02,791 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-08 12:14:02,792 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-08 12:14:02,793 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-08 12:14:02,793 INFO L138 SettingsManager]: * Use SBE=true [2020-07-08 12:14:02,793 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-08 12:14:02,793 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-08 12:14:02,793 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-08 12:14:02,794 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-08 12:14:02,794 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-08 12:14:02,794 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-08 12:14:02,794 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-08 12:14:02,795 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-08 12:14:02,795 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-08 12:14:02,795 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-08 12:14:02,795 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-08 12:14:02,795 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-08 12:14:02,796 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-08 12:14:02,796 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-08 12:14:02,796 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-08 12:14:02,798 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-08 12:14:02,798 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-08 12:14:02,799 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-08 12:14:02,799 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-08 12:14:02,799 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2020-07-08 12:14:02,799 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-07-08 12:14:02,800 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2020-07-08 12:14:02,800 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-08 12:14:02,800 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-08 12:14:02,800 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2020-07-08 12:14:03,109 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-08 12:14:03,133 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-08 12:14:03,140 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-08 12:14:03,142 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-08 12:14:03,142 INFO L275 PluginConnector]: CDTParser initialized [2020-07-08 12:14:03,143 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/recursive-simple/fibo_2calls_4-2.c [2020-07-08 12:14:03,215 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65337ecb3/ae67677cd0e746369b409f082cef8880/FLAG03f847bd3 [2020-07-08 12:14:03,718 INFO L306 CDTParser]: Found 1 translation units. [2020-07-08 12:14:03,719 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/recursive-simple/fibo_2calls_4-2.c [2020-07-08 12:14:03,727 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65337ecb3/ae67677cd0e746369b409f082cef8880/FLAG03f847bd3 [2020-07-08 12:14:04,061 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65337ecb3/ae67677cd0e746369b409f082cef8880 [2020-07-08 12:14:04,071 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-08 12:14:04,073 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-08 12:14:04,074 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-08 12:14:04,075 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-08 12:14:04,079 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-08 12:14:04,081 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,084 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4d0c752 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04, skipping insertion in model container [2020-07-08 12:14:04,085 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,093 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-08 12:14:04,113 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-08 12:14:04,345 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-08 12:14:04,354 INFO L203 MainTranslator]: Completed pre-run [2020-07-08 12:14:04,371 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-08 12:14:04,385 INFO L208 MainTranslator]: Completed translation [2020-07-08 12:14:04,386 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04 WrapperNode [2020-07-08 12:14:04,386 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-08 12:14:04,387 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-08 12:14:04,387 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-08 12:14:04,387 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-08 12:14:04,398 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,399 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,404 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,404 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,509 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,513 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,519 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (1/1) ... [2020-07-08 12:14:04,525 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-08 12:14:04,526 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-08 12:14:04,526 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-08 12:14:04,526 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-08 12:14:04,528 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (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-08 12:14:04,599 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-08 12:14:04,600 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-08 12:14:04,600 INFO L138 BoogieDeclarations]: Found implementation of procedure fibo1 [2020-07-08 12:14:04,600 INFO L138 BoogieDeclarations]: Found implementation of procedure fibo2 [2020-07-08 12:14:04,600 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-08 12:14:04,601 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-08 12:14:04,601 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-08 12:14:04,601 INFO L130 BoogieDeclarations]: Found specification of procedure fibo1 [2020-07-08 12:14:04,601 INFO L130 BoogieDeclarations]: Found specification of procedure fibo2 [2020-07-08 12:14:04,602 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-08 12:14:04,602 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-08 12:14:04,603 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-08 12:14:04,978 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-08 12:14:04,979 INFO L295 CfgBuilder]: Removed 0 assume(true) statements. [2020-07-08 12:14:04,985 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.07 12:14:04 BoogieIcfgContainer [2020-07-08 12:14:04,985 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-08 12:14:04,987 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-08 12:14:04,987 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-08 12:14:04,992 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-08 12:14:04,993 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.07 12:14:04" (1/3) ... [2020-07-08 12:14:04,994 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ab84a66 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.07 12:14:04, skipping insertion in model container [2020-07-08 12:14:04,994 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 12:14:04" (2/3) ... [2020-07-08 12:14:04,995 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ab84a66 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.07 12:14:04, skipping insertion in model container [2020-07-08 12:14:04,995 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.07 12:14:04" (3/3) ... [2020-07-08 12:14:04,997 INFO L109 eAbstractionObserver]: Analyzing ICFG fibo_2calls_4-2.c [2020-07-08 12:14:05,030 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-08 12:14:05,057 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-08 12:14:05,093 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-08 12:14:05,130 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-08 12:14:05,131 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-08 12:14:05,131 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-08 12:14:05,131 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-08 12:14:05,131 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-08 12:14:05,132 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-08 12:14:05,132 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-08 12:14:05,132 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-08 12:14:05,154 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states. [2020-07-08 12:14:05,162 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2020-07-08 12:14:05,162 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:05,164 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:05,165 INFO L427 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:05,171 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:05,171 INFO L82 PathProgramCache]: Analyzing trace with hash 1464461757, now seen corresponding path program 1 times [2020-07-08 12:14:05,180 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:05,181 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1054418091] [2020-07-08 12:14:05,181 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:05,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:05,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:05,404 INFO L280 TraceCheckUtils]: 0: Hoare triple {36#true} assume true; {36#true} is VALID [2020-07-08 12:14:05,404 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {36#true} {36#true} #47#return; {36#true} is VALID [2020-07-08 12:14:05,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:05,480 INFO L280 TraceCheckUtils]: 0: Hoare triple {36#true} ~n := #in~n; {45#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:05,482 INFO L280 TraceCheckUtils]: 1: Hoare triple {45#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {46#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:05,484 INFO L280 TraceCheckUtils]: 2: Hoare triple {46#(<= |fibo1_#in~n| 0)} assume true; {46#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:05,487 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {46#(<= |fibo1_#in~n| 0)} {40#(<= 4 main_~x~0)} #51#return; {37#false} is VALID [2020-07-08 12:14:05,488 INFO L263 TraceCheckUtils]: 0: Hoare triple {36#true} call ULTIMATE.init(); {36#true} is VALID [2020-07-08 12:14:05,488 INFO L280 TraceCheckUtils]: 1: Hoare triple {36#true} assume true; {36#true} is VALID [2020-07-08 12:14:05,489 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {36#true} {36#true} #47#return; {36#true} is VALID [2020-07-08 12:14:05,489 INFO L263 TraceCheckUtils]: 3: Hoare triple {36#true} call #t~ret5 := main(); {36#true} is VALID [2020-07-08 12:14:05,491 INFO L280 TraceCheckUtils]: 4: Hoare triple {36#true} ~x~0 := 4; {40#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:05,492 INFO L263 TraceCheckUtils]: 5: Hoare triple {40#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {36#true} is VALID [2020-07-08 12:14:05,493 INFO L280 TraceCheckUtils]: 6: Hoare triple {36#true} ~n := #in~n; {45#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:05,494 INFO L280 TraceCheckUtils]: 7: Hoare triple {45#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {46#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:05,495 INFO L280 TraceCheckUtils]: 8: Hoare triple {46#(<= |fibo1_#in~n| 0)} assume true; {46#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:05,498 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {46#(<= |fibo1_#in~n| 0)} {40#(<= 4 main_~x~0)} #51#return; {37#false} is VALID [2020-07-08 12:14:05,498 INFO L280 TraceCheckUtils]: 10: Hoare triple {37#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {37#false} is VALID [2020-07-08 12:14:05,499 INFO L280 TraceCheckUtils]: 11: Hoare triple {37#false} assume 3 == ~result~0; {37#false} is VALID [2020-07-08 12:14:05,499 INFO L280 TraceCheckUtils]: 12: Hoare triple {37#false} assume !false; {37#false} is VALID [2020-07-08 12:14:05,501 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-08 12:14:05,502 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1054418091] [2020-07-08 12:14:05,503 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-08 12:14:05,504 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-08 12:14:05,505 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1415249744] [2020-07-08 12:14:05,513 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 13 [2020-07-08 12:14:05,517 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:05,522 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-08 12:14:05,556 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:05,556 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-08 12:14:05,557 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:05,565 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-08 12:14:05,566 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-08 12:14:05,569 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 5 states. [2020-07-08 12:14:06,020 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:06,021 INFO L93 Difference]: Finished difference Result 44 states and 53 transitions. [2020-07-08 12:14:06,021 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-08 12:14:06,022 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 13 [2020-07-08 12:14:06,022 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:06,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-08 12:14:06,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2020-07-08 12:14:06,036 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-08 12:14:06,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2020-07-08 12:14:06,044 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2020-07-08 12:14:06,158 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:06,175 INFO L225 Difference]: With dead ends: 44 [2020-07-08 12:14:06,176 INFO L226 Difference]: Without dead ends: 30 [2020-07-08 12:14:06,181 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-08 12:14:06,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2020-07-08 12:14:06,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2020-07-08 12:14:06,245 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:06,245 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand 30 states. [2020-07-08 12:14:06,246 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2020-07-08 12:14:06,247 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2020-07-08 12:14:06,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:06,255 INFO L93 Difference]: Finished difference Result 30 states and 37 transitions. [2020-07-08 12:14:06,256 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 37 transitions. [2020-07-08 12:14:06,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:06,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:06,258 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2020-07-08 12:14:06,258 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2020-07-08 12:14:06,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:06,267 INFO L93 Difference]: Finished difference Result 30 states and 37 transitions. [2020-07-08 12:14:06,267 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 37 transitions. [2020-07-08 12:14:06,268 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:06,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:06,269 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:06,270 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:06,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-08 12:14:06,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 37 transitions. [2020-07-08 12:14:06,277 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 37 transitions. Word has length 13 [2020-07-08 12:14:06,278 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:06,278 INFO L479 AbstractCegarLoop]: Abstraction has 30 states and 37 transitions. [2020-07-08 12:14:06,278 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-08 12:14:06,279 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 37 transitions. [2020-07-08 12:14:06,280 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2020-07-08 12:14:06,280 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:06,280 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:06,281 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-08 12:14:06,281 INFO L427 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:06,281 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:06,282 INFO L82 PathProgramCache]: Analyzing trace with hash -1134800479, now seen corresponding path program 1 times [2020-07-08 12:14:06,282 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:06,283 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [290288632] [2020-07-08 12:14:06,283 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:06,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,347 INFO L280 TraceCheckUtils]: 0: Hoare triple {207#true} assume true; {207#true} is VALID [2020-07-08 12:14:06,348 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {207#true} {207#true} #47#return; {207#true} is VALID [2020-07-08 12:14:06,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,389 INFO L280 TraceCheckUtils]: 0: Hoare triple {207#true} ~n := #in~n; {217#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:06,390 INFO L280 TraceCheckUtils]: 1: Hoare triple {217#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {217#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:06,392 INFO L280 TraceCheckUtils]: 2: Hoare triple {217#(= fibo1_~n |fibo1_#in~n|)} assume 1 == ~n;#res := 1; {218#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:06,393 INFO L280 TraceCheckUtils]: 3: Hoare triple {218#(<= |fibo1_#in~n| 1)} assume true; {218#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:06,395 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {218#(<= |fibo1_#in~n| 1)} {211#(<= 4 main_~x~0)} #51#return; {208#false} is VALID [2020-07-08 12:14:06,395 INFO L263 TraceCheckUtils]: 0: Hoare triple {207#true} call ULTIMATE.init(); {207#true} is VALID [2020-07-08 12:14:06,396 INFO L280 TraceCheckUtils]: 1: Hoare triple {207#true} assume true; {207#true} is VALID [2020-07-08 12:14:06,396 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {207#true} {207#true} #47#return; {207#true} is VALID [2020-07-08 12:14:06,397 INFO L263 TraceCheckUtils]: 3: Hoare triple {207#true} call #t~ret5 := main(); {207#true} is VALID [2020-07-08 12:14:06,398 INFO L280 TraceCheckUtils]: 4: Hoare triple {207#true} ~x~0 := 4; {211#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:06,398 INFO L263 TraceCheckUtils]: 5: Hoare triple {211#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {207#true} is VALID [2020-07-08 12:14:06,399 INFO L280 TraceCheckUtils]: 6: Hoare triple {207#true} ~n := #in~n; {217#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:06,400 INFO L280 TraceCheckUtils]: 7: Hoare triple {217#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {217#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:06,401 INFO L280 TraceCheckUtils]: 8: Hoare triple {217#(= fibo1_~n |fibo1_#in~n|)} assume 1 == ~n;#res := 1; {218#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:06,402 INFO L280 TraceCheckUtils]: 9: Hoare triple {218#(<= |fibo1_#in~n| 1)} assume true; {218#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:06,403 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {218#(<= |fibo1_#in~n| 1)} {211#(<= 4 main_~x~0)} #51#return; {208#false} is VALID [2020-07-08 12:14:06,404 INFO L280 TraceCheckUtils]: 11: Hoare triple {208#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {208#false} is VALID [2020-07-08 12:14:06,404 INFO L280 TraceCheckUtils]: 12: Hoare triple {208#false} assume 3 == ~result~0; {208#false} is VALID [2020-07-08 12:14:06,405 INFO L280 TraceCheckUtils]: 13: Hoare triple {208#false} assume !false; {208#false} is VALID [2020-07-08 12:14:06,406 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-08 12:14:06,406 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [290288632] [2020-07-08 12:14:06,407 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-08 12:14:06,407 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-08 12:14:06,407 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1996993667] [2020-07-08 12:14:06,410 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 14 [2020-07-08 12:14:06,410 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:06,410 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-08 12:14:06,431 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:06,431 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-08 12:14:06,432 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:06,432 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-08 12:14:06,433 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-08 12:14:06,433 INFO L87 Difference]: Start difference. First operand 30 states and 37 transitions. Second operand 5 states. [2020-07-08 12:14:06,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:06,642 INFO L93 Difference]: Finished difference Result 36 states and 44 transitions. [2020-07-08 12:14:06,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-08 12:14:06,643 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 14 [2020-07-08 12:14:06,643 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:06,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-08 12:14:06,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2020-07-08 12:14:06,648 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-08 12:14:06,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2020-07-08 12:14:06,651 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2020-07-08 12:14:06,709 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:06,713 INFO L225 Difference]: With dead ends: 36 [2020-07-08 12:14:06,713 INFO L226 Difference]: Without dead ends: 32 [2020-07-08 12:14:06,715 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-08 12:14:06,715 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2020-07-08 12:14:06,729 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 30. [2020-07-08 12:14:06,729 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:06,729 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 30 states. [2020-07-08 12:14:06,730 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 30 states. [2020-07-08 12:14:06,730 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 30 states. [2020-07-08 12:14:06,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:06,735 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2020-07-08 12:14:06,735 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2020-07-08 12:14:06,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:06,737 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:06,737 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 32 states. [2020-07-08 12:14:06,737 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 32 states. [2020-07-08 12:14:06,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:06,742 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2020-07-08 12:14:06,742 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2020-07-08 12:14:06,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:06,743 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:06,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:06,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:06,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-08 12:14:06,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 37 transitions. [2020-07-08 12:14:06,748 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 37 transitions. Word has length 14 [2020-07-08 12:14:06,748 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:06,748 INFO L479 AbstractCegarLoop]: Abstraction has 30 states and 37 transitions. [2020-07-08 12:14:06,748 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-08 12:14:06,748 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 37 transitions. [2020-07-08 12:14:06,750 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2020-07-08 12:14:06,750 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:06,750 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:06,751 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-08 12:14:06,751 INFO L427 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:06,751 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:06,752 INFO L82 PathProgramCache]: Analyzing trace with hash -1592795560, now seen corresponding path program 1 times [2020-07-08 12:14:06,752 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:06,752 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [988389107] [2020-07-08 12:14:06,753 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:06,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,808 INFO L280 TraceCheckUtils]: 0: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-08 12:14:06,808 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {375#true} {375#true} #47#return; {375#true} is VALID [2020-07-08 12:14:06,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,874 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,909 INFO L280 TraceCheckUtils]: 0: Hoare triple {375#true} ~n := #in~n; {407#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:06,910 INFO L280 TraceCheckUtils]: 1: Hoare triple {407#(= fibo2_~n |fibo2_#in~n|)} assume ~n < 1;#res := 0; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:06,911 INFO L280 TraceCheckUtils]: 2: Hoare triple {408#(<= |fibo2_#in~n| 0)} assume true; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:06,912 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {408#(<= |fibo2_#in~n| 0)} {398#(< 1 fibo1_~n)} #57#return; {376#false} is VALID [2020-07-08 12:14:06,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,921 INFO L280 TraceCheckUtils]: 0: Hoare triple {375#true} ~n := #in~n; {375#true} is VALID [2020-07-08 12:14:06,922 INFO L280 TraceCheckUtils]: 1: Hoare triple {375#true} assume ~n < 1;#res := 0; {375#true} is VALID [2020-07-08 12:14:06,922 INFO L280 TraceCheckUtils]: 2: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-08 12:14:06,923 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {375#true} {376#false} #59#return; {376#false} is VALID [2020-07-08 12:14:06,923 INFO L280 TraceCheckUtils]: 0: Hoare triple {375#true} ~n := #in~n; {375#true} is VALID [2020-07-08 12:14:06,924 INFO L280 TraceCheckUtils]: 1: Hoare triple {375#true} assume !(~n < 1); {397#(< 0 fibo1_~n)} is VALID [2020-07-08 12:14:06,925 INFO L280 TraceCheckUtils]: 2: Hoare triple {397#(< 0 fibo1_~n)} assume !(1 == ~n); {398#(< 1 fibo1_~n)} is VALID [2020-07-08 12:14:06,926 INFO L263 TraceCheckUtils]: 3: Hoare triple {398#(< 1 fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {375#true} is VALID [2020-07-08 12:14:06,926 INFO L280 TraceCheckUtils]: 4: Hoare triple {375#true} ~n := #in~n; {407#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:06,927 INFO L280 TraceCheckUtils]: 5: Hoare triple {407#(= fibo2_~n |fibo2_#in~n|)} assume ~n < 1;#res := 0; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:06,928 INFO L280 TraceCheckUtils]: 6: Hoare triple {408#(<= |fibo2_#in~n| 0)} assume true; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:06,930 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {408#(<= |fibo2_#in~n| 0)} {398#(< 1 fibo1_~n)} #57#return; {376#false} is VALID [2020-07-08 12:14:06,930 INFO L280 TraceCheckUtils]: 8: Hoare triple {376#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {376#false} is VALID [2020-07-08 12:14:06,930 INFO L263 TraceCheckUtils]: 9: Hoare triple {376#false} call #t~ret1 := fibo2(~n - 2); {375#true} is VALID [2020-07-08 12:14:06,931 INFO L280 TraceCheckUtils]: 10: Hoare triple {375#true} ~n := #in~n; {375#true} is VALID [2020-07-08 12:14:06,931 INFO L280 TraceCheckUtils]: 11: Hoare triple {375#true} assume ~n < 1;#res := 0; {375#true} is VALID [2020-07-08 12:14:06,932 INFO L280 TraceCheckUtils]: 12: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-08 12:14:06,932 INFO L275 TraceCheckUtils]: 13: Hoare quadruple {375#true} {376#false} #59#return; {376#false} is VALID [2020-07-08 12:14:06,932 INFO L280 TraceCheckUtils]: 14: Hoare triple {376#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {376#false} is VALID [2020-07-08 12:14:06,933 INFO L280 TraceCheckUtils]: 15: Hoare triple {376#false} assume true; {376#false} is VALID [2020-07-08 12:14:06,933 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {376#false} {379#(<= 4 main_~x~0)} #51#return; {376#false} is VALID [2020-07-08 12:14:06,934 INFO L263 TraceCheckUtils]: 0: Hoare triple {375#true} call ULTIMATE.init(); {375#true} is VALID [2020-07-08 12:14:06,934 INFO L280 TraceCheckUtils]: 1: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-08 12:14:06,935 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {375#true} {375#true} #47#return; {375#true} is VALID [2020-07-08 12:14:06,935 INFO L263 TraceCheckUtils]: 3: Hoare triple {375#true} call #t~ret5 := main(); {375#true} is VALID [2020-07-08 12:14:06,937 INFO L280 TraceCheckUtils]: 4: Hoare triple {375#true} ~x~0 := 4; {379#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:06,937 INFO L263 TraceCheckUtils]: 5: Hoare triple {379#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {375#true} is VALID [2020-07-08 12:14:06,937 INFO L280 TraceCheckUtils]: 6: Hoare triple {375#true} ~n := #in~n; {375#true} is VALID [2020-07-08 12:14:06,938 INFO L280 TraceCheckUtils]: 7: Hoare triple {375#true} assume !(~n < 1); {397#(< 0 fibo1_~n)} is VALID [2020-07-08 12:14:06,939 INFO L280 TraceCheckUtils]: 8: Hoare triple {397#(< 0 fibo1_~n)} assume !(1 == ~n); {398#(< 1 fibo1_~n)} is VALID [2020-07-08 12:14:06,940 INFO L263 TraceCheckUtils]: 9: Hoare triple {398#(< 1 fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {375#true} is VALID [2020-07-08 12:14:06,940 INFO L280 TraceCheckUtils]: 10: Hoare triple {375#true} ~n := #in~n; {407#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:06,941 INFO L280 TraceCheckUtils]: 11: Hoare triple {407#(= fibo2_~n |fibo2_#in~n|)} assume ~n < 1;#res := 0; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:06,942 INFO L280 TraceCheckUtils]: 12: Hoare triple {408#(<= |fibo2_#in~n| 0)} assume true; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:06,944 INFO L275 TraceCheckUtils]: 13: Hoare quadruple {408#(<= |fibo2_#in~n| 0)} {398#(< 1 fibo1_~n)} #57#return; {376#false} is VALID [2020-07-08 12:14:06,944 INFO L280 TraceCheckUtils]: 14: Hoare triple {376#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {376#false} is VALID [2020-07-08 12:14:06,944 INFO L263 TraceCheckUtils]: 15: Hoare triple {376#false} call #t~ret1 := fibo2(~n - 2); {375#true} is VALID [2020-07-08 12:14:06,945 INFO L280 TraceCheckUtils]: 16: Hoare triple {375#true} ~n := #in~n; {375#true} is VALID [2020-07-08 12:14:06,945 INFO L280 TraceCheckUtils]: 17: Hoare triple {375#true} assume ~n < 1;#res := 0; {375#true} is VALID [2020-07-08 12:14:06,945 INFO L280 TraceCheckUtils]: 18: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-08 12:14:06,946 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {375#true} {376#false} #59#return; {376#false} is VALID [2020-07-08 12:14:06,946 INFO L280 TraceCheckUtils]: 20: Hoare triple {376#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {376#false} is VALID [2020-07-08 12:14:06,946 INFO L280 TraceCheckUtils]: 21: Hoare triple {376#false} assume true; {376#false} is VALID [2020-07-08 12:14:06,947 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {376#false} {379#(<= 4 main_~x~0)} #51#return; {376#false} is VALID [2020-07-08 12:14:06,947 INFO L280 TraceCheckUtils]: 23: Hoare triple {376#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {376#false} is VALID [2020-07-08 12:14:06,947 INFO L280 TraceCheckUtils]: 24: Hoare triple {376#false} assume 3 == ~result~0; {376#false} is VALID [2020-07-08 12:14:06,948 INFO L280 TraceCheckUtils]: 25: Hoare triple {376#false} assume !false; {376#false} is VALID [2020-07-08 12:14:06,949 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-08 12:14:06,950 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [988389107] [2020-07-08 12:14:06,950 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [95451427] [2020-07-08 12:14:06,950 INFO L94 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-08 12:14:06,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:06,987 INFO L264 TraceCheckSpWp]: Trace formula consists of 60 conjuncts, 6 conjunts are in the unsatisfiable core [2020-07-08 12:14:06,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:07,004 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-08 12:14:07,171 INFO L263 TraceCheckUtils]: 0: Hoare triple {375#true} call ULTIMATE.init(); {375#true} is VALID [2020-07-08 12:14:07,171 INFO L280 TraceCheckUtils]: 1: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-08 12:14:07,172 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {375#true} {375#true} #47#return; {375#true} is VALID [2020-07-08 12:14:07,172 INFO L263 TraceCheckUtils]: 3: Hoare triple {375#true} call #t~ret5 := main(); {375#true} is VALID [2020-07-08 12:14:07,174 INFO L280 TraceCheckUtils]: 4: Hoare triple {375#true} ~x~0 := 4; {379#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:07,174 INFO L263 TraceCheckUtils]: 5: Hoare triple {379#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {375#true} is VALID [2020-07-08 12:14:07,175 INFO L280 TraceCheckUtils]: 6: Hoare triple {375#true} ~n := #in~n; {430#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:07,176 INFO L280 TraceCheckUtils]: 7: Hoare triple {430#(<= |fibo1_#in~n| fibo1_~n)} assume !(~n < 1); {430#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:07,177 INFO L280 TraceCheckUtils]: 8: Hoare triple {430#(<= |fibo1_#in~n| fibo1_~n)} assume !(1 == ~n); {430#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:07,178 INFO L263 TraceCheckUtils]: 9: Hoare triple {430#(<= |fibo1_#in~n| fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {375#true} is VALID [2020-07-08 12:14:07,179 INFO L280 TraceCheckUtils]: 10: Hoare triple {375#true} ~n := #in~n; {443#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:07,180 INFO L280 TraceCheckUtils]: 11: Hoare triple {443#(<= |fibo2_#in~n| fibo2_~n)} assume ~n < 1;#res := 0; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:07,181 INFO L280 TraceCheckUtils]: 12: Hoare triple {408#(<= |fibo2_#in~n| 0)} assume true; {408#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:07,183 INFO L275 TraceCheckUtils]: 13: Hoare quadruple {408#(<= |fibo2_#in~n| 0)} {430#(<= |fibo1_#in~n| fibo1_~n)} #57#return; {453#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:07,184 INFO L280 TraceCheckUtils]: 14: Hoare triple {453#(<= |fibo1_#in~n| 1)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {453#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:07,185 INFO L263 TraceCheckUtils]: 15: Hoare triple {453#(<= |fibo1_#in~n| 1)} call #t~ret1 := fibo2(~n - 2); {375#true} is VALID [2020-07-08 12:14:07,185 INFO L280 TraceCheckUtils]: 16: Hoare triple {375#true} ~n := #in~n; {375#true} is VALID [2020-07-08 12:14:07,185 INFO L280 TraceCheckUtils]: 17: Hoare triple {375#true} assume ~n < 1;#res := 0; {375#true} is VALID [2020-07-08 12:14:07,186 INFO L280 TraceCheckUtils]: 18: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-08 12:14:07,187 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {375#true} {453#(<= |fibo1_#in~n| 1)} #59#return; {453#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:07,188 INFO L280 TraceCheckUtils]: 20: Hoare triple {453#(<= |fibo1_#in~n| 1)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {453#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:07,189 INFO L280 TraceCheckUtils]: 21: Hoare triple {453#(<= |fibo1_#in~n| 1)} assume true; {453#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:07,191 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {453#(<= |fibo1_#in~n| 1)} {379#(<= 4 main_~x~0)} #51#return; {376#false} is VALID [2020-07-08 12:14:07,192 INFO L280 TraceCheckUtils]: 23: Hoare triple {376#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {376#false} is VALID [2020-07-08 12:14:07,192 INFO L280 TraceCheckUtils]: 24: Hoare triple {376#false} assume 3 == ~result~0; {376#false} is VALID [2020-07-08 12:14:07,192 INFO L280 TraceCheckUtils]: 25: Hoare triple {376#false} assume !false; {376#false} is VALID [2020-07-08 12:14:07,195 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-08 12:14:07,195 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-08 12:14:07,195 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2020-07-08 12:14:07,196 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1808193802] [2020-07-08 12:14:07,197 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 26 [2020-07-08 12:14:07,198 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:07,198 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-08 12:14:07,257 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:07,258 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-08 12:14:07,258 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:07,259 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-08 12:14:07,259 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2020-07-08 12:14:07,259 INFO L87 Difference]: Start difference. First operand 30 states and 37 transitions. Second operand 10 states. [2020-07-08 12:14:07,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:07,961 INFO L93 Difference]: Finished difference Result 58 states and 78 transitions. [2020-07-08 12:14:07,961 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2020-07-08 12:14:07,961 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 26 [2020-07-08 12:14:07,962 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:07,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-08 12:14:07,967 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 75 transitions. [2020-07-08 12:14:07,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-08 12:14:07,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 75 transitions. [2020-07-08 12:14:07,971 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 75 transitions. [2020-07-08 12:14:08,074 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:08,077 INFO L225 Difference]: With dead ends: 58 [2020-07-08 12:14:08,077 INFO L226 Difference]: Without dead ends: 34 [2020-07-08 12:14:08,078 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=165, Unknown=0, NotChecked=0, Total=210 [2020-07-08 12:14:08,079 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2020-07-08 12:14:08,100 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 32. [2020-07-08 12:14:08,100 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:08,100 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 32 states. [2020-07-08 12:14:08,101 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 32 states. [2020-07-08 12:14:08,101 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 32 states. [2020-07-08 12:14:08,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:08,105 INFO L93 Difference]: Finished difference Result 34 states and 42 transitions. [2020-07-08 12:14:08,105 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 42 transitions. [2020-07-08 12:14:08,106 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:08,106 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:08,107 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 34 states. [2020-07-08 12:14:08,107 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 34 states. [2020-07-08 12:14:08,110 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:08,111 INFO L93 Difference]: Finished difference Result 34 states and 42 transitions. [2020-07-08 12:14:08,111 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 42 transitions. [2020-07-08 12:14:08,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:08,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:08,112 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:08,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:08,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2020-07-08 12:14:08,115 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 39 transitions. [2020-07-08 12:14:08,116 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 39 transitions. Word has length 26 [2020-07-08 12:14:08,116 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:08,116 INFO L479 AbstractCegarLoop]: Abstraction has 32 states and 39 transitions. [2020-07-08 12:14:08,117 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-08 12:14:08,117 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2020-07-08 12:14:08,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2020-07-08 12:14:08,118 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:08,119 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:08,332 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2020-07-08 12:14:08,333 INFO L427 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:08,333 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:08,334 INFO L82 PathProgramCache]: Analyzing trace with hash 746633022, now seen corresponding path program 1 times [2020-07-08 12:14:08,334 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:08,335 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1629299300] [2020-07-08 12:14:08,335 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:08,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:08,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:08,377 INFO L280 TraceCheckUtils]: 0: Hoare triple {685#true} assume true; {685#true} is VALID [2020-07-08 12:14:08,378 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {685#true} {685#true} #47#return; {685#true} is VALID [2020-07-08 12:14:08,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:08,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:08,479 INFO L280 TraceCheckUtils]: 0: Hoare triple {685#true} ~n := #in~n; {720#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:08,480 INFO L280 TraceCheckUtils]: 1: Hoare triple {720#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {720#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:08,481 INFO L280 TraceCheckUtils]: 2: Hoare triple {720#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,482 INFO L280 TraceCheckUtils]: 3: Hoare triple {721#(<= |fibo2_#in~n| 1)} assume true; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,484 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {721#(<= |fibo2_#in~n| 1)} {708#(= fibo1_~n |fibo1_#in~n|)} #57#return; {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:08,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:08,494 INFO L280 TraceCheckUtils]: 0: Hoare triple {685#true} ~n := #in~n; {685#true} is VALID [2020-07-08 12:14:08,495 INFO L280 TraceCheckUtils]: 1: Hoare triple {685#true} assume ~n < 1;#res := 0; {685#true} is VALID [2020-07-08 12:14:08,495 INFO L280 TraceCheckUtils]: 2: Hoare triple {685#true} assume true; {685#true} is VALID [2020-07-08 12:14:08,497 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {685#true} {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,497 INFO L280 TraceCheckUtils]: 0: Hoare triple {685#true} ~n := #in~n; {708#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:08,498 INFO L280 TraceCheckUtils]: 1: Hoare triple {708#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {708#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:08,499 INFO L280 TraceCheckUtils]: 2: Hoare triple {708#(= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {708#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:08,499 INFO L263 TraceCheckUtils]: 3: Hoare triple {708#(= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {685#true} is VALID [2020-07-08 12:14:08,500 INFO L280 TraceCheckUtils]: 4: Hoare triple {685#true} ~n := #in~n; {720#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:08,501 INFO L280 TraceCheckUtils]: 5: Hoare triple {720#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {720#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:08,501 INFO L280 TraceCheckUtils]: 6: Hoare triple {720#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,502 INFO L280 TraceCheckUtils]: 7: Hoare triple {721#(<= |fibo2_#in~n| 1)} assume true; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,504 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {721#(<= |fibo2_#in~n| 1)} {708#(= fibo1_~n |fibo1_#in~n|)} #57#return; {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:08,505 INFO L280 TraceCheckUtils]: 9: Hoare triple {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:08,505 INFO L263 TraceCheckUtils]: 10: Hoare triple {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {685#true} is VALID [2020-07-08 12:14:08,506 INFO L280 TraceCheckUtils]: 11: Hoare triple {685#true} ~n := #in~n; {685#true} is VALID [2020-07-08 12:14:08,506 INFO L280 TraceCheckUtils]: 12: Hoare triple {685#true} assume ~n < 1;#res := 0; {685#true} is VALID [2020-07-08 12:14:08,506 INFO L280 TraceCheckUtils]: 13: Hoare triple {685#true} assume true; {685#true} is VALID [2020-07-08 12:14:08,508 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {685#true} {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,508 INFO L280 TraceCheckUtils]: 15: Hoare triple {719#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,509 INFO L280 TraceCheckUtils]: 16: Hoare triple {719#(<= |fibo1_#in~n| 2)} assume true; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,510 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {719#(<= |fibo1_#in~n| 2)} {689#(<= 4 main_~x~0)} #51#return; {686#false} is VALID [2020-07-08 12:14:08,511 INFO L263 TraceCheckUtils]: 0: Hoare triple {685#true} call ULTIMATE.init(); {685#true} is VALID [2020-07-08 12:14:08,512 INFO L280 TraceCheckUtils]: 1: Hoare triple {685#true} assume true; {685#true} is VALID [2020-07-08 12:14:08,512 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {685#true} {685#true} #47#return; {685#true} is VALID [2020-07-08 12:14:08,512 INFO L263 TraceCheckUtils]: 3: Hoare triple {685#true} call #t~ret5 := main(); {685#true} is VALID [2020-07-08 12:14:08,513 INFO L280 TraceCheckUtils]: 4: Hoare triple {685#true} ~x~0 := 4; {689#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:08,514 INFO L263 TraceCheckUtils]: 5: Hoare triple {689#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {685#true} is VALID [2020-07-08 12:14:08,514 INFO L280 TraceCheckUtils]: 6: Hoare triple {685#true} ~n := #in~n; {708#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:08,515 INFO L280 TraceCheckUtils]: 7: Hoare triple {708#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {708#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:08,516 INFO L280 TraceCheckUtils]: 8: Hoare triple {708#(= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {708#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:08,516 INFO L263 TraceCheckUtils]: 9: Hoare triple {708#(= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {685#true} is VALID [2020-07-08 12:14:08,517 INFO L280 TraceCheckUtils]: 10: Hoare triple {685#true} ~n := #in~n; {720#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:08,517 INFO L280 TraceCheckUtils]: 11: Hoare triple {720#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {720#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:08,518 INFO L280 TraceCheckUtils]: 12: Hoare triple {720#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,519 INFO L280 TraceCheckUtils]: 13: Hoare triple {721#(<= |fibo2_#in~n| 1)} assume true; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,520 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {721#(<= |fibo2_#in~n| 1)} {708#(= fibo1_~n |fibo1_#in~n|)} #57#return; {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:08,521 INFO L280 TraceCheckUtils]: 15: Hoare triple {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:08,521 INFO L263 TraceCheckUtils]: 16: Hoare triple {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {685#true} is VALID [2020-07-08 12:14:08,522 INFO L280 TraceCheckUtils]: 17: Hoare triple {685#true} ~n := #in~n; {685#true} is VALID [2020-07-08 12:14:08,522 INFO L280 TraceCheckUtils]: 18: Hoare triple {685#true} assume ~n < 1;#res := 0; {685#true} is VALID [2020-07-08 12:14:08,522 INFO L280 TraceCheckUtils]: 19: Hoare triple {685#true} assume true; {685#true} is VALID [2020-07-08 12:14:08,524 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {685#true} {714#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,525 INFO L280 TraceCheckUtils]: 21: Hoare triple {719#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,525 INFO L280 TraceCheckUtils]: 22: Hoare triple {719#(<= |fibo1_#in~n| 2)} assume true; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,527 INFO L275 TraceCheckUtils]: 23: Hoare quadruple {719#(<= |fibo1_#in~n| 2)} {689#(<= 4 main_~x~0)} #51#return; {686#false} is VALID [2020-07-08 12:14:08,527 INFO L280 TraceCheckUtils]: 24: Hoare triple {686#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {686#false} is VALID [2020-07-08 12:14:08,527 INFO L280 TraceCheckUtils]: 25: Hoare triple {686#false} assume 3 == ~result~0; {686#false} is VALID [2020-07-08 12:14:08,528 INFO L280 TraceCheckUtils]: 26: Hoare triple {686#false} assume !false; {686#false} is VALID [2020-07-08 12:14:08,529 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-08 12:14:08,530 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1629299300] [2020-07-08 12:14:08,530 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1715150671] [2020-07-08 12:14:08,530 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:08,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:08,560 INFO L264 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 6 conjunts are in the unsatisfiable core [2020-07-08 12:14:08,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:08,572 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-08 12:14:08,698 INFO L263 TraceCheckUtils]: 0: Hoare triple {685#true} call ULTIMATE.init(); {685#true} is VALID [2020-07-08 12:14:08,699 INFO L280 TraceCheckUtils]: 1: Hoare triple {685#true} assume true; {685#true} is VALID [2020-07-08 12:14:08,699 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {685#true} {685#true} #47#return; {685#true} is VALID [2020-07-08 12:14:08,699 INFO L263 TraceCheckUtils]: 3: Hoare triple {685#true} call #t~ret5 := main(); {685#true} is VALID [2020-07-08 12:14:08,700 INFO L280 TraceCheckUtils]: 4: Hoare triple {685#true} ~x~0 := 4; {689#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:08,700 INFO L263 TraceCheckUtils]: 5: Hoare triple {689#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {685#true} is VALID [2020-07-08 12:14:08,701 INFO L280 TraceCheckUtils]: 6: Hoare triple {685#true} ~n := #in~n; {743#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:08,702 INFO L280 TraceCheckUtils]: 7: Hoare triple {743#(<= |fibo1_#in~n| fibo1_~n)} assume !(~n < 1); {743#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:08,703 INFO L280 TraceCheckUtils]: 8: Hoare triple {743#(<= |fibo1_#in~n| fibo1_~n)} assume !(1 == ~n); {743#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:08,703 INFO L263 TraceCheckUtils]: 9: Hoare triple {743#(<= |fibo1_#in~n| fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {685#true} is VALID [2020-07-08 12:14:08,703 INFO L280 TraceCheckUtils]: 10: Hoare triple {685#true} ~n := #in~n; {756#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:08,704 INFO L280 TraceCheckUtils]: 11: Hoare triple {756#(<= |fibo2_#in~n| fibo2_~n)} assume !(~n < 1); {756#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:08,705 INFO L280 TraceCheckUtils]: 12: Hoare triple {756#(<= |fibo2_#in~n| fibo2_~n)} assume 1 == ~n;#res := 1; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,705 INFO L280 TraceCheckUtils]: 13: Hoare triple {721#(<= |fibo2_#in~n| 1)} assume true; {721#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:08,707 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {721#(<= |fibo2_#in~n| 1)} {743#(<= |fibo1_#in~n| fibo1_~n)} #57#return; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,708 INFO L280 TraceCheckUtils]: 15: Hoare triple {719#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,708 INFO L263 TraceCheckUtils]: 16: Hoare triple {719#(<= |fibo1_#in~n| 2)} call #t~ret1 := fibo2(~n - 2); {685#true} is VALID [2020-07-08 12:14:08,708 INFO L280 TraceCheckUtils]: 17: Hoare triple {685#true} ~n := #in~n; {685#true} is VALID [2020-07-08 12:14:08,709 INFO L280 TraceCheckUtils]: 18: Hoare triple {685#true} assume ~n < 1;#res := 0; {685#true} is VALID [2020-07-08 12:14:08,709 INFO L280 TraceCheckUtils]: 19: Hoare triple {685#true} assume true; {685#true} is VALID [2020-07-08 12:14:08,710 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {685#true} {719#(<= |fibo1_#in~n| 2)} #59#return; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,711 INFO L280 TraceCheckUtils]: 21: Hoare triple {719#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,711 INFO L280 TraceCheckUtils]: 22: Hoare triple {719#(<= |fibo1_#in~n| 2)} assume true; {719#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:08,713 INFO L275 TraceCheckUtils]: 23: Hoare quadruple {719#(<= |fibo1_#in~n| 2)} {689#(<= 4 main_~x~0)} #51#return; {686#false} is VALID [2020-07-08 12:14:08,713 INFO L280 TraceCheckUtils]: 24: Hoare triple {686#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {686#false} is VALID [2020-07-08 12:14:08,713 INFO L280 TraceCheckUtils]: 25: Hoare triple {686#false} assume 3 == ~result~0; {686#false} is VALID [2020-07-08 12:14:08,714 INFO L280 TraceCheckUtils]: 26: Hoare triple {686#false} assume !false; {686#false} is VALID [2020-07-08 12:14:08,715 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-08 12:14:08,715 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-08 12:14:08,715 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 10 [2020-07-08 12:14:08,716 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1882671936] [2020-07-08 12:14:08,716 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 27 [2020-07-08 12:14:08,717 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:08,717 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-08 12:14:08,763 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:08,763 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-08 12:14:08,764 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:08,764 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-08 12:14:08,764 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2020-07-08 12:14:08,765 INFO L87 Difference]: Start difference. First operand 32 states and 39 transitions. Second operand 10 states. [2020-07-08 12:14:09,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:09,426 INFO L93 Difference]: Finished difference Result 54 states and 74 transitions. [2020-07-08 12:14:09,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2020-07-08 12:14:09,426 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 27 [2020-07-08 12:14:09,427 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:09,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-08 12:14:09,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 66 transitions. [2020-07-08 12:14:09,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-08 12:14:09,439 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 66 transitions. [2020-07-08 12:14:09,439 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 66 transitions. [2020-07-08 12:14:09,541 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:09,546 INFO L225 Difference]: With dead ends: 54 [2020-07-08 12:14:09,546 INFO L226 Difference]: Without dead ends: 50 [2020-07-08 12:14:09,547 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2020-07-08 12:14:09,548 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2020-07-08 12:14:09,571 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 48. [2020-07-08 12:14:09,572 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:09,572 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand 48 states. [2020-07-08 12:14:09,572 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 48 states. [2020-07-08 12:14:09,572 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 48 states. [2020-07-08 12:14:09,589 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:09,589 INFO L93 Difference]: Finished difference Result 50 states and 70 transitions. [2020-07-08 12:14:09,589 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 70 transitions. [2020-07-08 12:14:09,591 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:09,591 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:09,591 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand 50 states. [2020-07-08 12:14:09,591 INFO L87 Difference]: Start difference. First operand 48 states. Second operand 50 states. [2020-07-08 12:14:09,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:09,596 INFO L93 Difference]: Finished difference Result 50 states and 70 transitions. [2020-07-08 12:14:09,596 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 70 transitions. [2020-07-08 12:14:09,598 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:09,598 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:09,598 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:09,598 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:09,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2020-07-08 12:14:09,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 65 transitions. [2020-07-08 12:14:09,603 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 65 transitions. Word has length 27 [2020-07-08 12:14:09,603 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:09,603 INFO L479 AbstractCegarLoop]: Abstraction has 48 states and 65 transitions. [2020-07-08 12:14:09,604 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-08 12:14:09,604 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 65 transitions. [2020-07-08 12:14:09,605 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2020-07-08 12:14:09,605 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:09,606 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:09,821 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,3 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:09,822 INFO L427 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:09,822 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:09,823 INFO L82 PathProgramCache]: Analyzing trace with hash 986908919, now seen corresponding path program 1 times [2020-07-08 12:14:09,823 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:09,824 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1925424311] [2020-07-08 12:14:09,824 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:09,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:09,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:09,880 INFO L280 TraceCheckUtils]: 0: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:09,881 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {1043#true} {1043#true} #47#return; {1043#true} is VALID [2020-07-08 12:14:09,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:09,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:09,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:09,969 INFO L280 TraceCheckUtils]: 0: Hoare triple {1043#true} ~n := #in~n; {1108#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:09,971 INFO L280 TraceCheckUtils]: 1: Hoare triple {1108#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:09,971 INFO L280 TraceCheckUtils]: 2: Hoare triple {1109#(<= |fibo1_#in~n| 0)} assume true; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:09,973 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1109#(<= |fibo1_#in~n| 0)} {1099#(< 1 fibo2_~n)} #53#return; {1044#false} is VALID [2020-07-08 12:14:09,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:09,978 INFO L280 TraceCheckUtils]: 0: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:09,979 INFO L280 TraceCheckUtils]: 1: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:09,979 INFO L280 TraceCheckUtils]: 2: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:09,979 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1043#true} {1044#false} #55#return; {1044#false} is VALID [2020-07-08 12:14:09,980 INFO L280 TraceCheckUtils]: 0: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:09,981 INFO L280 TraceCheckUtils]: 1: Hoare triple {1043#true} assume !(~n < 1); {1098#(< 0 fibo2_~n)} is VALID [2020-07-08 12:14:09,982 INFO L280 TraceCheckUtils]: 2: Hoare triple {1098#(< 0 fibo2_~n)} assume !(1 == ~n); {1099#(< 1 fibo2_~n)} is VALID [2020-07-08 12:14:09,982 INFO L263 TraceCheckUtils]: 3: Hoare triple {1099#(< 1 fibo2_~n)} call #t~ret2 := fibo1(~n - 1); {1043#true} is VALID [2020-07-08 12:14:09,983 INFO L280 TraceCheckUtils]: 4: Hoare triple {1043#true} ~n := #in~n; {1108#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:09,983 INFO L280 TraceCheckUtils]: 5: Hoare triple {1108#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:09,984 INFO L280 TraceCheckUtils]: 6: Hoare triple {1109#(<= |fibo1_#in~n| 0)} assume true; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:09,985 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {1109#(<= |fibo1_#in~n| 0)} {1099#(< 1 fibo2_~n)} #53#return; {1044#false} is VALID [2020-07-08 12:14:09,986 INFO L280 TraceCheckUtils]: 8: Hoare triple {1044#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1044#false} is VALID [2020-07-08 12:14:09,986 INFO L263 TraceCheckUtils]: 9: Hoare triple {1044#false} call #t~ret3 := fibo1(~n - 2); {1043#true} is VALID [2020-07-08 12:14:09,986 INFO L280 TraceCheckUtils]: 10: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:09,987 INFO L280 TraceCheckUtils]: 11: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:09,987 INFO L280 TraceCheckUtils]: 12: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:09,987 INFO L275 TraceCheckUtils]: 13: Hoare quadruple {1043#true} {1044#false} #55#return; {1044#false} is VALID [2020-07-08 12:14:09,988 INFO L280 TraceCheckUtils]: 14: Hoare triple {1044#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1044#false} is VALID [2020-07-08 12:14:09,988 INFO L280 TraceCheckUtils]: 15: Hoare triple {1044#false} assume true; {1044#false} is VALID [2020-07-08 12:14:09,988 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {1044#false} {1043#true} #57#return; {1044#false} is VALID [2020-07-08 12:14:09,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:09,994 INFO L280 TraceCheckUtils]: 0: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:09,995 INFO L280 TraceCheckUtils]: 1: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:09,995 INFO L280 TraceCheckUtils]: 2: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:09,995 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1043#true} {1044#false} #59#return; {1044#false} is VALID [2020-07-08 12:14:09,996 INFO L280 TraceCheckUtils]: 0: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:09,996 INFO L280 TraceCheckUtils]: 1: Hoare triple {1043#true} assume !(~n < 1); {1043#true} is VALID [2020-07-08 12:14:09,996 INFO L280 TraceCheckUtils]: 2: Hoare triple {1043#true} assume !(1 == ~n); {1043#true} is VALID [2020-07-08 12:14:09,996 INFO L263 TraceCheckUtils]: 3: Hoare triple {1043#true} call #t~ret0 := fibo2(~n - 1); {1043#true} is VALID [2020-07-08 12:14:09,997 INFO L280 TraceCheckUtils]: 4: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:09,998 INFO L280 TraceCheckUtils]: 5: Hoare triple {1043#true} assume !(~n < 1); {1098#(< 0 fibo2_~n)} is VALID [2020-07-08 12:14:09,998 INFO L280 TraceCheckUtils]: 6: Hoare triple {1098#(< 0 fibo2_~n)} assume !(1 == ~n); {1099#(< 1 fibo2_~n)} is VALID [2020-07-08 12:14:09,999 INFO L263 TraceCheckUtils]: 7: Hoare triple {1099#(< 1 fibo2_~n)} call #t~ret2 := fibo1(~n - 1); {1043#true} is VALID [2020-07-08 12:14:09,999 INFO L280 TraceCheckUtils]: 8: Hoare triple {1043#true} ~n := #in~n; {1108#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:10,000 INFO L280 TraceCheckUtils]: 9: Hoare triple {1108#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:10,001 INFO L280 TraceCheckUtils]: 10: Hoare triple {1109#(<= |fibo1_#in~n| 0)} assume true; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:10,002 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {1109#(<= |fibo1_#in~n| 0)} {1099#(< 1 fibo2_~n)} #53#return; {1044#false} is VALID [2020-07-08 12:14:10,003 INFO L280 TraceCheckUtils]: 12: Hoare triple {1044#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1044#false} is VALID [2020-07-08 12:14:10,003 INFO L263 TraceCheckUtils]: 13: Hoare triple {1044#false} call #t~ret3 := fibo1(~n - 2); {1043#true} is VALID [2020-07-08 12:14:10,003 INFO L280 TraceCheckUtils]: 14: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,003 INFO L280 TraceCheckUtils]: 15: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:10,004 INFO L280 TraceCheckUtils]: 16: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,004 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {1043#true} {1044#false} #55#return; {1044#false} is VALID [2020-07-08 12:14:10,004 INFO L280 TraceCheckUtils]: 18: Hoare triple {1044#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1044#false} is VALID [2020-07-08 12:14:10,004 INFO L280 TraceCheckUtils]: 19: Hoare triple {1044#false} assume true; {1044#false} is VALID [2020-07-08 12:14:10,005 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {1044#false} {1043#true} #57#return; {1044#false} is VALID [2020-07-08 12:14:10,005 INFO L280 TraceCheckUtils]: 21: Hoare triple {1044#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {1044#false} is VALID [2020-07-08 12:14:10,005 INFO L263 TraceCheckUtils]: 22: Hoare triple {1044#false} call #t~ret1 := fibo2(~n - 2); {1043#true} is VALID [2020-07-08 12:14:10,005 INFO L280 TraceCheckUtils]: 23: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,006 INFO L280 TraceCheckUtils]: 24: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:10,006 INFO L280 TraceCheckUtils]: 25: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,006 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {1043#true} {1044#false} #59#return; {1044#false} is VALID [2020-07-08 12:14:10,006 INFO L280 TraceCheckUtils]: 27: Hoare triple {1044#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {1044#false} is VALID [2020-07-08 12:14:10,007 INFO L280 TraceCheckUtils]: 28: Hoare triple {1044#false} assume true; {1044#false} is VALID [2020-07-08 12:14:10,007 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {1044#false} {1043#true} #51#return; {1044#false} is VALID [2020-07-08 12:14:10,008 INFO L263 TraceCheckUtils]: 0: Hoare triple {1043#true} call ULTIMATE.init(); {1043#true} is VALID [2020-07-08 12:14:10,008 INFO L280 TraceCheckUtils]: 1: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,008 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1043#true} {1043#true} #47#return; {1043#true} is VALID [2020-07-08 12:14:10,009 INFO L263 TraceCheckUtils]: 3: Hoare triple {1043#true} call #t~ret5 := main(); {1043#true} is VALID [2020-07-08 12:14:10,009 INFO L280 TraceCheckUtils]: 4: Hoare triple {1043#true} ~x~0 := 4; {1043#true} is VALID [2020-07-08 12:14:10,009 INFO L263 TraceCheckUtils]: 5: Hoare triple {1043#true} call #t~ret4 := fibo1(~x~0); {1043#true} is VALID [2020-07-08 12:14:10,009 INFO L280 TraceCheckUtils]: 6: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,010 INFO L280 TraceCheckUtils]: 7: Hoare triple {1043#true} assume !(~n < 1); {1043#true} is VALID [2020-07-08 12:14:10,010 INFO L280 TraceCheckUtils]: 8: Hoare triple {1043#true} assume !(1 == ~n); {1043#true} is VALID [2020-07-08 12:14:10,010 INFO L263 TraceCheckUtils]: 9: Hoare triple {1043#true} call #t~ret0 := fibo2(~n - 1); {1043#true} is VALID [2020-07-08 12:14:10,010 INFO L280 TraceCheckUtils]: 10: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,011 INFO L280 TraceCheckUtils]: 11: Hoare triple {1043#true} assume !(~n < 1); {1098#(< 0 fibo2_~n)} is VALID [2020-07-08 12:14:10,012 INFO L280 TraceCheckUtils]: 12: Hoare triple {1098#(< 0 fibo2_~n)} assume !(1 == ~n); {1099#(< 1 fibo2_~n)} is VALID [2020-07-08 12:14:10,013 INFO L263 TraceCheckUtils]: 13: Hoare triple {1099#(< 1 fibo2_~n)} call #t~ret2 := fibo1(~n - 1); {1043#true} is VALID [2020-07-08 12:14:10,013 INFO L280 TraceCheckUtils]: 14: Hoare triple {1043#true} ~n := #in~n; {1108#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:10,014 INFO L280 TraceCheckUtils]: 15: Hoare triple {1108#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:10,015 INFO L280 TraceCheckUtils]: 16: Hoare triple {1109#(<= |fibo1_#in~n| 0)} assume true; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:10,017 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {1109#(<= |fibo1_#in~n| 0)} {1099#(< 1 fibo2_~n)} #53#return; {1044#false} is VALID [2020-07-08 12:14:10,017 INFO L280 TraceCheckUtils]: 18: Hoare triple {1044#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1044#false} is VALID [2020-07-08 12:14:10,017 INFO L263 TraceCheckUtils]: 19: Hoare triple {1044#false} call #t~ret3 := fibo1(~n - 2); {1043#true} is VALID [2020-07-08 12:14:10,018 INFO L280 TraceCheckUtils]: 20: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,018 INFO L280 TraceCheckUtils]: 21: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:10,018 INFO L280 TraceCheckUtils]: 22: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,018 INFO L275 TraceCheckUtils]: 23: Hoare quadruple {1043#true} {1044#false} #55#return; {1044#false} is VALID [2020-07-08 12:14:10,019 INFO L280 TraceCheckUtils]: 24: Hoare triple {1044#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1044#false} is VALID [2020-07-08 12:14:10,019 INFO L280 TraceCheckUtils]: 25: Hoare triple {1044#false} assume true; {1044#false} is VALID [2020-07-08 12:14:10,019 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {1044#false} {1043#true} #57#return; {1044#false} is VALID [2020-07-08 12:14:10,019 INFO L280 TraceCheckUtils]: 27: Hoare triple {1044#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {1044#false} is VALID [2020-07-08 12:14:10,020 INFO L263 TraceCheckUtils]: 28: Hoare triple {1044#false} call #t~ret1 := fibo2(~n - 2); {1043#true} is VALID [2020-07-08 12:14:10,020 INFO L280 TraceCheckUtils]: 29: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,020 INFO L280 TraceCheckUtils]: 30: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:10,020 INFO L280 TraceCheckUtils]: 31: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,020 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {1043#true} {1044#false} #59#return; {1044#false} is VALID [2020-07-08 12:14:10,021 INFO L280 TraceCheckUtils]: 33: Hoare triple {1044#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {1044#false} is VALID [2020-07-08 12:14:10,021 INFO L280 TraceCheckUtils]: 34: Hoare triple {1044#false} assume true; {1044#false} is VALID [2020-07-08 12:14:10,021 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {1044#false} {1043#true} #51#return; {1044#false} is VALID [2020-07-08 12:14:10,021 INFO L280 TraceCheckUtils]: 36: Hoare triple {1044#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {1044#false} is VALID [2020-07-08 12:14:10,022 INFO L280 TraceCheckUtils]: 37: Hoare triple {1044#false} assume 3 == ~result~0; {1044#false} is VALID [2020-07-08 12:14:10,022 INFO L280 TraceCheckUtils]: 38: Hoare triple {1044#false} assume !false; {1044#false} is VALID [2020-07-08 12:14:10,023 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2020-07-08 12:14:10,024 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1925424311] [2020-07-08 12:14:10,024 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2097796842] [2020-07-08 12:14:10,024 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:10,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:10,058 INFO L264 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 8 conjunts are in the unsatisfiable core [2020-07-08 12:14:10,069 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:10,072 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-08 12:14:10,265 INFO L263 TraceCheckUtils]: 0: Hoare triple {1043#true} call ULTIMATE.init(); {1043#true} is VALID [2020-07-08 12:14:10,265 INFO L280 TraceCheckUtils]: 1: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,266 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1043#true} {1043#true} #47#return; {1043#true} is VALID [2020-07-08 12:14:10,266 INFO L263 TraceCheckUtils]: 3: Hoare triple {1043#true} call #t~ret5 := main(); {1043#true} is VALID [2020-07-08 12:14:10,267 INFO L280 TraceCheckUtils]: 4: Hoare triple {1043#true} ~x~0 := 4; {1125#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:10,267 INFO L263 TraceCheckUtils]: 5: Hoare triple {1125#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {1043#true} is VALID [2020-07-08 12:14:10,267 INFO L280 TraceCheckUtils]: 6: Hoare triple {1043#true} ~n := #in~n; {1132#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:10,268 INFO L280 TraceCheckUtils]: 7: Hoare triple {1132#(<= |fibo1_#in~n| fibo1_~n)} assume !(~n < 1); {1132#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:10,268 INFO L280 TraceCheckUtils]: 8: Hoare triple {1132#(<= |fibo1_#in~n| fibo1_~n)} assume !(1 == ~n); {1132#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:10,268 INFO L263 TraceCheckUtils]: 9: Hoare triple {1132#(<= |fibo1_#in~n| fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {1043#true} is VALID [2020-07-08 12:14:10,269 INFO L280 TraceCheckUtils]: 10: Hoare triple {1043#true} ~n := #in~n; {1145#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:10,272 INFO L280 TraceCheckUtils]: 11: Hoare triple {1145#(<= |fibo2_#in~n| fibo2_~n)} assume !(~n < 1); {1145#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:10,274 INFO L280 TraceCheckUtils]: 12: Hoare triple {1145#(<= |fibo2_#in~n| fibo2_~n)} assume !(1 == ~n); {1145#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:10,275 INFO L263 TraceCheckUtils]: 13: Hoare triple {1145#(<= |fibo2_#in~n| fibo2_~n)} call #t~ret2 := fibo1(~n - 1); {1043#true} is VALID [2020-07-08 12:14:10,276 INFO L280 TraceCheckUtils]: 14: Hoare triple {1043#true} ~n := #in~n; {1132#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:10,276 INFO L280 TraceCheckUtils]: 15: Hoare triple {1132#(<= |fibo1_#in~n| fibo1_~n)} assume ~n < 1;#res := 0; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:10,277 INFO L280 TraceCheckUtils]: 16: Hoare triple {1109#(<= |fibo1_#in~n| 0)} assume true; {1109#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:10,278 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {1109#(<= |fibo1_#in~n| 0)} {1145#(<= |fibo2_#in~n| fibo2_~n)} #53#return; {1167#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:10,278 INFO L280 TraceCheckUtils]: 18: Hoare triple {1167#(<= |fibo2_#in~n| 1)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1167#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:10,278 INFO L263 TraceCheckUtils]: 19: Hoare triple {1167#(<= |fibo2_#in~n| 1)} call #t~ret3 := fibo1(~n - 2); {1043#true} is VALID [2020-07-08 12:14:10,279 INFO L280 TraceCheckUtils]: 20: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,279 INFO L280 TraceCheckUtils]: 21: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:10,279 INFO L280 TraceCheckUtils]: 22: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,280 INFO L275 TraceCheckUtils]: 23: Hoare quadruple {1043#true} {1167#(<= |fibo2_#in~n| 1)} #55#return; {1167#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:10,281 INFO L280 TraceCheckUtils]: 24: Hoare triple {1167#(<= |fibo2_#in~n| 1)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1167#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:10,282 INFO L280 TraceCheckUtils]: 25: Hoare triple {1167#(<= |fibo2_#in~n| 1)} assume true; {1167#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:10,283 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {1167#(<= |fibo2_#in~n| 1)} {1132#(<= |fibo1_#in~n| fibo1_~n)} #57#return; {1195#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:10,283 INFO L280 TraceCheckUtils]: 27: Hoare triple {1195#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {1195#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:10,283 INFO L263 TraceCheckUtils]: 28: Hoare triple {1195#(<= |fibo1_#in~n| 2)} call #t~ret1 := fibo2(~n - 2); {1043#true} is VALID [2020-07-08 12:14:10,284 INFO L280 TraceCheckUtils]: 29: Hoare triple {1043#true} ~n := #in~n; {1043#true} is VALID [2020-07-08 12:14:10,284 INFO L280 TraceCheckUtils]: 30: Hoare triple {1043#true} assume ~n < 1;#res := 0; {1043#true} is VALID [2020-07-08 12:14:10,284 INFO L280 TraceCheckUtils]: 31: Hoare triple {1043#true} assume true; {1043#true} is VALID [2020-07-08 12:14:10,286 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {1043#true} {1195#(<= |fibo1_#in~n| 2)} #59#return; {1195#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:10,294 INFO L280 TraceCheckUtils]: 33: Hoare triple {1195#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {1195#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:10,295 INFO L280 TraceCheckUtils]: 34: Hoare triple {1195#(<= |fibo1_#in~n| 2)} assume true; {1195#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:10,296 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {1195#(<= |fibo1_#in~n| 2)} {1125#(<= 4 main_~x~0)} #51#return; {1044#false} is VALID [2020-07-08 12:14:10,296 INFO L280 TraceCheckUtils]: 36: Hoare triple {1044#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {1044#false} is VALID [2020-07-08 12:14:10,296 INFO L280 TraceCheckUtils]: 37: Hoare triple {1044#false} assume 3 == ~result~0; {1044#false} is VALID [2020-07-08 12:14:10,296 INFO L280 TraceCheckUtils]: 38: Hoare triple {1044#false} assume !false; {1044#false} is VALID [2020-07-08 12:14:10,298 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 2 proven. 9 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2020-07-08 12:14:10,298 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-08 12:14:10,298 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 8] total 11 [2020-07-08 12:14:10,299 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1012142025] [2020-07-08 12:14:10,299 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 39 [2020-07-08 12:14:10,301 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:10,301 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2020-07-08 12:14:10,374 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:10,374 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2020-07-08 12:14:10,374 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:10,375 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2020-07-08 12:14:10,375 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2020-07-08 12:14:10,376 INFO L87 Difference]: Start difference. First operand 48 states and 65 transitions. Second operand 11 states. [2020-07-08 12:14:11,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:11,441 INFO L93 Difference]: Finished difference Result 108 states and 170 transitions. [2020-07-08 12:14:11,441 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-08 12:14:11,441 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 39 [2020-07-08 12:14:11,441 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:11,442 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-08 12:14:11,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 102 transitions. [2020-07-08 12:14:11,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-08 12:14:11,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 102 transitions. [2020-07-08 12:14:11,451 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 102 transitions. [2020-07-08 12:14:11,600 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:11,604 INFO L225 Difference]: With dead ends: 108 [2020-07-08 12:14:11,604 INFO L226 Difference]: Without dead ends: 66 [2020-07-08 12:14:11,606 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 53 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=65, Invalid=241, Unknown=0, NotChecked=0, Total=306 [2020-07-08 12:14:11,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2020-07-08 12:14:11,642 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 66. [2020-07-08 12:14:11,642 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:11,642 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand 66 states. [2020-07-08 12:14:11,642 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 66 states. [2020-07-08 12:14:11,643 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 66 states. [2020-07-08 12:14:11,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:11,649 INFO L93 Difference]: Finished difference Result 66 states and 95 transitions. [2020-07-08 12:14:11,649 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 95 transitions. [2020-07-08 12:14:11,650 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:11,650 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:11,650 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 66 states. [2020-07-08 12:14:11,651 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 66 states. [2020-07-08 12:14:11,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:11,656 INFO L93 Difference]: Finished difference Result 66 states and 95 transitions. [2020-07-08 12:14:11,656 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 95 transitions. [2020-07-08 12:14:11,657 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:11,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:11,658 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:11,658 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:11,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 66 states. [2020-07-08 12:14:11,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 95 transitions. [2020-07-08 12:14:11,663 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 95 transitions. Word has length 39 [2020-07-08 12:14:11,663 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:11,663 INFO L479 AbstractCegarLoop]: Abstraction has 66 states and 95 transitions. [2020-07-08 12:14:11,664 INFO L480 AbstractCegarLoop]: Interpolant automaton has 11 states. [2020-07-08 12:14:11,664 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 95 transitions. [2020-07-08 12:14:11,665 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2020-07-08 12:14:11,665 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:11,665 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:11,879 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:11,880 INFO L427 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:11,881 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:11,881 INFO L82 PathProgramCache]: Analyzing trace with hash -2100495745, now seen corresponding path program 1 times [2020-07-08 12:14:11,881 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:11,882 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1419789227] [2020-07-08 12:14:11,882 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:11,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:11,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:11,954 INFO L280 TraceCheckUtils]: 0: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:11,955 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {1609#true} {1609#true} #47#return; {1609#true} is VALID [2020-07-08 12:14:11,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:12,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:12,170 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:12,182 INFO L280 TraceCheckUtils]: 0: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,182 INFO L280 TraceCheckUtils]: 1: Hoare triple {1609#true} assume !(~n < 1); {1609#true} is VALID [2020-07-08 12:14:12,183 INFO L280 TraceCheckUtils]: 2: Hoare triple {1609#true} assume 1 == ~n;#res := 1; {1609#true} is VALID [2020-07-08 12:14:12,183 INFO L280 TraceCheckUtils]: 3: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,185 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #53#return; {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:12,193 INFO L280 TraceCheckUtils]: 0: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,193 INFO L280 TraceCheckUtils]: 1: Hoare triple {1609#true} assume ~n < 1;#res := 0; {1609#true} is VALID [2020-07-08 12:14:12,193 INFO L280 TraceCheckUtils]: 2: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,195 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #55#return; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,196 INFO L280 TraceCheckUtils]: 0: Hoare triple {1609#true} ~n := #in~n; {1668#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,197 INFO L280 TraceCheckUtils]: 1: Hoare triple {1668#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {1669#(and (< 0 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,198 INFO L280 TraceCheckUtils]: 2: Hoare triple {1669#(and (< 0 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} assume !(1 == ~n); {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,198 INFO L263 TraceCheckUtils]: 3: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} call #t~ret2 := fibo1(~n - 1); {1609#true} is VALID [2020-07-08 12:14:12,199 INFO L280 TraceCheckUtils]: 4: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,199 INFO L280 TraceCheckUtils]: 5: Hoare triple {1609#true} assume !(~n < 1); {1609#true} is VALID [2020-07-08 12:14:12,199 INFO L280 TraceCheckUtils]: 6: Hoare triple {1609#true} assume 1 == ~n;#res := 1; {1609#true} is VALID [2020-07-08 12:14:12,199 INFO L280 TraceCheckUtils]: 7: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,201 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #53#return; {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,202 INFO L280 TraceCheckUtils]: 9: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,202 INFO L263 TraceCheckUtils]: 10: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} call #t~ret3 := fibo1(~n - 2); {1609#true} is VALID [2020-07-08 12:14:12,202 INFO L280 TraceCheckUtils]: 11: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,203 INFO L280 TraceCheckUtils]: 12: Hoare triple {1609#true} assume ~n < 1;#res := 0; {1609#true} is VALID [2020-07-08 12:14:12,203 INFO L280 TraceCheckUtils]: 13: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,205 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #55#return; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,205 INFO L280 TraceCheckUtils]: 15: Hoare triple {1680#(<= 2 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,206 INFO L280 TraceCheckUtils]: 16: Hoare triple {1680#(<= 2 |fibo2_#in~n|)} assume true; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,208 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {1680#(<= 2 |fibo2_#in~n|)} {1609#true} #57#return; {1663#(<= 3 fibo1_~n)} is VALID [2020-07-08 12:14:12,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:12,231 INFO L280 TraceCheckUtils]: 0: Hoare triple {1609#true} ~n := #in~n; {1668#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,233 INFO L280 TraceCheckUtils]: 1: Hoare triple {1668#(= fibo2_~n |fibo2_#in~n|)} assume ~n < 1;#res := 0; {1681#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:12,233 INFO L280 TraceCheckUtils]: 2: Hoare triple {1681#(<= |fibo2_#in~n| 0)} assume true; {1681#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:12,235 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1681#(<= |fibo2_#in~n| 0)} {1663#(<= 3 fibo1_~n)} #59#return; {1610#false} is VALID [2020-07-08 12:14:12,235 INFO L280 TraceCheckUtils]: 0: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,235 INFO L280 TraceCheckUtils]: 1: Hoare triple {1609#true} assume !(~n < 1); {1609#true} is VALID [2020-07-08 12:14:12,236 INFO L280 TraceCheckUtils]: 2: Hoare triple {1609#true} assume !(1 == ~n); {1609#true} is VALID [2020-07-08 12:14:12,236 INFO L263 TraceCheckUtils]: 3: Hoare triple {1609#true} call #t~ret0 := fibo2(~n - 1); {1609#true} is VALID [2020-07-08 12:14:12,237 INFO L280 TraceCheckUtils]: 4: Hoare triple {1609#true} ~n := #in~n; {1668#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,238 INFO L280 TraceCheckUtils]: 5: Hoare triple {1668#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {1669#(and (< 0 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,239 INFO L280 TraceCheckUtils]: 6: Hoare triple {1669#(and (< 0 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} assume !(1 == ~n); {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,239 INFO L263 TraceCheckUtils]: 7: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} call #t~ret2 := fibo1(~n - 1); {1609#true} is VALID [2020-07-08 12:14:12,239 INFO L280 TraceCheckUtils]: 8: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,240 INFO L280 TraceCheckUtils]: 9: Hoare triple {1609#true} assume !(~n < 1); {1609#true} is VALID [2020-07-08 12:14:12,240 INFO L280 TraceCheckUtils]: 10: Hoare triple {1609#true} assume 1 == ~n;#res := 1; {1609#true} is VALID [2020-07-08 12:14:12,240 INFO L280 TraceCheckUtils]: 11: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,242 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #53#return; {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,243 INFO L280 TraceCheckUtils]: 13: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,243 INFO L263 TraceCheckUtils]: 14: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} call #t~ret3 := fibo1(~n - 2); {1609#true} is VALID [2020-07-08 12:14:12,243 INFO L280 TraceCheckUtils]: 15: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,243 INFO L280 TraceCheckUtils]: 16: Hoare triple {1609#true} assume ~n < 1;#res := 0; {1609#true} is VALID [2020-07-08 12:14:12,244 INFO L280 TraceCheckUtils]: 17: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,245 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #55#return; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,246 INFO L280 TraceCheckUtils]: 19: Hoare triple {1680#(<= 2 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,247 INFO L280 TraceCheckUtils]: 20: Hoare triple {1680#(<= 2 |fibo2_#in~n|)} assume true; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,248 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {1680#(<= 2 |fibo2_#in~n|)} {1609#true} #57#return; {1663#(<= 3 fibo1_~n)} is VALID [2020-07-08 12:14:12,249 INFO L280 TraceCheckUtils]: 22: Hoare triple {1663#(<= 3 fibo1_~n)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {1663#(<= 3 fibo1_~n)} is VALID [2020-07-08 12:14:12,249 INFO L263 TraceCheckUtils]: 23: Hoare triple {1663#(<= 3 fibo1_~n)} call #t~ret1 := fibo2(~n - 2); {1609#true} is VALID [2020-07-08 12:14:12,250 INFO L280 TraceCheckUtils]: 24: Hoare triple {1609#true} ~n := #in~n; {1668#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,251 INFO L280 TraceCheckUtils]: 25: Hoare triple {1668#(= fibo2_~n |fibo2_#in~n|)} assume ~n < 1;#res := 0; {1681#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:12,252 INFO L280 TraceCheckUtils]: 26: Hoare triple {1681#(<= |fibo2_#in~n| 0)} assume true; {1681#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:12,254 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {1681#(<= |fibo2_#in~n| 0)} {1663#(<= 3 fibo1_~n)} #59#return; {1610#false} is VALID [2020-07-08 12:14:12,254 INFO L280 TraceCheckUtils]: 28: Hoare triple {1610#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {1610#false} is VALID [2020-07-08 12:14:12,254 INFO L280 TraceCheckUtils]: 29: Hoare triple {1610#false} assume true; {1610#false} is VALID [2020-07-08 12:14:12,254 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {1610#false} {1613#(<= 4 main_~x~0)} #51#return; {1610#false} is VALID [2020-07-08 12:14:12,257 INFO L263 TraceCheckUtils]: 0: Hoare triple {1609#true} call ULTIMATE.init(); {1609#true} is VALID [2020-07-08 12:14:12,257 INFO L280 TraceCheckUtils]: 1: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,257 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1609#true} {1609#true} #47#return; {1609#true} is VALID [2020-07-08 12:14:12,257 INFO L263 TraceCheckUtils]: 3: Hoare triple {1609#true} call #t~ret5 := main(); {1609#true} is VALID [2020-07-08 12:14:12,259 INFO L280 TraceCheckUtils]: 4: Hoare triple {1609#true} ~x~0 := 4; {1613#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:12,259 INFO L263 TraceCheckUtils]: 5: Hoare triple {1613#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {1609#true} is VALID [2020-07-08 12:14:12,259 INFO L280 TraceCheckUtils]: 6: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,259 INFO L280 TraceCheckUtils]: 7: Hoare triple {1609#true} assume !(~n < 1); {1609#true} is VALID [2020-07-08 12:14:12,260 INFO L280 TraceCheckUtils]: 8: Hoare triple {1609#true} assume !(1 == ~n); {1609#true} is VALID [2020-07-08 12:14:12,260 INFO L263 TraceCheckUtils]: 9: Hoare triple {1609#true} call #t~ret0 := fibo2(~n - 1); {1609#true} is VALID [2020-07-08 12:14:12,260 INFO L280 TraceCheckUtils]: 10: Hoare triple {1609#true} ~n := #in~n; {1668#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,261 INFO L280 TraceCheckUtils]: 11: Hoare triple {1668#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {1669#(and (< 0 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,262 INFO L280 TraceCheckUtils]: 12: Hoare triple {1669#(and (< 0 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} assume !(1 == ~n); {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,263 INFO L263 TraceCheckUtils]: 13: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} call #t~ret2 := fibo1(~n - 1); {1609#true} is VALID [2020-07-08 12:14:12,263 INFO L280 TraceCheckUtils]: 14: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,263 INFO L280 TraceCheckUtils]: 15: Hoare triple {1609#true} assume !(~n < 1); {1609#true} is VALID [2020-07-08 12:14:12,263 INFO L280 TraceCheckUtils]: 16: Hoare triple {1609#true} assume 1 == ~n;#res := 1; {1609#true} is VALID [2020-07-08 12:14:12,264 INFO L280 TraceCheckUtils]: 17: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,265 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #53#return; {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,266 INFO L280 TraceCheckUtils]: 19: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} is VALID [2020-07-08 12:14:12,266 INFO L263 TraceCheckUtils]: 20: Hoare triple {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} call #t~ret3 := fibo1(~n - 2); {1609#true} is VALID [2020-07-08 12:14:12,266 INFO L280 TraceCheckUtils]: 21: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,266 INFO L280 TraceCheckUtils]: 22: Hoare triple {1609#true} assume ~n < 1;#res := 0; {1609#true} is VALID [2020-07-08 12:14:12,267 INFO L280 TraceCheckUtils]: 23: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,268 INFO L275 TraceCheckUtils]: 24: Hoare quadruple {1609#true} {1670#(and (< 1 fibo2_~n) (= fibo2_~n |fibo2_#in~n|))} #55#return; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,269 INFO L280 TraceCheckUtils]: 25: Hoare triple {1680#(<= 2 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,270 INFO L280 TraceCheckUtils]: 26: Hoare triple {1680#(<= 2 |fibo2_#in~n|)} assume true; {1680#(<= 2 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,271 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {1680#(<= 2 |fibo2_#in~n|)} {1609#true} #57#return; {1663#(<= 3 fibo1_~n)} is VALID [2020-07-08 12:14:12,272 INFO L280 TraceCheckUtils]: 28: Hoare triple {1663#(<= 3 fibo1_~n)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {1663#(<= 3 fibo1_~n)} is VALID [2020-07-08 12:14:12,272 INFO L263 TraceCheckUtils]: 29: Hoare triple {1663#(<= 3 fibo1_~n)} call #t~ret1 := fibo2(~n - 2); {1609#true} is VALID [2020-07-08 12:14:12,273 INFO L280 TraceCheckUtils]: 30: Hoare triple {1609#true} ~n := #in~n; {1668#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:12,274 INFO L280 TraceCheckUtils]: 31: Hoare triple {1668#(= fibo2_~n |fibo2_#in~n|)} assume ~n < 1;#res := 0; {1681#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:12,274 INFO L280 TraceCheckUtils]: 32: Hoare triple {1681#(<= |fibo2_#in~n| 0)} assume true; {1681#(<= |fibo2_#in~n| 0)} is VALID [2020-07-08 12:14:12,276 INFO L275 TraceCheckUtils]: 33: Hoare quadruple {1681#(<= |fibo2_#in~n| 0)} {1663#(<= 3 fibo1_~n)} #59#return; {1610#false} is VALID [2020-07-08 12:14:12,276 INFO L280 TraceCheckUtils]: 34: Hoare triple {1610#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {1610#false} is VALID [2020-07-08 12:14:12,276 INFO L280 TraceCheckUtils]: 35: Hoare triple {1610#false} assume true; {1610#false} is VALID [2020-07-08 12:14:12,276 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {1610#false} {1613#(<= 4 main_~x~0)} #51#return; {1610#false} is VALID [2020-07-08 12:14:12,276 INFO L280 TraceCheckUtils]: 37: Hoare triple {1610#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {1610#false} is VALID [2020-07-08 12:14:12,277 INFO L280 TraceCheckUtils]: 38: Hoare triple {1610#false} assume 3 == ~result~0; {1610#false} is VALID [2020-07-08 12:14:12,277 INFO L280 TraceCheckUtils]: 39: Hoare triple {1610#false} assume !false; {1610#false} is VALID [2020-07-08 12:14:12,279 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2020-07-08 12:14:12,280 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1419789227] [2020-07-08 12:14:12,280 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1480954339] [2020-07-08 12:14:12,280 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:12,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:12,313 INFO L264 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 8 conjunts are in the unsatisfiable core [2020-07-08 12:14:12,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:12,330 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-08 12:14:12,539 INFO L263 TraceCheckUtils]: 0: Hoare triple {1609#true} call ULTIMATE.init(); {1609#true} is VALID [2020-07-08 12:14:12,540 INFO L280 TraceCheckUtils]: 1: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,540 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1609#true} {1609#true} #47#return; {1609#true} is VALID [2020-07-08 12:14:12,540 INFO L263 TraceCheckUtils]: 3: Hoare triple {1609#true} call #t~ret5 := main(); {1609#true} is VALID [2020-07-08 12:14:12,541 INFO L280 TraceCheckUtils]: 4: Hoare triple {1609#true} ~x~0 := 4; {1613#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:12,541 INFO L263 TraceCheckUtils]: 5: Hoare triple {1613#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {1609#true} is VALID [2020-07-08 12:14:12,542 INFO L280 TraceCheckUtils]: 6: Hoare triple {1609#true} ~n := #in~n; {1703#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:12,542 INFO L280 TraceCheckUtils]: 7: Hoare triple {1703#(<= |fibo1_#in~n| fibo1_~n)} assume !(~n < 1); {1703#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:12,543 INFO L280 TraceCheckUtils]: 8: Hoare triple {1703#(<= |fibo1_#in~n| fibo1_~n)} assume !(1 == ~n); {1703#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:12,543 INFO L263 TraceCheckUtils]: 9: Hoare triple {1703#(<= |fibo1_#in~n| fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {1609#true} is VALID [2020-07-08 12:14:12,544 INFO L280 TraceCheckUtils]: 10: Hoare triple {1609#true} ~n := #in~n; {1716#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:12,544 INFO L280 TraceCheckUtils]: 11: Hoare triple {1716#(<= |fibo2_#in~n| fibo2_~n)} assume !(~n < 1); {1716#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:12,545 INFO L280 TraceCheckUtils]: 12: Hoare triple {1716#(<= |fibo2_#in~n| fibo2_~n)} assume !(1 == ~n); {1716#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:12,545 INFO L263 TraceCheckUtils]: 13: Hoare triple {1716#(<= |fibo2_#in~n| fibo2_~n)} call #t~ret2 := fibo1(~n - 1); {1609#true} is VALID [2020-07-08 12:14:12,546 INFO L280 TraceCheckUtils]: 14: Hoare triple {1609#true} ~n := #in~n; {1703#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:12,546 INFO L280 TraceCheckUtils]: 15: Hoare triple {1703#(<= |fibo1_#in~n| fibo1_~n)} assume !(~n < 1); {1703#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:12,547 INFO L280 TraceCheckUtils]: 16: Hoare triple {1703#(<= |fibo1_#in~n| fibo1_~n)} assume 1 == ~n;#res := 1; {1735#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:12,548 INFO L280 TraceCheckUtils]: 17: Hoare triple {1735#(<= |fibo1_#in~n| 1)} assume true; {1735#(<= |fibo1_#in~n| 1)} is VALID [2020-07-08 12:14:12,549 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {1735#(<= |fibo1_#in~n| 1)} {1716#(<= |fibo2_#in~n| fibo2_~n)} #53#return; {1742#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:12,550 INFO L280 TraceCheckUtils]: 19: Hoare triple {1742#(<= |fibo2_#in~n| 2)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {1742#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:12,551 INFO L263 TraceCheckUtils]: 20: Hoare triple {1742#(<= |fibo2_#in~n| 2)} call #t~ret3 := fibo1(~n - 2); {1609#true} is VALID [2020-07-08 12:14:12,551 INFO L280 TraceCheckUtils]: 21: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,551 INFO L280 TraceCheckUtils]: 22: Hoare triple {1609#true} assume ~n < 1;#res := 0; {1609#true} is VALID [2020-07-08 12:14:12,551 INFO L280 TraceCheckUtils]: 23: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,553 INFO L275 TraceCheckUtils]: 24: Hoare quadruple {1609#true} {1742#(<= |fibo2_#in~n| 2)} #55#return; {1742#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:12,553 INFO L280 TraceCheckUtils]: 25: Hoare triple {1742#(<= |fibo2_#in~n| 2)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {1742#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:12,554 INFO L280 TraceCheckUtils]: 26: Hoare triple {1742#(<= |fibo2_#in~n| 2)} assume true; {1742#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:12,555 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {1742#(<= |fibo2_#in~n| 2)} {1703#(<= |fibo1_#in~n| fibo1_~n)} #57#return; {1770#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:12,556 INFO L280 TraceCheckUtils]: 28: Hoare triple {1770#(<= |fibo1_#in~n| 3)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {1770#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:12,556 INFO L263 TraceCheckUtils]: 29: Hoare triple {1770#(<= |fibo1_#in~n| 3)} call #t~ret1 := fibo2(~n - 2); {1609#true} is VALID [2020-07-08 12:14:12,557 INFO L280 TraceCheckUtils]: 30: Hoare triple {1609#true} ~n := #in~n; {1609#true} is VALID [2020-07-08 12:14:12,557 INFO L280 TraceCheckUtils]: 31: Hoare triple {1609#true} assume ~n < 1;#res := 0; {1609#true} is VALID [2020-07-08 12:14:12,557 INFO L280 TraceCheckUtils]: 32: Hoare triple {1609#true} assume true; {1609#true} is VALID [2020-07-08 12:14:12,559 INFO L275 TraceCheckUtils]: 33: Hoare quadruple {1609#true} {1770#(<= |fibo1_#in~n| 3)} #59#return; {1770#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:12,560 INFO L280 TraceCheckUtils]: 34: Hoare triple {1770#(<= |fibo1_#in~n| 3)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {1770#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:12,562 INFO L280 TraceCheckUtils]: 35: Hoare triple {1770#(<= |fibo1_#in~n| 3)} assume true; {1770#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:12,563 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {1770#(<= |fibo1_#in~n| 3)} {1613#(<= 4 main_~x~0)} #51#return; {1610#false} is VALID [2020-07-08 12:14:12,563 INFO L280 TraceCheckUtils]: 37: Hoare triple {1610#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {1610#false} is VALID [2020-07-08 12:14:12,563 INFO L280 TraceCheckUtils]: 38: Hoare triple {1610#false} assume 3 == ~result~0; {1610#false} is VALID [2020-07-08 12:14:12,564 INFO L280 TraceCheckUtils]: 39: Hoare triple {1610#false} assume !false; {1610#false} is VALID [2020-07-08 12:14:12,566 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 9 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2020-07-08 12:14:12,566 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-08 12:14:12,566 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 14 [2020-07-08 12:14:12,567 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [14751114] [2020-07-08 12:14:12,568 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 40 [2020-07-08 12:14:12,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:12,572 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-08 12:14:12,676 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:12,677 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-08 12:14:12,677 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:12,678 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-08 12:14:12,678 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=148, Unknown=0, NotChecked=0, Total=182 [2020-07-08 12:14:12,678 INFO L87 Difference]: Start difference. First operand 66 states and 95 transitions. Second operand 14 states. [2020-07-08 12:14:14,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:14,531 INFO L93 Difference]: Finished difference Result 180 states and 324 transitions. [2020-07-08 12:14:14,531 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-08 12:14:14,531 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 40 [2020-07-08 12:14:14,532 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:14,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-08 12:14:14,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 133 transitions. [2020-07-08 12:14:14,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-08 12:14:14,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 133 transitions. [2020-07-08 12:14:14,544 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 133 transitions. [2020-07-08 12:14:14,714 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:14,722 INFO L225 Difference]: With dead ends: 180 [2020-07-08 12:14:14,722 INFO L226 Difference]: Without dead ends: 120 [2020-07-08 12:14:14,724 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 55 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 61 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=86, Invalid=376, Unknown=0, NotChecked=0, Total=462 [2020-07-08 12:14:14,725 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 120 states. [2020-07-08 12:14:14,803 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 120 to 106. [2020-07-08 12:14:14,803 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:14,803 INFO L82 GeneralOperation]: Start isEquivalent. First operand 120 states. Second operand 106 states. [2020-07-08 12:14:14,804 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand 106 states. [2020-07-08 12:14:14,804 INFO L87 Difference]: Start difference. First operand 120 states. Second operand 106 states. [2020-07-08 12:14:14,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:14,814 INFO L93 Difference]: Finished difference Result 120 states and 198 transitions. [2020-07-08 12:14:14,815 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 198 transitions. [2020-07-08 12:14:14,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:14,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:14,816 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand 120 states. [2020-07-08 12:14:14,817 INFO L87 Difference]: Start difference. First operand 106 states. Second operand 120 states. [2020-07-08 12:14:14,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:14,827 INFO L93 Difference]: Finished difference Result 120 states and 198 transitions. [2020-07-08 12:14:14,827 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 198 transitions. [2020-07-08 12:14:14,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:14,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:14,829 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:14,829 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:14,830 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 106 states. [2020-07-08 12:14:14,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 169 transitions. [2020-07-08 12:14:14,838 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 169 transitions. Word has length 40 [2020-07-08 12:14:14,838 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:14,838 INFO L479 AbstractCegarLoop]: Abstraction has 106 states and 169 transitions. [2020-07-08 12:14:14,838 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-08 12:14:14,838 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 169 transitions. [2020-07-08 12:14:14,840 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2020-07-08 12:14:14,840 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:14,840 INFO L422 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:15,054 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:15,055 INFO L427 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:15,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:15,056 INFO L82 PathProgramCache]: Analyzing trace with hash -405677468, now seen corresponding path program 1 times [2020-07-08 12:14:15,057 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:15,057 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1046408834] [2020-07-08 12:14:15,057 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:15,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,097 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,097 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {2436#true} {2436#true} #47#return; {2436#true} is VALID [2020-07-08 12:14:15,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,225 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,225 INFO L280 TraceCheckUtils]: 1: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,226 INFO L280 TraceCheckUtils]: 2: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,226 INFO L280 TraceCheckUtils]: 3: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,226 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,234 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,234 INFO L280 TraceCheckUtils]: 1: Hoare triple {2436#true} assume ~n < 1;#res := 0; {2436#true} is VALID [2020-07-08 12:14:15,234 INFO L280 TraceCheckUtils]: 2: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,236 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,236 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,237 INFO L280 TraceCheckUtils]: 1: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,238 INFO L280 TraceCheckUtils]: 2: Hoare triple {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,238 INFO L263 TraceCheckUtils]: 3: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,238 INFO L280 TraceCheckUtils]: 4: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,239 INFO L280 TraceCheckUtils]: 5: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,239 INFO L280 TraceCheckUtils]: 6: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,239 INFO L280 TraceCheckUtils]: 7: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,240 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,241 INFO L280 TraceCheckUtils]: 9: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,242 INFO L263 TraceCheckUtils]: 10: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,242 INFO L280 TraceCheckUtils]: 11: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,242 INFO L280 TraceCheckUtils]: 12: Hoare triple {2436#true} assume ~n < 1;#res := 0; {2436#true} is VALID [2020-07-08 12:14:15,242 INFO L280 TraceCheckUtils]: 13: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,244 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,245 INFO L280 TraceCheckUtils]: 15: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,246 INFO L280 TraceCheckUtils]: 16: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume true; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,250 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {2557#(<= 2 |fibo1_#in~n|)} {2436#true} #53#return; {2540#(<= 3 fibo2_~n)} is VALID [2020-07-08 12:14:15,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,271 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,272 INFO L280 TraceCheckUtils]: 1: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,273 INFO L280 TraceCheckUtils]: 2: Hoare triple {2558#(<= |fibo1_#in~n| 0)} assume true; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,274 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {2558#(<= |fibo1_#in~n| 0)} {2540#(<= 3 fibo2_~n)} #55#return; {2437#false} is VALID [2020-07-08 12:14:15,274 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,275 INFO L280 TraceCheckUtils]: 1: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,275 INFO L280 TraceCheckUtils]: 2: Hoare triple {2436#true} assume !(1 == ~n); {2436#true} is VALID [2020-07-08 12:14:15,275 INFO L263 TraceCheckUtils]: 3: Hoare triple {2436#true} call #t~ret2 := fibo1(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,276 INFO L280 TraceCheckUtils]: 4: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,276 INFO L280 TraceCheckUtils]: 5: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,277 INFO L280 TraceCheckUtils]: 6: Hoare triple {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,277 INFO L263 TraceCheckUtils]: 7: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,278 INFO L280 TraceCheckUtils]: 8: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,278 INFO L280 TraceCheckUtils]: 9: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,278 INFO L280 TraceCheckUtils]: 10: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,278 INFO L280 TraceCheckUtils]: 11: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,279 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,280 INFO L280 TraceCheckUtils]: 13: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,280 INFO L263 TraceCheckUtils]: 14: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,281 INFO L280 TraceCheckUtils]: 15: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,281 INFO L280 TraceCheckUtils]: 16: Hoare triple {2436#true} assume ~n < 1;#res := 0; {2436#true} is VALID [2020-07-08 12:14:15,281 INFO L280 TraceCheckUtils]: 17: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,283 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,283 INFO L280 TraceCheckUtils]: 19: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,284 INFO L280 TraceCheckUtils]: 20: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume true; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,285 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {2557#(<= 2 |fibo1_#in~n|)} {2436#true} #53#return; {2540#(<= 3 fibo2_~n)} is VALID [2020-07-08 12:14:15,285 INFO L280 TraceCheckUtils]: 22: Hoare triple {2540#(<= 3 fibo2_~n)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {2540#(<= 3 fibo2_~n)} is VALID [2020-07-08 12:14:15,286 INFO L263 TraceCheckUtils]: 23: Hoare triple {2540#(<= 3 fibo2_~n)} call #t~ret3 := fibo1(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,286 INFO L280 TraceCheckUtils]: 24: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,288 INFO L280 TraceCheckUtils]: 25: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,289 INFO L280 TraceCheckUtils]: 26: Hoare triple {2558#(<= |fibo1_#in~n| 0)} assume true; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,292 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {2558#(<= |fibo1_#in~n| 0)} {2540#(<= 3 fibo2_~n)} #55#return; {2437#false} is VALID [2020-07-08 12:14:15,293 INFO L280 TraceCheckUtils]: 28: Hoare triple {2437#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {2437#false} is VALID [2020-07-08 12:14:15,293 INFO L280 TraceCheckUtils]: 29: Hoare triple {2437#false} assume true; {2437#false} is VALID [2020-07-08 12:14:15,293 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {2437#false} {2436#true} #57#return; {2437#false} is VALID [2020-07-08 12:14:15,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,300 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,300 INFO L280 TraceCheckUtils]: 1: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,301 INFO L280 TraceCheckUtils]: 2: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,301 INFO L280 TraceCheckUtils]: 3: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,301 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2436#true} {2437#false} #59#return; {2437#false} is VALID [2020-07-08 12:14:15,301 INFO L280 TraceCheckUtils]: 0: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,301 INFO L280 TraceCheckUtils]: 1: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,302 INFO L280 TraceCheckUtils]: 2: Hoare triple {2436#true} assume !(1 == ~n); {2436#true} is VALID [2020-07-08 12:14:15,302 INFO L263 TraceCheckUtils]: 3: Hoare triple {2436#true} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,302 INFO L280 TraceCheckUtils]: 4: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,302 INFO L280 TraceCheckUtils]: 5: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,302 INFO L280 TraceCheckUtils]: 6: Hoare triple {2436#true} assume !(1 == ~n); {2436#true} is VALID [2020-07-08 12:14:15,303 INFO L263 TraceCheckUtils]: 7: Hoare triple {2436#true} call #t~ret2 := fibo1(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,303 INFO L280 TraceCheckUtils]: 8: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,304 INFO L280 TraceCheckUtils]: 9: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,305 INFO L280 TraceCheckUtils]: 10: Hoare triple {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,305 INFO L263 TraceCheckUtils]: 11: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,305 INFO L280 TraceCheckUtils]: 12: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,305 INFO L280 TraceCheckUtils]: 13: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,305 INFO L280 TraceCheckUtils]: 14: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,305 INFO L280 TraceCheckUtils]: 15: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,306 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,307 INFO L280 TraceCheckUtils]: 17: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,307 INFO L263 TraceCheckUtils]: 18: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,307 INFO L280 TraceCheckUtils]: 19: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,307 INFO L280 TraceCheckUtils]: 20: Hoare triple {2436#true} assume ~n < 1;#res := 0; {2436#true} is VALID [2020-07-08 12:14:15,307 INFO L280 TraceCheckUtils]: 21: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,309 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,309 INFO L280 TraceCheckUtils]: 23: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,309 INFO L280 TraceCheckUtils]: 24: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume true; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,310 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {2557#(<= 2 |fibo1_#in~n|)} {2436#true} #53#return; {2540#(<= 3 fibo2_~n)} is VALID [2020-07-08 12:14:15,311 INFO L280 TraceCheckUtils]: 26: Hoare triple {2540#(<= 3 fibo2_~n)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {2540#(<= 3 fibo2_~n)} is VALID [2020-07-08 12:14:15,311 INFO L263 TraceCheckUtils]: 27: Hoare triple {2540#(<= 3 fibo2_~n)} call #t~ret3 := fibo1(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,311 INFO L280 TraceCheckUtils]: 28: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,312 INFO L280 TraceCheckUtils]: 29: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,312 INFO L280 TraceCheckUtils]: 30: Hoare triple {2558#(<= |fibo1_#in~n| 0)} assume true; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,314 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {2558#(<= |fibo1_#in~n| 0)} {2540#(<= 3 fibo2_~n)} #55#return; {2437#false} is VALID [2020-07-08 12:14:15,314 INFO L280 TraceCheckUtils]: 32: Hoare triple {2437#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {2437#false} is VALID [2020-07-08 12:14:15,315 INFO L280 TraceCheckUtils]: 33: Hoare triple {2437#false} assume true; {2437#false} is VALID [2020-07-08 12:14:15,315 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {2437#false} {2436#true} #57#return; {2437#false} is VALID [2020-07-08 12:14:15,315 INFO L280 TraceCheckUtils]: 35: Hoare triple {2437#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2437#false} is VALID [2020-07-08 12:14:15,315 INFO L263 TraceCheckUtils]: 36: Hoare triple {2437#false} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,315 INFO L280 TraceCheckUtils]: 37: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,315 INFO L280 TraceCheckUtils]: 38: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,315 INFO L280 TraceCheckUtils]: 39: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,316 INFO L280 TraceCheckUtils]: 40: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,316 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {2436#true} {2437#false} #59#return; {2437#false} is VALID [2020-07-08 12:14:15,316 INFO L280 TraceCheckUtils]: 42: Hoare triple {2437#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2437#false} is VALID [2020-07-08 12:14:15,316 INFO L280 TraceCheckUtils]: 43: Hoare triple {2437#false} assume true; {2437#false} is VALID [2020-07-08 12:14:15,317 INFO L275 TraceCheckUtils]: 44: Hoare quadruple {2437#false} {2440#(<= 4 main_~x~0)} #51#return; {2437#false} is VALID [2020-07-08 12:14:15,321 INFO L263 TraceCheckUtils]: 0: Hoare triple {2436#true} call ULTIMATE.init(); {2436#true} is VALID [2020-07-08 12:14:15,321 INFO L280 TraceCheckUtils]: 1: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,321 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {2436#true} {2436#true} #47#return; {2436#true} is VALID [2020-07-08 12:14:15,321 INFO L263 TraceCheckUtils]: 3: Hoare triple {2436#true} call #t~ret5 := main(); {2436#true} is VALID [2020-07-08 12:14:15,323 INFO L280 TraceCheckUtils]: 4: Hoare triple {2436#true} ~x~0 := 4; {2440#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:15,323 INFO L263 TraceCheckUtils]: 5: Hoare triple {2440#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {2436#true} is VALID [2020-07-08 12:14:15,323 INFO L280 TraceCheckUtils]: 6: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,323 INFO L280 TraceCheckUtils]: 7: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,324 INFO L280 TraceCheckUtils]: 8: Hoare triple {2436#true} assume !(1 == ~n); {2436#true} is VALID [2020-07-08 12:14:15,324 INFO L263 TraceCheckUtils]: 9: Hoare triple {2436#true} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,324 INFO L280 TraceCheckUtils]: 10: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,324 INFO L280 TraceCheckUtils]: 11: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,324 INFO L280 TraceCheckUtils]: 12: Hoare triple {2436#true} assume !(1 == ~n); {2436#true} is VALID [2020-07-08 12:14:15,325 INFO L263 TraceCheckUtils]: 13: Hoare triple {2436#true} call #t~ret2 := fibo1(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,327 INFO L280 TraceCheckUtils]: 14: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,328 INFO L280 TraceCheckUtils]: 15: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,329 INFO L280 TraceCheckUtils]: 16: Hoare triple {2546#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,329 INFO L263 TraceCheckUtils]: 17: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,329 INFO L280 TraceCheckUtils]: 18: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,329 INFO L280 TraceCheckUtils]: 19: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,330 INFO L280 TraceCheckUtils]: 20: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,330 INFO L280 TraceCheckUtils]: 21: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,332 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,333 INFO L280 TraceCheckUtils]: 23: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:15,333 INFO L263 TraceCheckUtils]: 24: Hoare triple {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,333 INFO L280 TraceCheckUtils]: 25: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,333 INFO L280 TraceCheckUtils]: 26: Hoare triple {2436#true} assume ~n < 1;#res := 0; {2436#true} is VALID [2020-07-08 12:14:15,333 INFO L280 TraceCheckUtils]: 27: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,335 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {2436#true} {2547#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,336 INFO L280 TraceCheckUtils]: 29: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,336 INFO L280 TraceCheckUtils]: 30: Hoare triple {2557#(<= 2 |fibo1_#in~n|)} assume true; {2557#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,338 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {2557#(<= 2 |fibo1_#in~n|)} {2436#true} #53#return; {2540#(<= 3 fibo2_~n)} is VALID [2020-07-08 12:14:15,338 INFO L280 TraceCheckUtils]: 32: Hoare triple {2540#(<= 3 fibo2_~n)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {2540#(<= 3 fibo2_~n)} is VALID [2020-07-08 12:14:15,339 INFO L263 TraceCheckUtils]: 33: Hoare triple {2540#(<= 3 fibo2_~n)} call #t~ret3 := fibo1(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,339 INFO L280 TraceCheckUtils]: 34: Hoare triple {2436#true} ~n := #in~n; {2545#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:15,340 INFO L280 TraceCheckUtils]: 35: Hoare triple {2545#(= fibo1_~n |fibo1_#in~n|)} assume ~n < 1;#res := 0; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,341 INFO L280 TraceCheckUtils]: 36: Hoare triple {2558#(<= |fibo1_#in~n| 0)} assume true; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,342 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {2558#(<= |fibo1_#in~n| 0)} {2540#(<= 3 fibo2_~n)} #55#return; {2437#false} is VALID [2020-07-08 12:14:15,342 INFO L280 TraceCheckUtils]: 38: Hoare triple {2437#false} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {2437#false} is VALID [2020-07-08 12:14:15,342 INFO L280 TraceCheckUtils]: 39: Hoare triple {2437#false} assume true; {2437#false} is VALID [2020-07-08 12:14:15,343 INFO L275 TraceCheckUtils]: 40: Hoare quadruple {2437#false} {2436#true} #57#return; {2437#false} is VALID [2020-07-08 12:14:15,343 INFO L280 TraceCheckUtils]: 41: Hoare triple {2437#false} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2437#false} is VALID [2020-07-08 12:14:15,343 INFO L263 TraceCheckUtils]: 42: Hoare triple {2437#false} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,343 INFO L280 TraceCheckUtils]: 43: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,343 INFO L280 TraceCheckUtils]: 44: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,344 INFO L280 TraceCheckUtils]: 45: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,344 INFO L280 TraceCheckUtils]: 46: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,344 INFO L275 TraceCheckUtils]: 47: Hoare quadruple {2436#true} {2437#false} #59#return; {2437#false} is VALID [2020-07-08 12:14:15,344 INFO L280 TraceCheckUtils]: 48: Hoare triple {2437#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2437#false} is VALID [2020-07-08 12:14:15,344 INFO L280 TraceCheckUtils]: 49: Hoare triple {2437#false} assume true; {2437#false} is VALID [2020-07-08 12:14:15,345 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {2437#false} {2440#(<= 4 main_~x~0)} #51#return; {2437#false} is VALID [2020-07-08 12:14:15,345 INFO L280 TraceCheckUtils]: 51: Hoare triple {2437#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {2437#false} is VALID [2020-07-08 12:14:15,345 INFO L280 TraceCheckUtils]: 52: Hoare triple {2437#false} assume 3 == ~result~0; {2437#false} is VALID [2020-07-08 12:14:15,349 INFO L280 TraceCheckUtils]: 53: Hoare triple {2437#false} assume !false; {2437#false} is VALID [2020-07-08 12:14:15,355 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 15 proven. 4 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2020-07-08 12:14:15,356 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1046408834] [2020-07-08 12:14:15,356 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [636514848] [2020-07-08 12:14:15,356 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:15,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,394 INFO L264 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 8 conjunts are in the unsatisfiable core [2020-07-08 12:14:15,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:15,407 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-08 12:14:15,616 INFO L263 TraceCheckUtils]: 0: Hoare triple {2436#true} call ULTIMATE.init(); {2436#true} is VALID [2020-07-08 12:14:15,617 INFO L280 TraceCheckUtils]: 1: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,617 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {2436#true} {2436#true} #47#return; {2436#true} is VALID [2020-07-08 12:14:15,617 INFO L263 TraceCheckUtils]: 3: Hoare triple {2436#true} call #t~ret5 := main(); {2436#true} is VALID [2020-07-08 12:14:15,624 INFO L280 TraceCheckUtils]: 4: Hoare triple {2436#true} ~x~0 := 4; {2440#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:15,625 INFO L263 TraceCheckUtils]: 5: Hoare triple {2440#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {2436#true} is VALID [2020-07-08 12:14:15,626 INFO L280 TraceCheckUtils]: 6: Hoare triple {2436#true} ~n := #in~n; {2580#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:15,626 INFO L280 TraceCheckUtils]: 7: Hoare triple {2580#(<= |fibo1_#in~n| fibo1_~n)} assume !(~n < 1); {2580#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:15,627 INFO L280 TraceCheckUtils]: 8: Hoare triple {2580#(<= |fibo1_#in~n| fibo1_~n)} assume !(1 == ~n); {2580#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:15,627 INFO L263 TraceCheckUtils]: 9: Hoare triple {2580#(<= |fibo1_#in~n| fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,628 INFO L280 TraceCheckUtils]: 10: Hoare triple {2436#true} ~n := #in~n; {2593#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:15,629 INFO L280 TraceCheckUtils]: 11: Hoare triple {2593#(<= |fibo2_#in~n| fibo2_~n)} assume !(~n < 1); {2593#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:15,629 INFO L280 TraceCheckUtils]: 12: Hoare triple {2593#(<= |fibo2_#in~n| fibo2_~n)} assume !(1 == ~n); {2593#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:15,630 INFO L263 TraceCheckUtils]: 13: Hoare triple {2593#(<= |fibo2_#in~n| fibo2_~n)} call #t~ret2 := fibo1(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,630 INFO L280 TraceCheckUtils]: 14: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,630 INFO L280 TraceCheckUtils]: 15: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,630 INFO L280 TraceCheckUtils]: 16: Hoare triple {2436#true} assume !(1 == ~n); {2436#true} is VALID [2020-07-08 12:14:15,631 INFO L263 TraceCheckUtils]: 17: Hoare triple {2436#true} call #t~ret0 := fibo2(~n - 1); {2436#true} is VALID [2020-07-08 12:14:15,631 INFO L280 TraceCheckUtils]: 18: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,631 INFO L280 TraceCheckUtils]: 19: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,631 INFO L280 TraceCheckUtils]: 20: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,632 INFO L280 TraceCheckUtils]: 21: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,632 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {2436#true} {2436#true} #57#return; {2436#true} is VALID [2020-07-08 12:14:15,632 INFO L280 TraceCheckUtils]: 23: Hoare triple {2436#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2436#true} is VALID [2020-07-08 12:14:15,632 INFO L263 TraceCheckUtils]: 24: Hoare triple {2436#true} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,632 INFO L280 TraceCheckUtils]: 25: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,632 INFO L280 TraceCheckUtils]: 26: Hoare triple {2436#true} assume ~n < 1;#res := 0; {2436#true} is VALID [2020-07-08 12:14:15,633 INFO L280 TraceCheckUtils]: 27: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,633 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {2436#true} {2436#true} #59#return; {2436#true} is VALID [2020-07-08 12:14:15,633 INFO L280 TraceCheckUtils]: 29: Hoare triple {2436#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2436#true} is VALID [2020-07-08 12:14:15,633 INFO L280 TraceCheckUtils]: 30: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,634 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {2436#true} {2593#(<= |fibo2_#in~n| fibo2_~n)} #53#return; {2593#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:15,636 INFO L280 TraceCheckUtils]: 32: Hoare triple {2593#(<= |fibo2_#in~n| fibo2_~n)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {2593#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:15,636 INFO L263 TraceCheckUtils]: 33: Hoare triple {2593#(<= |fibo2_#in~n| fibo2_~n)} call #t~ret3 := fibo1(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,637 INFO L280 TraceCheckUtils]: 34: Hoare triple {2436#true} ~n := #in~n; {2580#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:15,638 INFO L280 TraceCheckUtils]: 35: Hoare triple {2580#(<= |fibo1_#in~n| fibo1_~n)} assume ~n < 1;#res := 0; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,639 INFO L280 TraceCheckUtils]: 36: Hoare triple {2558#(<= |fibo1_#in~n| 0)} assume true; {2558#(<= |fibo1_#in~n| 0)} is VALID [2020-07-08 12:14:15,640 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {2558#(<= |fibo1_#in~n| 0)} {2593#(<= |fibo2_#in~n| fibo2_~n)} #55#return; {2675#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:15,641 INFO L280 TraceCheckUtils]: 38: Hoare triple {2675#(<= |fibo2_#in~n| 2)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {2675#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:15,641 INFO L280 TraceCheckUtils]: 39: Hoare triple {2675#(<= |fibo2_#in~n| 2)} assume true; {2675#(<= |fibo2_#in~n| 2)} is VALID [2020-07-08 12:14:15,642 INFO L275 TraceCheckUtils]: 40: Hoare quadruple {2675#(<= |fibo2_#in~n| 2)} {2580#(<= |fibo1_#in~n| fibo1_~n)} #57#return; {2685#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:15,643 INFO L280 TraceCheckUtils]: 41: Hoare triple {2685#(<= |fibo1_#in~n| 3)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {2685#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:15,643 INFO L263 TraceCheckUtils]: 42: Hoare triple {2685#(<= |fibo1_#in~n| 3)} call #t~ret1 := fibo2(~n - 2); {2436#true} is VALID [2020-07-08 12:14:15,643 INFO L280 TraceCheckUtils]: 43: Hoare triple {2436#true} ~n := #in~n; {2436#true} is VALID [2020-07-08 12:14:15,644 INFO L280 TraceCheckUtils]: 44: Hoare triple {2436#true} assume !(~n < 1); {2436#true} is VALID [2020-07-08 12:14:15,644 INFO L280 TraceCheckUtils]: 45: Hoare triple {2436#true} assume 1 == ~n;#res := 1; {2436#true} is VALID [2020-07-08 12:14:15,644 INFO L280 TraceCheckUtils]: 46: Hoare triple {2436#true} assume true; {2436#true} is VALID [2020-07-08 12:14:15,645 INFO L275 TraceCheckUtils]: 47: Hoare quadruple {2436#true} {2685#(<= |fibo1_#in~n| 3)} #59#return; {2685#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:15,645 INFO L280 TraceCheckUtils]: 48: Hoare triple {2685#(<= |fibo1_#in~n| 3)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {2685#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:15,646 INFO L280 TraceCheckUtils]: 49: Hoare triple {2685#(<= |fibo1_#in~n| 3)} assume true; {2685#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:15,647 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {2685#(<= |fibo1_#in~n| 3)} {2440#(<= 4 main_~x~0)} #51#return; {2437#false} is VALID [2020-07-08 12:14:15,648 INFO L280 TraceCheckUtils]: 51: Hoare triple {2437#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {2437#false} is VALID [2020-07-08 12:14:15,648 INFO L280 TraceCheckUtils]: 52: Hoare triple {2437#false} assume 3 == ~result~0; {2437#false} is VALID [2020-07-08 12:14:15,648 INFO L280 TraceCheckUtils]: 53: Hoare triple {2437#false} assume !false; {2437#false} is VALID [2020-07-08 12:14:15,652 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 12 proven. 12 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2020-07-08 12:14:15,652 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-08 12:14:15,653 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 13 [2020-07-08 12:14:15,653 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [12028013] [2020-07-08 12:14:15,655 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 54 [2020-07-08 12:14:15,656 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:15,657 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2020-07-08 12:14:15,733 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:15,733 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2020-07-08 12:14:15,733 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:15,734 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2020-07-08 12:14:15,734 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2020-07-08 12:14:15,734 INFO L87 Difference]: Start difference. First operand 106 states and 169 transitions. Second operand 13 states. [2020-07-08 12:14:17,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:17,291 INFO L93 Difference]: Finished difference Result 265 states and 511 transitions. [2020-07-08 12:14:17,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2020-07-08 12:14:17,291 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 54 [2020-07-08 12:14:17,292 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:17,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-08 12:14:17,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 122 transitions. [2020-07-08 12:14:17,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-08 12:14:17,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 122 transitions. [2020-07-08 12:14:17,305 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 122 transitions. [2020-07-08 12:14:17,479 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:17,488 INFO L225 Difference]: With dead ends: 265 [2020-07-08 12:14:17,489 INFO L226 Difference]: Without dead ends: 165 [2020-07-08 12:14:17,491 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=67, Invalid=275, Unknown=0, NotChecked=0, Total=342 [2020-07-08 12:14:17,492 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 165 states. [2020-07-08 12:14:17,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 165 to 142. [2020-07-08 12:14:17,602 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:17,602 INFO L82 GeneralOperation]: Start isEquivalent. First operand 165 states. Second operand 142 states. [2020-07-08 12:14:17,602 INFO L74 IsIncluded]: Start isIncluded. First operand 165 states. Second operand 142 states. [2020-07-08 12:14:17,602 INFO L87 Difference]: Start difference. First operand 165 states. Second operand 142 states. [2020-07-08 12:14:17,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:17,620 INFO L93 Difference]: Finished difference Result 165 states and 285 transitions. [2020-07-08 12:14:17,620 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 285 transitions. [2020-07-08 12:14:17,622 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:17,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:17,622 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand 165 states. [2020-07-08 12:14:17,623 INFO L87 Difference]: Start difference. First operand 142 states. Second operand 165 states. [2020-07-08 12:14:17,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:17,637 INFO L93 Difference]: Finished difference Result 165 states and 285 transitions. [2020-07-08 12:14:17,637 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 285 transitions. [2020-07-08 12:14:17,639 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:17,639 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:17,640 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:17,640 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:17,640 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 142 states. [2020-07-08 12:14:17,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 142 states to 142 states and 244 transitions. [2020-07-08 12:14:17,651 INFO L78 Accepts]: Start accepts. Automaton has 142 states and 244 transitions. Word has length 54 [2020-07-08 12:14:17,651 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:17,651 INFO L479 AbstractCegarLoop]: Abstraction has 142 states and 244 transitions. [2020-07-08 12:14:17,651 INFO L480 AbstractCegarLoop]: Interpolant automaton has 13 states. [2020-07-08 12:14:17,651 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 244 transitions. [2020-07-08 12:14:17,653 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2020-07-08 12:14:17,654 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:17,654 INFO L422 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:17,866 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable6 [2020-07-08 12:14:17,867 INFO L427 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:17,867 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:17,867 INFO L82 PathProgramCache]: Analyzing trace with hash -242988780, now seen corresponding path program 1 times [2020-07-08 12:14:17,868 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:17,868 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [99328747] [2020-07-08 12:14:17,868 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:17,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:17,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:17,906 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:17,907 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {3595#true} {3595#true} #47#return; {3595#true} is VALID [2020-07-08 12:14:17,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:17,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,107 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,108 INFO L280 TraceCheckUtils]: 1: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,108 INFO L280 TraceCheckUtils]: 2: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,108 INFO L280 TraceCheckUtils]: 3: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,109 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,124 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,124 INFO L280 TraceCheckUtils]: 1: Hoare triple {3595#true} assume ~n < 1;#res := 0; {3595#true} is VALID [2020-07-08 12:14:18,124 INFO L280 TraceCheckUtils]: 2: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,126 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,126 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} ~n := #in~n; {3710#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,127 INFO L280 TraceCheckUtils]: 1: Hoare triple {3710#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,128 INFO L280 TraceCheckUtils]: 2: Hoare triple {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,128 INFO L263 TraceCheckUtils]: 3: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,128 INFO L280 TraceCheckUtils]: 4: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,129 INFO L280 TraceCheckUtils]: 5: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,129 INFO L280 TraceCheckUtils]: 6: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,129 INFO L280 TraceCheckUtils]: 7: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,130 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,131 INFO L280 TraceCheckUtils]: 9: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,131 INFO L263 TraceCheckUtils]: 10: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,131 INFO L280 TraceCheckUtils]: 11: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,131 INFO L280 TraceCheckUtils]: 12: Hoare triple {3595#true} assume ~n < 1;#res := 0; {3595#true} is VALID [2020-07-08 12:14:18,132 INFO L280 TraceCheckUtils]: 13: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,133 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,134 INFO L280 TraceCheckUtils]: 15: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,134 INFO L280 TraceCheckUtils]: 16: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume true; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,135 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {3722#(<= 2 |fibo1_#in~n|)} {3684#(= fibo2_~n |fibo2_#in~n|)} #53#return; {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:18,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,145 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,146 INFO L280 TraceCheckUtils]: 1: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,146 INFO L280 TraceCheckUtils]: 2: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,147 INFO L280 TraceCheckUtils]: 3: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,148 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3595#true} {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,148 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} ~n := #in~n; {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,149 INFO L280 TraceCheckUtils]: 1: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,149 INFO L280 TraceCheckUtils]: 2: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,150 INFO L263 TraceCheckUtils]: 3: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,150 INFO L280 TraceCheckUtils]: 4: Hoare triple {3595#true} ~n := #in~n; {3710#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,151 INFO L280 TraceCheckUtils]: 5: Hoare triple {3710#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,152 INFO L280 TraceCheckUtils]: 6: Hoare triple {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,152 INFO L263 TraceCheckUtils]: 7: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,152 INFO L280 TraceCheckUtils]: 8: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,153 INFO L280 TraceCheckUtils]: 9: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,153 INFO L280 TraceCheckUtils]: 10: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,153 INFO L280 TraceCheckUtils]: 11: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,154 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,155 INFO L280 TraceCheckUtils]: 13: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,155 INFO L263 TraceCheckUtils]: 14: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,155 INFO L280 TraceCheckUtils]: 15: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,156 INFO L280 TraceCheckUtils]: 16: Hoare triple {3595#true} assume ~n < 1;#res := 0; {3595#true} is VALID [2020-07-08 12:14:18,156 INFO L280 TraceCheckUtils]: 17: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,157 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,158 INFO L280 TraceCheckUtils]: 19: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,159 INFO L280 TraceCheckUtils]: 20: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume true; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,160 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {3722#(<= 2 |fibo1_#in~n|)} {3684#(= fibo2_~n |fibo2_#in~n|)} #53#return; {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:18,161 INFO L280 TraceCheckUtils]: 22: Hoare triple {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:18,161 INFO L263 TraceCheckUtils]: 23: Hoare triple {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} call #t~ret3 := fibo1(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,162 INFO L280 TraceCheckUtils]: 24: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,162 INFO L280 TraceCheckUtils]: 25: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,162 INFO L280 TraceCheckUtils]: 26: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,163 INFO L280 TraceCheckUtils]: 27: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,164 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {3595#true} {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,165 INFO L280 TraceCheckUtils]: 29: Hoare triple {3709#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,165 INFO L280 TraceCheckUtils]: 30: Hoare triple {3709#(<= 3 |fibo2_#in~n|)} assume true; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,167 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {3709#(<= 3 |fibo2_#in~n|)} {3595#true} #57#return; {3678#(<= 4 fibo1_~n)} is VALID [2020-07-08 12:14:18,170 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,207 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} ~n := #in~n; {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,207 INFO L280 TraceCheckUtils]: 1: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,208 INFO L280 TraceCheckUtils]: 2: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,209 INFO L280 TraceCheckUtils]: 3: Hoare triple {3723#(<= |fibo2_#in~n| 1)} assume true; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,210 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3723#(<= |fibo2_#in~n| 1)} {3678#(<= 4 fibo1_~n)} #59#return; {3596#false} is VALID [2020-07-08 12:14:18,210 INFO L280 TraceCheckUtils]: 0: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,210 INFO L280 TraceCheckUtils]: 1: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,211 INFO L280 TraceCheckUtils]: 2: Hoare triple {3595#true} assume !(1 == ~n); {3595#true} is VALID [2020-07-08 12:14:18,211 INFO L263 TraceCheckUtils]: 3: Hoare triple {3595#true} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,211 INFO L280 TraceCheckUtils]: 4: Hoare triple {3595#true} ~n := #in~n; {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,212 INFO L280 TraceCheckUtils]: 5: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,212 INFO L280 TraceCheckUtils]: 6: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,213 INFO L263 TraceCheckUtils]: 7: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,213 INFO L280 TraceCheckUtils]: 8: Hoare triple {3595#true} ~n := #in~n; {3710#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,214 INFO L280 TraceCheckUtils]: 9: Hoare triple {3710#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,215 INFO L280 TraceCheckUtils]: 10: Hoare triple {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,215 INFO L263 TraceCheckUtils]: 11: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,215 INFO L280 TraceCheckUtils]: 12: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,216 INFO L280 TraceCheckUtils]: 13: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,216 INFO L280 TraceCheckUtils]: 14: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,216 INFO L280 TraceCheckUtils]: 15: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,217 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,218 INFO L280 TraceCheckUtils]: 17: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,218 INFO L263 TraceCheckUtils]: 18: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,218 INFO L280 TraceCheckUtils]: 19: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,218 INFO L280 TraceCheckUtils]: 20: Hoare triple {3595#true} assume ~n < 1;#res := 0; {3595#true} is VALID [2020-07-08 12:14:18,219 INFO L280 TraceCheckUtils]: 21: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,220 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,221 INFO L280 TraceCheckUtils]: 23: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,221 INFO L280 TraceCheckUtils]: 24: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume true; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,223 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {3722#(<= 2 |fibo1_#in~n|)} {3684#(= fibo2_~n |fibo2_#in~n|)} #53#return; {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:18,223 INFO L280 TraceCheckUtils]: 26: Hoare triple {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:18,224 INFO L263 TraceCheckUtils]: 27: Hoare triple {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} call #t~ret3 := fibo1(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,224 INFO L280 TraceCheckUtils]: 28: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,224 INFO L280 TraceCheckUtils]: 29: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,224 INFO L280 TraceCheckUtils]: 30: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,224 INFO L280 TraceCheckUtils]: 31: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,226 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {3595#true} {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,226 INFO L280 TraceCheckUtils]: 33: Hoare triple {3709#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,227 INFO L280 TraceCheckUtils]: 34: Hoare triple {3709#(<= 3 |fibo2_#in~n|)} assume true; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,228 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {3709#(<= 3 |fibo2_#in~n|)} {3595#true} #57#return; {3678#(<= 4 fibo1_~n)} is VALID [2020-07-08 12:14:18,228 INFO L280 TraceCheckUtils]: 36: Hoare triple {3678#(<= 4 fibo1_~n)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3678#(<= 4 fibo1_~n)} is VALID [2020-07-08 12:14:18,229 INFO L263 TraceCheckUtils]: 37: Hoare triple {3678#(<= 4 fibo1_~n)} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,229 INFO L280 TraceCheckUtils]: 38: Hoare triple {3595#true} ~n := #in~n; {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,230 INFO L280 TraceCheckUtils]: 39: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,231 INFO L280 TraceCheckUtils]: 40: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,231 INFO L280 TraceCheckUtils]: 41: Hoare triple {3723#(<= |fibo2_#in~n| 1)} assume true; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,232 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {3723#(<= |fibo2_#in~n| 1)} {3678#(<= 4 fibo1_~n)} #59#return; {3596#false} is VALID [2020-07-08 12:14:18,233 INFO L280 TraceCheckUtils]: 43: Hoare triple {3596#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3596#false} is VALID [2020-07-08 12:14:18,233 INFO L280 TraceCheckUtils]: 44: Hoare triple {3596#false} assume true; {3596#false} is VALID [2020-07-08 12:14:18,233 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {3596#false} {3599#(<= 4 main_~x~0)} #51#return; {3596#false} is VALID [2020-07-08 12:14:18,235 INFO L263 TraceCheckUtils]: 0: Hoare triple {3595#true} call ULTIMATE.init(); {3595#true} is VALID [2020-07-08 12:14:18,236 INFO L280 TraceCheckUtils]: 1: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,236 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {3595#true} {3595#true} #47#return; {3595#true} is VALID [2020-07-08 12:14:18,236 INFO L263 TraceCheckUtils]: 3: Hoare triple {3595#true} call #t~ret5 := main(); {3595#true} is VALID [2020-07-08 12:14:18,238 INFO L280 TraceCheckUtils]: 4: Hoare triple {3595#true} ~x~0 := 4; {3599#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:18,238 INFO L263 TraceCheckUtils]: 5: Hoare triple {3599#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {3595#true} is VALID [2020-07-08 12:14:18,238 INFO L280 TraceCheckUtils]: 6: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,238 INFO L280 TraceCheckUtils]: 7: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,238 INFO L280 TraceCheckUtils]: 8: Hoare triple {3595#true} assume !(1 == ~n); {3595#true} is VALID [2020-07-08 12:14:18,239 INFO L263 TraceCheckUtils]: 9: Hoare triple {3595#true} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,239 INFO L280 TraceCheckUtils]: 10: Hoare triple {3595#true} ~n := #in~n; {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,241 INFO L280 TraceCheckUtils]: 11: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,241 INFO L280 TraceCheckUtils]: 12: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,242 INFO L263 TraceCheckUtils]: 13: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,243 INFO L280 TraceCheckUtils]: 14: Hoare triple {3595#true} ~n := #in~n; {3710#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,244 INFO L280 TraceCheckUtils]: 15: Hoare triple {3710#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,245 INFO L280 TraceCheckUtils]: 16: Hoare triple {3711#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,245 INFO L263 TraceCheckUtils]: 17: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,245 INFO L280 TraceCheckUtils]: 18: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,245 INFO L280 TraceCheckUtils]: 19: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,245 INFO L280 TraceCheckUtils]: 20: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,246 INFO L280 TraceCheckUtils]: 21: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,247 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,248 INFO L280 TraceCheckUtils]: 23: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:18,248 INFO L263 TraceCheckUtils]: 24: Hoare triple {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,248 INFO L280 TraceCheckUtils]: 25: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,248 INFO L280 TraceCheckUtils]: 26: Hoare triple {3595#true} assume ~n < 1;#res := 0; {3595#true} is VALID [2020-07-08 12:14:18,248 INFO L280 TraceCheckUtils]: 27: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,250 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {3595#true} {3712#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,250 INFO L280 TraceCheckUtils]: 29: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,251 INFO L280 TraceCheckUtils]: 30: Hoare triple {3722#(<= 2 |fibo1_#in~n|)} assume true; {3722#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:18,253 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {3722#(<= 2 |fibo1_#in~n|)} {3684#(= fibo2_~n |fibo2_#in~n|)} #53#return; {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:18,254 INFO L280 TraceCheckUtils]: 32: Hoare triple {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:18,254 INFO L263 TraceCheckUtils]: 33: Hoare triple {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} call #t~ret3 := fibo1(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,254 INFO L280 TraceCheckUtils]: 34: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,255 INFO L280 TraceCheckUtils]: 35: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,255 INFO L280 TraceCheckUtils]: 36: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,255 INFO L280 TraceCheckUtils]: 37: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,257 INFO L275 TraceCheckUtils]: 38: Hoare quadruple {3595#true} {3703#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,257 INFO L280 TraceCheckUtils]: 39: Hoare triple {3709#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,258 INFO L280 TraceCheckUtils]: 40: Hoare triple {3709#(<= 3 |fibo2_#in~n|)} assume true; {3709#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,259 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {3709#(<= 3 |fibo2_#in~n|)} {3595#true} #57#return; {3678#(<= 4 fibo1_~n)} is VALID [2020-07-08 12:14:18,260 INFO L280 TraceCheckUtils]: 42: Hoare triple {3678#(<= 4 fibo1_~n)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3678#(<= 4 fibo1_~n)} is VALID [2020-07-08 12:14:18,260 INFO L263 TraceCheckUtils]: 43: Hoare triple {3678#(<= 4 fibo1_~n)} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,260 INFO L280 TraceCheckUtils]: 44: Hoare triple {3595#true} ~n := #in~n; {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,261 INFO L280 TraceCheckUtils]: 45: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {3684#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:18,262 INFO L280 TraceCheckUtils]: 46: Hoare triple {3684#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,262 INFO L280 TraceCheckUtils]: 47: Hoare triple {3723#(<= |fibo2_#in~n| 1)} assume true; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,263 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {3723#(<= |fibo2_#in~n| 1)} {3678#(<= 4 fibo1_~n)} #59#return; {3596#false} is VALID [2020-07-08 12:14:18,263 INFO L280 TraceCheckUtils]: 49: Hoare triple {3596#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3596#false} is VALID [2020-07-08 12:14:18,264 INFO L280 TraceCheckUtils]: 50: Hoare triple {3596#false} assume true; {3596#false} is VALID [2020-07-08 12:14:18,264 INFO L275 TraceCheckUtils]: 51: Hoare quadruple {3596#false} {3599#(<= 4 main_~x~0)} #51#return; {3596#false} is VALID [2020-07-08 12:14:18,264 INFO L280 TraceCheckUtils]: 52: Hoare triple {3596#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {3596#false} is VALID [2020-07-08 12:14:18,264 INFO L280 TraceCheckUtils]: 53: Hoare triple {3596#false} assume 3 == ~result~0; {3596#false} is VALID [2020-07-08 12:14:18,264 INFO L280 TraceCheckUtils]: 54: Hoare triple {3596#false} assume !false; {3596#false} is VALID [2020-07-08 12:14:18,267 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 19 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2020-07-08 12:14:18,268 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [99328747] [2020-07-08 12:14:18,268 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1964431639] [2020-07-08 12:14:18,268 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:18,307 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,308 INFO L264 TraceCheckSpWp]: Trace formula consists of 124 conjuncts, 6 conjunts are in the unsatisfiable core [2020-07-08 12:14:18,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:18,327 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-08 12:14:18,450 INFO L263 TraceCheckUtils]: 0: Hoare triple {3595#true} call ULTIMATE.init(); {3595#true} is VALID [2020-07-08 12:14:18,450 INFO L280 TraceCheckUtils]: 1: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,450 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {3595#true} {3595#true} #47#return; {3595#true} is VALID [2020-07-08 12:14:18,450 INFO L263 TraceCheckUtils]: 3: Hoare triple {3595#true} call #t~ret5 := main(); {3595#true} is VALID [2020-07-08 12:14:18,451 INFO L280 TraceCheckUtils]: 4: Hoare triple {3595#true} ~x~0 := 4; {3599#(<= 4 main_~x~0)} is VALID [2020-07-08 12:14:18,451 INFO L263 TraceCheckUtils]: 5: Hoare triple {3599#(<= 4 main_~x~0)} call #t~ret4 := fibo1(~x~0); {3595#true} is VALID [2020-07-08 12:14:18,452 INFO L280 TraceCheckUtils]: 6: Hoare triple {3595#true} ~n := #in~n; {3745#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:18,452 INFO L280 TraceCheckUtils]: 7: Hoare triple {3745#(<= |fibo1_#in~n| fibo1_~n)} assume !(~n < 1); {3745#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:18,453 INFO L280 TraceCheckUtils]: 8: Hoare triple {3745#(<= |fibo1_#in~n| fibo1_~n)} assume !(1 == ~n); {3745#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:18,453 INFO L263 TraceCheckUtils]: 9: Hoare triple {3745#(<= |fibo1_#in~n| fibo1_~n)} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,453 INFO L280 TraceCheckUtils]: 10: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L280 TraceCheckUtils]: 11: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L280 TraceCheckUtils]: 12: Hoare triple {3595#true} assume !(1 == ~n); {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L263 TraceCheckUtils]: 13: Hoare triple {3595#true} call #t~ret2 := fibo1(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L280 TraceCheckUtils]: 14: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L280 TraceCheckUtils]: 15: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L280 TraceCheckUtils]: 16: Hoare triple {3595#true} assume !(1 == ~n); {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L263 TraceCheckUtils]: 17: Hoare triple {3595#true} call #t~ret0 := fibo2(~n - 1); {3595#true} is VALID [2020-07-08 12:14:18,454 INFO L280 TraceCheckUtils]: 18: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,455 INFO L280 TraceCheckUtils]: 19: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,455 INFO L280 TraceCheckUtils]: 20: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,455 INFO L280 TraceCheckUtils]: 21: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,455 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {3595#true} {3595#true} #57#return; {3595#true} is VALID [2020-07-08 12:14:18,455 INFO L280 TraceCheckUtils]: 23: Hoare triple {3595#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3595#true} is VALID [2020-07-08 12:14:18,455 INFO L263 TraceCheckUtils]: 24: Hoare triple {3595#true} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,455 INFO L280 TraceCheckUtils]: 25: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,456 INFO L280 TraceCheckUtils]: 26: Hoare triple {3595#true} assume ~n < 1;#res := 0; {3595#true} is VALID [2020-07-08 12:14:18,456 INFO L280 TraceCheckUtils]: 27: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,456 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {3595#true} {3595#true} #59#return; {3595#true} is VALID [2020-07-08 12:14:18,456 INFO L280 TraceCheckUtils]: 29: Hoare triple {3595#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3595#true} is VALID [2020-07-08 12:14:18,456 INFO L280 TraceCheckUtils]: 30: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,456 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {3595#true} {3595#true} #53#return; {3595#true} is VALID [2020-07-08 12:14:18,456 INFO L280 TraceCheckUtils]: 32: Hoare triple {3595#true} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {3595#true} is VALID [2020-07-08 12:14:18,457 INFO L263 TraceCheckUtils]: 33: Hoare triple {3595#true} call #t~ret3 := fibo1(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,457 INFO L280 TraceCheckUtils]: 34: Hoare triple {3595#true} ~n := #in~n; {3595#true} is VALID [2020-07-08 12:14:18,457 INFO L280 TraceCheckUtils]: 35: Hoare triple {3595#true} assume !(~n < 1); {3595#true} is VALID [2020-07-08 12:14:18,457 INFO L280 TraceCheckUtils]: 36: Hoare triple {3595#true} assume 1 == ~n;#res := 1; {3595#true} is VALID [2020-07-08 12:14:18,457 INFO L280 TraceCheckUtils]: 37: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,457 INFO L275 TraceCheckUtils]: 38: Hoare quadruple {3595#true} {3595#true} #55#return; {3595#true} is VALID [2020-07-08 12:14:18,457 INFO L280 TraceCheckUtils]: 39: Hoare triple {3595#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {3595#true} is VALID [2020-07-08 12:14:18,458 INFO L280 TraceCheckUtils]: 40: Hoare triple {3595#true} assume true; {3595#true} is VALID [2020-07-08 12:14:18,458 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {3595#true} {3745#(<= |fibo1_#in~n| fibo1_~n)} #57#return; {3745#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:18,459 INFO L280 TraceCheckUtils]: 42: Hoare triple {3745#(<= |fibo1_#in~n| fibo1_~n)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {3745#(<= |fibo1_#in~n| fibo1_~n)} is VALID [2020-07-08 12:14:18,459 INFO L263 TraceCheckUtils]: 43: Hoare triple {3745#(<= |fibo1_#in~n| fibo1_~n)} call #t~ret1 := fibo2(~n - 2); {3595#true} is VALID [2020-07-08 12:14:18,459 INFO L280 TraceCheckUtils]: 44: Hoare triple {3595#true} ~n := #in~n; {3860#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:18,460 INFO L280 TraceCheckUtils]: 45: Hoare triple {3860#(<= |fibo2_#in~n| fibo2_~n)} assume !(~n < 1); {3860#(<= |fibo2_#in~n| fibo2_~n)} is VALID [2020-07-08 12:14:18,460 INFO L280 TraceCheckUtils]: 46: Hoare triple {3860#(<= |fibo2_#in~n| fibo2_~n)} assume 1 == ~n;#res := 1; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,461 INFO L280 TraceCheckUtils]: 47: Hoare triple {3723#(<= |fibo2_#in~n| 1)} assume true; {3723#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:18,462 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {3723#(<= |fibo2_#in~n| 1)} {3745#(<= |fibo1_#in~n| fibo1_~n)} #59#return; {3873#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:18,462 INFO L280 TraceCheckUtils]: 49: Hoare triple {3873#(<= |fibo1_#in~n| 3)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {3873#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:18,462 INFO L280 TraceCheckUtils]: 50: Hoare triple {3873#(<= |fibo1_#in~n| 3)} assume true; {3873#(<= |fibo1_#in~n| 3)} is VALID [2020-07-08 12:14:18,463 INFO L275 TraceCheckUtils]: 51: Hoare quadruple {3873#(<= |fibo1_#in~n| 3)} {3599#(<= 4 main_~x~0)} #51#return; {3596#false} is VALID [2020-07-08 12:14:18,463 INFO L280 TraceCheckUtils]: 52: Hoare triple {3596#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {3596#false} is VALID [2020-07-08 12:14:18,463 INFO L280 TraceCheckUtils]: 53: Hoare triple {3596#false} assume 3 == ~result~0; {3596#false} is VALID [2020-07-08 12:14:18,463 INFO L280 TraceCheckUtils]: 54: Hoare triple {3596#false} assume !false; {3596#false} is VALID [2020-07-08 12:14:18,466 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 18 proven. 5 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2020-07-08 12:14:18,466 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-08 12:14:18,466 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 7] total 15 [2020-07-08 12:14:18,467 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1555205980] [2020-07-08 12:14:18,467 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 55 [2020-07-08 12:14:18,468 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:18,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2020-07-08 12:14:18,563 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:18,563 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2020-07-08 12:14:18,564 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:18,564 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2020-07-08 12:14:18,564 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=172, Unknown=0, NotChecked=0, Total=210 [2020-07-08 12:14:18,565 INFO L87 Difference]: Start difference. First operand 142 states and 244 transitions. Second operand 15 states. [2020-07-08 12:14:20,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:20,112 INFO L93 Difference]: Finished difference Result 304 states and 583 transitions. [2020-07-08 12:14:20,112 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-08 12:14:20,112 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 55 [2020-07-08 12:14:20,113 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:20,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2020-07-08 12:14:20,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 125 transitions. [2020-07-08 12:14:20,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2020-07-08 12:14:20,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 125 transitions. [2020-07-08 12:14:20,125 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 125 transitions. [2020-07-08 12:14:20,300 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:20,305 INFO L225 Difference]: With dead ends: 304 [2020-07-08 12:14:20,305 INFO L226 Difference]: Without dead ends: 101 [2020-07-08 12:14:20,308 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 69 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=73, Invalid=307, Unknown=0, NotChecked=0, Total=380 [2020-07-08 12:14:20,308 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2020-07-08 12:14:20,370 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 83. [2020-07-08 12:14:20,370 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:20,371 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand 83 states. [2020-07-08 12:14:20,371 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 83 states. [2020-07-08 12:14:20,371 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 83 states. [2020-07-08 12:14:20,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:20,381 INFO L93 Difference]: Finished difference Result 101 states and 156 transitions. [2020-07-08 12:14:20,381 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 156 transitions. [2020-07-08 12:14:20,384 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:20,384 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:20,384 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 101 states. [2020-07-08 12:14:20,384 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 101 states. [2020-07-08 12:14:20,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:20,392 INFO L93 Difference]: Finished difference Result 101 states and 156 transitions. [2020-07-08 12:14:20,392 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 156 transitions. [2020-07-08 12:14:20,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:20,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:20,394 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:20,394 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:20,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2020-07-08 12:14:20,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 126 transitions. [2020-07-08 12:14:20,400 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 126 transitions. Word has length 55 [2020-07-08 12:14:20,401 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:20,401 INFO L479 AbstractCegarLoop]: Abstraction has 83 states and 126 transitions. [2020-07-08 12:14:20,401 INFO L480 AbstractCegarLoop]: Interpolant automaton has 15 states. [2020-07-08 12:14:20,401 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 126 transitions. [2020-07-08 12:14:20,403 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2020-07-08 12:14:20,403 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:20,403 INFO L422 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:20,618 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,7 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:20,619 INFO L427 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:20,619 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:20,619 INFO L82 PathProgramCache]: Analyzing trace with hash -908952008, now seen corresponding path program 2 times [2020-07-08 12:14:20,619 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:20,620 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [765260764] [2020-07-08 12:14:20,620 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:20,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,678 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:20,678 INFO L275 TraceCheckUtils]: 1: Hoare quadruple {4604#true} {4604#true} #47#return; {4604#true} is VALID [2020-07-08 12:14:20,693 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,749 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,932 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,933 INFO L280 TraceCheckUtils]: 1: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,933 INFO L280 TraceCheckUtils]: 2: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:20,934 INFO L280 TraceCheckUtils]: 3: Hoare triple {4785#(<= |fibo2_#in~n| 1)} assume true; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:20,936 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4785#(<= |fibo2_#in~n| 1)} {4773#(= fibo1_~n |fibo1_#in~n|)} #57#return; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:20,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,947 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:20,948 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:20,949 INFO L280 TraceCheckUtils]: 2: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:20,950 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {4604#true} {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:20,951 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:20,952 INFO L280 TraceCheckUtils]: 1: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:20,953 INFO L280 TraceCheckUtils]: 2: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:20,953 INFO L263 TraceCheckUtils]: 3: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:20,954 INFO L280 TraceCheckUtils]: 4: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,955 INFO L280 TraceCheckUtils]: 5: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,956 INFO L280 TraceCheckUtils]: 6: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:20,957 INFO L280 TraceCheckUtils]: 7: Hoare triple {4785#(<= |fibo2_#in~n| 1)} assume true; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:20,958 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {4785#(<= |fibo2_#in~n| 1)} {4773#(= fibo1_~n |fibo1_#in~n|)} #57#return; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:20,959 INFO L280 TraceCheckUtils]: 9: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:20,960 INFO L263 TraceCheckUtils]: 10: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:20,960 INFO L280 TraceCheckUtils]: 11: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:20,961 INFO L280 TraceCheckUtils]: 12: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:20,961 INFO L280 TraceCheckUtils]: 13: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:20,963 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {4604#true} {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:20,963 INFO L280 TraceCheckUtils]: 15: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:20,964 INFO L280 TraceCheckUtils]: 16: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume true; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:20,966 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {4784#(<= |fibo1_#in~n| 2)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} is VALID [2020-07-08 12:14:20,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:20,976 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:20,976 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:20,977 INFO L280 TraceCheckUtils]: 2: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:20,977 INFO L280 TraceCheckUtils]: 3: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:20,979 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4604#true} {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} #55#return; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:20,980 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,981 INFO L280 TraceCheckUtils]: 1: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,982 INFO L280 TraceCheckUtils]: 2: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,982 INFO L263 TraceCheckUtils]: 3: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:20,983 INFO L280 TraceCheckUtils]: 4: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:20,983 INFO L280 TraceCheckUtils]: 5: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:20,984 INFO L280 TraceCheckUtils]: 6: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:20,985 INFO L263 TraceCheckUtils]: 7: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:20,985 INFO L280 TraceCheckUtils]: 8: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,987 INFO L280 TraceCheckUtils]: 9: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:20,988 INFO L280 TraceCheckUtils]: 10: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:20,988 INFO L280 TraceCheckUtils]: 11: Hoare triple {4785#(<= |fibo2_#in~n| 1)} assume true; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:20,990 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {4785#(<= |fibo2_#in~n| 1)} {4773#(= fibo1_~n |fibo1_#in~n|)} #57#return; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:20,991 INFO L280 TraceCheckUtils]: 13: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:20,992 INFO L263 TraceCheckUtils]: 14: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:20,992 INFO L280 TraceCheckUtils]: 15: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:20,992 INFO L280 TraceCheckUtils]: 16: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:20,993 INFO L280 TraceCheckUtils]: 17: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:20,995 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {4604#true} {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:20,995 INFO L280 TraceCheckUtils]: 19: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:20,996 INFO L280 TraceCheckUtils]: 20: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume true; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:20,998 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {4784#(<= |fibo1_#in~n| 2)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} is VALID [2020-07-08 12:14:20,999 INFO L280 TraceCheckUtils]: 22: Hoare triple {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} is VALID [2020-07-08 12:14:20,999 INFO L263 TraceCheckUtils]: 23: Hoare triple {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:20,999 INFO L280 TraceCheckUtils]: 24: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:20,999 INFO L280 TraceCheckUtils]: 25: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,000 INFO L280 TraceCheckUtils]: 26: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,000 INFO L280 TraceCheckUtils]: 27: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,002 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {4604#true} {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} #55#return; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,004 INFO L280 TraceCheckUtils]: 29: Hoare triple {4772#(<= |fibo2_#in~n| 3)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,004 INFO L280 TraceCheckUtils]: 30: Hoare triple {4772#(<= |fibo2_#in~n| 3)} assume true; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,006 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {4772#(<= |fibo2_#in~n| 3)} {4604#true} #57#return; {4714#(<= fibo1_~n 4)} is VALID [2020-07-08 12:14:21,019 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:21,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:21,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:21,280 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,280 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,281 INFO L280 TraceCheckUtils]: 2: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,281 INFO L280 TraceCheckUtils]: 3: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,283 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:21,300 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,300 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,300 INFO L280 TraceCheckUtils]: 2: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,303 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,305 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,306 INFO L280 TraceCheckUtils]: 1: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,307 INFO L280 TraceCheckUtils]: 2: Hoare triple {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,307 INFO L263 TraceCheckUtils]: 3: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,308 INFO L280 TraceCheckUtils]: 4: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,308 INFO L280 TraceCheckUtils]: 5: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,308 INFO L280 TraceCheckUtils]: 6: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,309 INFO L280 TraceCheckUtils]: 7: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,311 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,313 INFO L280 TraceCheckUtils]: 9: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,313 INFO L263 TraceCheckUtils]: 10: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,313 INFO L280 TraceCheckUtils]: 11: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,314 INFO L280 TraceCheckUtils]: 12: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,314 INFO L280 TraceCheckUtils]: 13: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,316 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,317 INFO L280 TraceCheckUtils]: 15: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,319 INFO L280 TraceCheckUtils]: 16: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume true; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,320 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {4822#(<= 2 |fibo1_#in~n|)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:21,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:21,332 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,333 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,333 INFO L280 TraceCheckUtils]: 2: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,334 INFO L280 TraceCheckUtils]: 3: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,335 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4604#true} {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,335 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,336 INFO L280 TraceCheckUtils]: 1: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,337 INFO L280 TraceCheckUtils]: 2: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,337 INFO L263 TraceCheckUtils]: 3: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,337 INFO L280 TraceCheckUtils]: 4: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,338 INFO L280 TraceCheckUtils]: 5: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,340 INFO L280 TraceCheckUtils]: 6: Hoare triple {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,340 INFO L263 TraceCheckUtils]: 7: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,340 INFO L280 TraceCheckUtils]: 8: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,341 INFO L280 TraceCheckUtils]: 9: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,341 INFO L280 TraceCheckUtils]: 10: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,341 INFO L280 TraceCheckUtils]: 11: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,343 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,344 INFO L280 TraceCheckUtils]: 13: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,344 INFO L263 TraceCheckUtils]: 14: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,344 INFO L280 TraceCheckUtils]: 15: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,344 INFO L280 TraceCheckUtils]: 16: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,345 INFO L280 TraceCheckUtils]: 17: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,346 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,349 INFO L280 TraceCheckUtils]: 19: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,350 INFO L280 TraceCheckUtils]: 20: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume true; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,352 INFO L275 TraceCheckUtils]: 21: Hoare quadruple {4822#(<= 2 |fibo1_#in~n|)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:21,353 INFO L280 TraceCheckUtils]: 22: Hoare triple {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:21,353 INFO L263 TraceCheckUtils]: 23: Hoare triple {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,353 INFO L280 TraceCheckUtils]: 24: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,353 INFO L280 TraceCheckUtils]: 25: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,353 INFO L280 TraceCheckUtils]: 26: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,354 INFO L280 TraceCheckUtils]: 27: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,355 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {4604#true} {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,355 INFO L280 TraceCheckUtils]: 29: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,356 INFO L280 TraceCheckUtils]: 30: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume true; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,357 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {4810#(<= 3 |fibo2_#in~n|)} {4714#(<= fibo1_~n 4)} #59#return; {4605#false} is VALID [2020-07-08 12:14:21,359 INFO L280 TraceCheckUtils]: 0: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,359 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,360 INFO L280 TraceCheckUtils]: 2: Hoare triple {4604#true} assume !(1 == ~n); {4604#true} is VALID [2020-07-08 12:14:21,360 INFO L263 TraceCheckUtils]: 3: Hoare triple {4604#true} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,362 INFO L280 TraceCheckUtils]: 4: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,363 INFO L280 TraceCheckUtils]: 5: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,363 INFO L280 TraceCheckUtils]: 6: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,364 INFO L263 TraceCheckUtils]: 7: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,364 INFO L280 TraceCheckUtils]: 8: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,365 INFO L280 TraceCheckUtils]: 9: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,366 INFO L280 TraceCheckUtils]: 10: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,367 INFO L263 TraceCheckUtils]: 11: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,368 INFO L280 TraceCheckUtils]: 12: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,368 INFO L280 TraceCheckUtils]: 13: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,369 INFO L280 TraceCheckUtils]: 14: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:21,370 INFO L280 TraceCheckUtils]: 15: Hoare triple {4785#(<= |fibo2_#in~n| 1)} assume true; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:21,371 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {4785#(<= |fibo2_#in~n| 1)} {4773#(= fibo1_~n |fibo1_#in~n|)} #57#return; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,374 INFO L280 TraceCheckUtils]: 17: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,375 INFO L263 TraceCheckUtils]: 18: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,375 INFO L280 TraceCheckUtils]: 19: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,375 INFO L280 TraceCheckUtils]: 20: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,376 INFO L280 TraceCheckUtils]: 21: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,377 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {4604#true} {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:21,378 INFO L280 TraceCheckUtils]: 23: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:21,379 INFO L280 TraceCheckUtils]: 24: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume true; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:21,380 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {4784#(<= |fibo1_#in~n| 2)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} is VALID [2020-07-08 12:14:21,381 INFO L280 TraceCheckUtils]: 26: Hoare triple {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} is VALID [2020-07-08 12:14:21,382 INFO L263 TraceCheckUtils]: 27: Hoare triple {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,382 INFO L280 TraceCheckUtils]: 28: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,382 INFO L280 TraceCheckUtils]: 29: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,382 INFO L280 TraceCheckUtils]: 30: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,382 INFO L280 TraceCheckUtils]: 31: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,384 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {4604#true} {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} #55#return; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,385 INFO L280 TraceCheckUtils]: 33: Hoare triple {4772#(<= |fibo2_#in~n| 3)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,386 INFO L280 TraceCheckUtils]: 34: Hoare triple {4772#(<= |fibo2_#in~n| 3)} assume true; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,387 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {4772#(<= |fibo2_#in~n| 3)} {4604#true} #57#return; {4714#(<= fibo1_~n 4)} is VALID [2020-07-08 12:14:21,388 INFO L280 TraceCheckUtils]: 36: Hoare triple {4714#(<= fibo1_~n 4)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4714#(<= fibo1_~n 4)} is VALID [2020-07-08 12:14:21,388 INFO L263 TraceCheckUtils]: 37: Hoare triple {4714#(<= fibo1_~n 4)} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,390 INFO L280 TraceCheckUtils]: 38: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,390 INFO L280 TraceCheckUtils]: 39: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,391 INFO L280 TraceCheckUtils]: 40: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,391 INFO L263 TraceCheckUtils]: 41: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,392 INFO L280 TraceCheckUtils]: 42: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,393 INFO L280 TraceCheckUtils]: 43: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,394 INFO L280 TraceCheckUtils]: 44: Hoare triple {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,394 INFO L263 TraceCheckUtils]: 45: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,395 INFO L280 TraceCheckUtils]: 46: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,395 INFO L280 TraceCheckUtils]: 47: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,395 INFO L280 TraceCheckUtils]: 48: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,395 INFO L280 TraceCheckUtils]: 49: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,398 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,400 INFO L280 TraceCheckUtils]: 51: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,400 INFO L263 TraceCheckUtils]: 52: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,400 INFO L280 TraceCheckUtils]: 53: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,400 INFO L280 TraceCheckUtils]: 54: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,401 INFO L280 TraceCheckUtils]: 55: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,403 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,403 INFO L280 TraceCheckUtils]: 57: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,404 INFO L280 TraceCheckUtils]: 58: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume true; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,406 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {4822#(<= 2 |fibo1_#in~n|)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:21,407 INFO L280 TraceCheckUtils]: 60: Hoare triple {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:21,408 INFO L263 TraceCheckUtils]: 61: Hoare triple {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,408 INFO L280 TraceCheckUtils]: 62: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,408 INFO L280 TraceCheckUtils]: 63: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,409 INFO L280 TraceCheckUtils]: 64: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,409 INFO L280 TraceCheckUtils]: 65: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,410 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {4604#true} {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,411 INFO L280 TraceCheckUtils]: 67: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,412 INFO L280 TraceCheckUtils]: 68: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume true; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,413 INFO L275 TraceCheckUtils]: 69: Hoare quadruple {4810#(<= 3 |fibo2_#in~n|)} {4714#(<= fibo1_~n 4)} #59#return; {4605#false} is VALID [2020-07-08 12:14:21,414 INFO L280 TraceCheckUtils]: 70: Hoare triple {4605#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4605#false} is VALID [2020-07-08 12:14:21,414 INFO L280 TraceCheckUtils]: 71: Hoare triple {4605#false} assume true; {4605#false} is VALID [2020-07-08 12:14:21,414 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {4605#false} {4608#(<= main_~x~0 4)} #51#return; {4605#false} is VALID [2020-07-08 12:14:21,423 INFO L263 TraceCheckUtils]: 0: Hoare triple {4604#true} call ULTIMATE.init(); {4604#true} is VALID [2020-07-08 12:14:21,423 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,423 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {4604#true} {4604#true} #47#return; {4604#true} is VALID [2020-07-08 12:14:21,424 INFO L263 TraceCheckUtils]: 3: Hoare triple {4604#true} call #t~ret5 := main(); {4604#true} is VALID [2020-07-08 12:14:21,426 INFO L280 TraceCheckUtils]: 4: Hoare triple {4604#true} ~x~0 := 4; {4608#(<= main_~x~0 4)} is VALID [2020-07-08 12:14:21,427 INFO L263 TraceCheckUtils]: 5: Hoare triple {4608#(<= main_~x~0 4)} call #t~ret4 := fibo1(~x~0); {4604#true} is VALID [2020-07-08 12:14:21,427 INFO L280 TraceCheckUtils]: 6: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,427 INFO L280 TraceCheckUtils]: 7: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,427 INFO L280 TraceCheckUtils]: 8: Hoare triple {4604#true} assume !(1 == ~n); {4604#true} is VALID [2020-07-08 12:14:21,428 INFO L263 TraceCheckUtils]: 9: Hoare triple {4604#true} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,428 INFO L280 TraceCheckUtils]: 10: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,429 INFO L280 TraceCheckUtils]: 11: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,430 INFO L280 TraceCheckUtils]: 12: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,430 INFO L263 TraceCheckUtils]: 13: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,431 INFO L280 TraceCheckUtils]: 14: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,432 INFO L280 TraceCheckUtils]: 15: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,432 INFO L280 TraceCheckUtils]: 16: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,433 INFO L263 TraceCheckUtils]: 17: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,433 INFO L280 TraceCheckUtils]: 18: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,434 INFO L280 TraceCheckUtils]: 19: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,438 INFO L280 TraceCheckUtils]: 20: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:21,438 INFO L280 TraceCheckUtils]: 21: Hoare triple {4785#(<= |fibo2_#in~n| 1)} assume true; {4785#(<= |fibo2_#in~n| 1)} is VALID [2020-07-08 12:14:21,440 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {4785#(<= |fibo2_#in~n| 1)} {4773#(= fibo1_~n |fibo1_#in~n|)} #57#return; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,441 INFO L280 TraceCheckUtils]: 23: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,441 INFO L263 TraceCheckUtils]: 24: Hoare triple {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,441 INFO L280 TraceCheckUtils]: 25: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,442 INFO L280 TraceCheckUtils]: 26: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,442 INFO L280 TraceCheckUtils]: 27: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,443 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {4604#true} {4779#(and (<= fibo1_~n 2) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:21,444 INFO L280 TraceCheckUtils]: 29: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:21,444 INFO L280 TraceCheckUtils]: 30: Hoare triple {4784#(<= |fibo1_#in~n| 2)} assume true; {4784#(<= |fibo1_#in~n| 2)} is VALID [2020-07-08 12:14:21,446 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {4784#(<= |fibo1_#in~n| 2)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} is VALID [2020-07-08 12:14:21,446 INFO L280 TraceCheckUtils]: 32: Hoare triple {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} is VALID [2020-07-08 12:14:21,446 INFO L263 TraceCheckUtils]: 33: Hoare triple {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,447 INFO L280 TraceCheckUtils]: 34: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,447 INFO L280 TraceCheckUtils]: 35: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,447 INFO L280 TraceCheckUtils]: 36: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,447 INFO L280 TraceCheckUtils]: 37: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,448 INFO L275 TraceCheckUtils]: 38: Hoare quadruple {4604#true} {4766#(and (= fibo2_~n |fibo2_#in~n|) (<= fibo2_~n 3))} #55#return; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,449 INFO L280 TraceCheckUtils]: 39: Hoare triple {4772#(<= |fibo2_#in~n| 3)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,450 INFO L280 TraceCheckUtils]: 40: Hoare triple {4772#(<= |fibo2_#in~n| 3)} assume true; {4772#(<= |fibo2_#in~n| 3)} is VALID [2020-07-08 12:14:21,451 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {4772#(<= |fibo2_#in~n| 3)} {4604#true} #57#return; {4714#(<= fibo1_~n 4)} is VALID [2020-07-08 12:14:21,451 INFO L280 TraceCheckUtils]: 42: Hoare triple {4714#(<= fibo1_~n 4)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4714#(<= fibo1_~n 4)} is VALID [2020-07-08 12:14:21,452 INFO L263 TraceCheckUtils]: 43: Hoare triple {4714#(<= fibo1_~n 4)} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,452 INFO L280 TraceCheckUtils]: 44: Hoare triple {4604#true} ~n := #in~n; {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,453 INFO L280 TraceCheckUtils]: 45: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,453 INFO L280 TraceCheckUtils]: 46: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {4747#(= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,453 INFO L263 TraceCheckUtils]: 47: Hoare triple {4747#(= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,454 INFO L280 TraceCheckUtils]: 48: Hoare triple {4604#true} ~n := #in~n; {4773#(= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,456 INFO L280 TraceCheckUtils]: 49: Hoare triple {4773#(= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,457 INFO L280 TraceCheckUtils]: 50: Hoare triple {4811#(and (< 0 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume !(1 == ~n); {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,457 INFO L263 TraceCheckUtils]: 51: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,457 INFO L280 TraceCheckUtils]: 52: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,457 INFO L280 TraceCheckUtils]: 53: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,457 INFO L280 TraceCheckUtils]: 54: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,458 INFO L280 TraceCheckUtils]: 55: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,459 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #57#return; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,459 INFO L280 TraceCheckUtils]: 57: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} is VALID [2020-07-08 12:14:21,460 INFO L263 TraceCheckUtils]: 58: Hoare triple {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,460 INFO L280 TraceCheckUtils]: 59: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,460 INFO L280 TraceCheckUtils]: 60: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,460 INFO L280 TraceCheckUtils]: 61: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,461 INFO L275 TraceCheckUtils]: 62: Hoare quadruple {4604#true} {4812#(and (< 1 fibo1_~n) (= fibo1_~n |fibo1_#in~n|))} #59#return; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,462 INFO L280 TraceCheckUtils]: 63: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,463 INFO L280 TraceCheckUtils]: 64: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume true; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,464 INFO L275 TraceCheckUtils]: 65: Hoare quadruple {4822#(<= 2 |fibo1_#in~n|)} {4747#(= fibo2_~n |fibo2_#in~n|)} #53#return; {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:21,465 INFO L280 TraceCheckUtils]: 66: Hoare triple {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} is VALID [2020-07-08 12:14:21,466 INFO L263 TraceCheckUtils]: 67: Hoare triple {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,466 INFO L280 TraceCheckUtils]: 68: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,466 INFO L280 TraceCheckUtils]: 69: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,466 INFO L280 TraceCheckUtils]: 70: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,466 INFO L280 TraceCheckUtils]: 71: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,467 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {4604#true} {4804#(and (= fibo2_~n |fibo2_#in~n|) (<= 3 fibo2_~n))} #55#return; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,468 INFO L280 TraceCheckUtils]: 73: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,469 INFO L280 TraceCheckUtils]: 74: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume true; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,470 INFO L275 TraceCheckUtils]: 75: Hoare quadruple {4810#(<= 3 |fibo2_#in~n|)} {4714#(<= fibo1_~n 4)} #59#return; {4605#false} is VALID [2020-07-08 12:14:21,470 INFO L280 TraceCheckUtils]: 76: Hoare triple {4605#false} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4605#false} is VALID [2020-07-08 12:14:21,470 INFO L280 TraceCheckUtils]: 77: Hoare triple {4605#false} assume true; {4605#false} is VALID [2020-07-08 12:14:21,470 INFO L275 TraceCheckUtils]: 78: Hoare quadruple {4605#false} {4608#(<= main_~x~0 4)} #51#return; {4605#false} is VALID [2020-07-08 12:14:21,471 INFO L280 TraceCheckUtils]: 79: Hoare triple {4605#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {4605#false} is VALID [2020-07-08 12:14:21,471 INFO L280 TraceCheckUtils]: 80: Hoare triple {4605#false} assume 3 == ~result~0; {4605#false} is VALID [2020-07-08 12:14:21,471 INFO L280 TraceCheckUtils]: 81: Hoare triple {4605#false} assume !false; {4605#false} is VALID [2020-07-08 12:14:21,478 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 31 proven. 51 refuted. 0 times theorem prover too weak. 50 trivial. 0 not checked. [2020-07-08 12:14:21,478 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [765260764] [2020-07-08 12:14:21,479 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1165165817] [2020-07-08 12:14:21,479 INFO L92 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:21,531 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2020-07-08 12:14:21,532 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2020-07-08 12:14:21,533 INFO L264 TraceCheckSpWp]: Trace formula consists of 184 conjuncts, 10 conjunts are in the unsatisfiable core [2020-07-08 12:14:21,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 12:14:21,553 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-08 12:14:21,789 INFO L263 TraceCheckUtils]: 0: Hoare triple {4604#true} call ULTIMATE.init(); {4604#true} is VALID [2020-07-08 12:14:21,789 INFO L280 TraceCheckUtils]: 1: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,789 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {4604#true} {4604#true} #47#return; {4604#true} is VALID [2020-07-08 12:14:21,790 INFO L263 TraceCheckUtils]: 3: Hoare triple {4604#true} call #t~ret5 := main(); {4604#true} is VALID [2020-07-08 12:14:21,790 INFO L280 TraceCheckUtils]: 4: Hoare triple {4604#true} ~x~0 := 4; {4608#(<= main_~x~0 4)} is VALID [2020-07-08 12:14:21,791 INFO L263 TraceCheckUtils]: 5: Hoare triple {4608#(<= main_~x~0 4)} call #t~ret4 := fibo1(~x~0); {4604#true} is VALID [2020-07-08 12:14:21,791 INFO L280 TraceCheckUtils]: 6: Hoare triple {4604#true} ~n := #in~n; {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,792 INFO L280 TraceCheckUtils]: 7: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,792 INFO L280 TraceCheckUtils]: 8: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,792 INFO L263 TraceCheckUtils]: 9: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,792 INFO L280 TraceCheckUtils]: 10: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,792 INFO L280 TraceCheckUtils]: 11: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,792 INFO L280 TraceCheckUtils]: 12: Hoare triple {4604#true} assume !(1 == ~n); {4604#true} is VALID [2020-07-08 12:14:21,793 INFO L263 TraceCheckUtils]: 13: Hoare triple {4604#true} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,793 INFO L280 TraceCheckUtils]: 14: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,793 INFO L280 TraceCheckUtils]: 15: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,793 INFO L280 TraceCheckUtils]: 16: Hoare triple {4604#true} assume !(1 == ~n); {4604#true} is VALID [2020-07-08 12:14:21,794 INFO L263 TraceCheckUtils]: 17: Hoare triple {4604#true} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,794 INFO L280 TraceCheckUtils]: 18: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,794 INFO L280 TraceCheckUtils]: 19: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,794 INFO L280 TraceCheckUtils]: 20: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,794 INFO L280 TraceCheckUtils]: 21: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,795 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {4604#true} {4604#true} #57#return; {4604#true} is VALID [2020-07-08 12:14:21,795 INFO L280 TraceCheckUtils]: 23: Hoare triple {4604#true} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4604#true} is VALID [2020-07-08 12:14:21,795 INFO L263 TraceCheckUtils]: 24: Hoare triple {4604#true} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,795 INFO L280 TraceCheckUtils]: 25: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,796 INFO L280 TraceCheckUtils]: 26: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,796 INFO L280 TraceCheckUtils]: 27: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,796 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {4604#true} {4604#true} #59#return; {4604#true} is VALID [2020-07-08 12:14:21,796 INFO L280 TraceCheckUtils]: 29: Hoare triple {4604#true} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4604#true} is VALID [2020-07-08 12:14:21,796 INFO L280 TraceCheckUtils]: 30: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,797 INFO L275 TraceCheckUtils]: 31: Hoare quadruple {4604#true} {4604#true} #53#return; {4604#true} is VALID [2020-07-08 12:14:21,797 INFO L280 TraceCheckUtils]: 32: Hoare triple {4604#true} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4604#true} is VALID [2020-07-08 12:14:21,797 INFO L263 TraceCheckUtils]: 33: Hoare triple {4604#true} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,797 INFO L280 TraceCheckUtils]: 34: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,797 INFO L280 TraceCheckUtils]: 35: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,797 INFO L280 TraceCheckUtils]: 36: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,798 INFO L280 TraceCheckUtils]: 37: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,798 INFO L275 TraceCheckUtils]: 38: Hoare quadruple {4604#true} {4604#true} #55#return; {4604#true} is VALID [2020-07-08 12:14:21,798 INFO L280 TraceCheckUtils]: 39: Hoare triple {4604#true} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4604#true} is VALID [2020-07-08 12:14:21,798 INFO L280 TraceCheckUtils]: 40: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,800 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {4604#true} {4844#(<= fibo1_~n |fibo1_#in~n|)} #57#return; {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,809 INFO L280 TraceCheckUtils]: 42: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,809 INFO L263 TraceCheckUtils]: 43: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,811 INFO L280 TraceCheckUtils]: 44: Hoare triple {4604#true} ~n := #in~n; {4959#(<= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,813 INFO L280 TraceCheckUtils]: 45: Hoare triple {4959#(<= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4959#(<= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,817 INFO L280 TraceCheckUtils]: 46: Hoare triple {4959#(<= fibo2_~n |fibo2_#in~n|)} assume !(1 == ~n); {4959#(<= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,818 INFO L263 TraceCheckUtils]: 47: Hoare triple {4959#(<= fibo2_~n |fibo2_#in~n|)} call #t~ret2 := fibo1(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,819 INFO L280 TraceCheckUtils]: 48: Hoare triple {4604#true} ~n := #in~n; {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,819 INFO L280 TraceCheckUtils]: 49: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} assume !(~n < 1); {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,820 INFO L280 TraceCheckUtils]: 50: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} assume !(1 == ~n); {4844#(<= fibo1_~n |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,820 INFO L263 TraceCheckUtils]: 51: Hoare triple {4844#(<= fibo1_~n |fibo1_#in~n|)} call #t~ret0 := fibo2(~n - 1); {4604#true} is VALID [2020-07-08 12:14:21,829 INFO L280 TraceCheckUtils]: 52: Hoare triple {4604#true} ~n := #in~n; {4959#(<= fibo2_~n |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,830 INFO L280 TraceCheckUtils]: 53: Hoare triple {4959#(<= fibo2_~n |fibo2_#in~n|)} assume !(~n < 1); {4987#(<= 1 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,830 INFO L280 TraceCheckUtils]: 54: Hoare triple {4987#(<= 1 |fibo2_#in~n|)} assume 1 == ~n;#res := 1; {4987#(<= 1 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,831 INFO L280 TraceCheckUtils]: 55: Hoare triple {4987#(<= 1 |fibo2_#in~n|)} assume true; {4987#(<= 1 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,832 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {4987#(<= 1 |fibo2_#in~n|)} {4844#(<= fibo1_~n |fibo1_#in~n|)} #57#return; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,833 INFO L280 TraceCheckUtils]: 57: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret0 && #t~ret0 <= 2147483647; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,833 INFO L263 TraceCheckUtils]: 58: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} call #t~ret1 := fibo2(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,833 INFO L280 TraceCheckUtils]: 59: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,834 INFO L280 TraceCheckUtils]: 60: Hoare triple {4604#true} assume ~n < 1;#res := 0; {4604#true} is VALID [2020-07-08 12:14:21,834 INFO L280 TraceCheckUtils]: 61: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,835 INFO L275 TraceCheckUtils]: 62: Hoare quadruple {4604#true} {4822#(<= 2 |fibo1_#in~n|)} #59#return; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,836 INFO L280 TraceCheckUtils]: 63: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,837 INFO L280 TraceCheckUtils]: 64: Hoare triple {4822#(<= 2 |fibo1_#in~n|)} assume true; {4822#(<= 2 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,838 INFO L275 TraceCheckUtils]: 65: Hoare quadruple {4822#(<= 2 |fibo1_#in~n|)} {4959#(<= fibo2_~n |fibo2_#in~n|)} #53#return; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,839 INFO L280 TraceCheckUtils]: 66: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,839 INFO L263 TraceCheckUtils]: 67: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} call #t~ret3 := fibo1(~n - 2); {4604#true} is VALID [2020-07-08 12:14:21,839 INFO L280 TraceCheckUtils]: 68: Hoare triple {4604#true} ~n := #in~n; {4604#true} is VALID [2020-07-08 12:14:21,839 INFO L280 TraceCheckUtils]: 69: Hoare triple {4604#true} assume !(~n < 1); {4604#true} is VALID [2020-07-08 12:14:21,840 INFO L280 TraceCheckUtils]: 70: Hoare triple {4604#true} assume 1 == ~n;#res := 1; {4604#true} is VALID [2020-07-08 12:14:21,840 INFO L280 TraceCheckUtils]: 71: Hoare triple {4604#true} assume true; {4604#true} is VALID [2020-07-08 12:14:21,841 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {4604#true} {4810#(<= 3 |fibo2_#in~n|)} #55#return; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,841 INFO L280 TraceCheckUtils]: 73: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume -2147483648 <= #t~ret3 && #t~ret3 <= 2147483647;#res := #t~ret2 + #t~ret3;havoc #t~ret3;havoc #t~ret2; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,842 INFO L280 TraceCheckUtils]: 74: Hoare triple {4810#(<= 3 |fibo2_#in~n|)} assume true; {4810#(<= 3 |fibo2_#in~n|)} is VALID [2020-07-08 12:14:21,843 INFO L275 TraceCheckUtils]: 75: Hoare quadruple {4810#(<= 3 |fibo2_#in~n|)} {4844#(<= fibo1_~n |fibo1_#in~n|)} #59#return; {5054#(<= 5 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,844 INFO L280 TraceCheckUtils]: 76: Hoare triple {5054#(<= 5 |fibo1_#in~n|)} assume -2147483648 <= #t~ret1 && #t~ret1 <= 2147483647;#res := #t~ret0 + #t~ret1;havoc #t~ret0;havoc #t~ret1; {5054#(<= 5 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,844 INFO L280 TraceCheckUtils]: 77: Hoare triple {5054#(<= 5 |fibo1_#in~n|)} assume true; {5054#(<= 5 |fibo1_#in~n|)} is VALID [2020-07-08 12:14:21,845 INFO L275 TraceCheckUtils]: 78: Hoare quadruple {5054#(<= 5 |fibo1_#in~n|)} {4608#(<= main_~x~0 4)} #51#return; {4605#false} is VALID [2020-07-08 12:14:21,845 INFO L280 TraceCheckUtils]: 79: Hoare triple {4605#false} assume -2147483648 <= #t~ret4 && #t~ret4 <= 2147483647;~result~0 := #t~ret4;havoc #t~ret4; {4605#false} is VALID [2020-07-08 12:14:21,845 INFO L280 TraceCheckUtils]: 80: Hoare triple {4605#false} assume 3 == ~result~0; {4605#false} is VALID [2020-07-08 12:14:21,845 INFO L280 TraceCheckUtils]: 81: Hoare triple {4605#false} assume !false; {4605#false} is VALID [2020-07-08 12:14:21,849 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 54 proven. 18 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2020-07-08 12:14:21,850 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-08 12:14:21,850 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 9] total 20 [2020-07-08 12:14:21,850 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2050271269] [2020-07-08 12:14:21,851 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 82 [2020-07-08 12:14:21,856 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 12:14:21,857 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2020-07-08 12:14:21,991 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:21,992 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2020-07-08 12:14:21,992 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-08 12:14:21,993 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2020-07-08 12:14:21,993 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=321, Unknown=0, NotChecked=0, Total=380 [2020-07-08 12:14:21,994 INFO L87 Difference]: Start difference. First operand 83 states and 126 transitions. Second operand 20 states. [2020-07-08 12:14:23,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:23,985 INFO L93 Difference]: Finished difference Result 182 states and 307 transitions. [2020-07-08 12:14:23,986 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2020-07-08 12:14:23,986 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 82 [2020-07-08 12:14:23,986 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 12:14:23,987 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2020-07-08 12:14:23,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 144 transitions. [2020-07-08 12:14:23,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2020-07-08 12:14:23,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 144 transitions. [2020-07-08 12:14:23,996 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 144 transitions. [2020-07-08 12:14:24,212 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 12:14:24,216 INFO L225 Difference]: With dead ends: 182 [2020-07-08 12:14:24,217 INFO L226 Difference]: Without dead ends: 92 [2020-07-08 12:14:24,219 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 130 GetRequests, 102 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 173 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=144, Invalid=726, Unknown=0, NotChecked=0, Total=870 [2020-07-08 12:14:24,219 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2020-07-08 12:14:24,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 83. [2020-07-08 12:14:24,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 12:14:24,269 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand 83 states. [2020-07-08 12:14:24,269 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand 83 states. [2020-07-08 12:14:24,269 INFO L87 Difference]: Start difference. First operand 92 states. Second operand 83 states. [2020-07-08 12:14:24,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:24,275 INFO L93 Difference]: Finished difference Result 92 states and 122 transitions. [2020-07-08 12:14:24,275 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 122 transitions. [2020-07-08 12:14:24,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:24,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:24,276 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 92 states. [2020-07-08 12:14:24,276 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 92 states. [2020-07-08 12:14:24,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 12:14:24,280 INFO L93 Difference]: Finished difference Result 92 states and 122 transitions. [2020-07-08 12:14:24,280 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 122 transitions. [2020-07-08 12:14:24,281 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 12:14:24,281 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 12:14:24,282 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 12:14:24,282 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 12:14:24,282 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2020-07-08 12:14:24,285 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 109 transitions. [2020-07-08 12:14:24,285 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 109 transitions. Word has length 82 [2020-07-08 12:14:24,285 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 12:14:24,286 INFO L479 AbstractCegarLoop]: Abstraction has 83 states and 109 transitions. [2020-07-08 12:14:24,286 INFO L480 AbstractCegarLoop]: Interpolant automaton has 20 states. [2020-07-08 12:14:24,286 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 109 transitions. [2020-07-08 12:14:24,287 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2020-07-08 12:14:24,287 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 12:14:24,287 INFO L422 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 12:14:24,502 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,8 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-08 12:14:24,503 INFO L427 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 12:14:24,503 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 12:14:24,503 INFO L82 PathProgramCache]: Analyzing trace with hash -1156896337, now seen corresponding path program 1 times [2020-07-08 12:14:24,504 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-08 12:14:24,504 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2026406690] [2020-07-08 12:14:24,505 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 12:14:24,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-08 12:14:24,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-08 12:14:24,552 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-08 12:14:24,552 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-08 12:14:24,553 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-08 12:14:24,590 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: fibo2ENTRY has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: fibo1ENTRY has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2020-07-08 12:14:24,591 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: L18 has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: L18 has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: fibo2FINAL has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: L20 has no Hoare annotation [2020-07-08 12:14:24,592 WARN L170 areAnnotationChecker]: L20 has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: fibo1FINAL has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: fibo2EXIT has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: fibo2EXIT has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: L23 has no Hoare annotation [2020-07-08 12:14:24,593 WARN L170 areAnnotationChecker]: L23 has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: fibo1EXIT has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: fibo1EXIT has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: fibo1EXIT has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2020-07-08 12:14:24,594 WARN L170 areAnnotationChecker]: L13-1 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: L13-3 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: L23-3 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: L13-2 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: L13-2 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: L23-2 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: L23-2 has no Hoare annotation [2020-07-08 12:14:24,595 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2020-07-08 12:14:24,596 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2020-07-08 12:14:24,598 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.07 12:14:24 BoogieIcfgContainer [2020-07-08 12:14:24,599 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-08 12:14:24,602 INFO L168 Benchmark]: Toolchain (without parser) took 20528.51 ms. Allocated memory was 142.6 MB in the beginning and 415.8 MB in the end (delta: 273.2 MB). Free memory was 100.9 MB in the beginning and 109.5 MB in the end (delta: -8.5 MB). Peak memory consumption was 264.6 MB. Max. memory is 7.1 GB. [2020-07-08 12:14:24,603 INFO L168 Benchmark]: CDTParser took 1.29 ms. Allocated memory is still 142.6 MB. Free memory was 118.8 MB in the beginning and 118.6 MB in the end (delta: 210.0 kB). Peak memory consumption was 210.0 kB. Max. memory is 7.1 GB. [2020-07-08 12:14:24,603 INFO L168 Benchmark]: CACSL2BoogieTranslator took 312.11 ms. Allocated memory is still 142.6 MB. Free memory was 100.7 MB in the beginning and 90.5 MB in the end (delta: 10.3 MB). Peak memory consumption was 10.3 MB. Max. memory is 7.1 GB. [2020-07-08 12:14:24,604 INFO L168 Benchmark]: Boogie Preprocessor took 138.48 ms. Allocated memory was 142.6 MB in the beginning and 200.3 MB in the end (delta: 57.7 MB). Free memory was 90.5 MB in the beginning and 179.1 MB in the end (delta: -88.6 MB). Peak memory consumption was 10.6 MB. Max. memory is 7.1 GB. [2020-07-08 12:14:24,604 INFO L168 Benchmark]: RCFGBuilder took 459.32 ms. Allocated memory is still 200.3 MB. Free memory was 179.1 MB in the beginning and 159.5 MB in the end (delta: 19.6 MB). Peak memory consumption was 19.6 MB. Max. memory is 7.1 GB. [2020-07-08 12:14:24,605 INFO L168 Benchmark]: TraceAbstraction took 19611.62 ms. Allocated memory was 200.3 MB in the beginning and 415.8 MB in the end (delta: 215.5 MB). Free memory was 158.8 MB in the beginning and 109.5 MB in the end (delta: 49.3 MB). Peak memory consumption was 264.8 MB. Max. memory is 7.1 GB. [2020-07-08 12:14:24,608 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 1.29 ms. Allocated memory is still 142.6 MB. Free memory was 118.8 MB in the beginning and 118.6 MB in the end (delta: 210.0 kB). Peak memory consumption was 210.0 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 312.11 ms. Allocated memory is still 142.6 MB. Free memory was 100.7 MB in the beginning and 90.5 MB in the end (delta: 10.3 MB). Peak memory consumption was 10.3 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 138.48 ms. Allocated memory was 142.6 MB in the beginning and 200.3 MB in the end (delta: 57.7 MB). Free memory was 90.5 MB in the beginning and 179.1 MB in the end (delta: -88.6 MB). Peak memory consumption was 10.6 MB. Max. memory is 7.1 GB. * RCFGBuilder took 459.32 ms. Allocated memory is still 200.3 MB. Free memory was 179.1 MB in the beginning and 159.5 MB in the end (delta: 19.6 MB). Peak memory consumption was 19.6 MB. Max. memory is 7.1 GB. * TraceAbstraction took 19611.62 ms. Allocated memory was 200.3 MB in the beginning and 415.8 MB in the end (delta: 215.5 MB). Free memory was 158.8 MB in the beginning and 109.5 MB in the end (delta: 49.3 MB). Peak memory consumption was 264.8 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 39]: a call of __VERIFIER_error() is reachable a call of __VERIFIER_error() is reachable We found a FailurePath: [L36] int x = 4; VAL [x=4] [L37] CALL, EXPR fibo1(x) VAL [\old(n)=4] [L8] COND FALSE !(n < 1) VAL [\old(n)=4, n=4] [L10] COND FALSE !(n == 1) VAL [\old(n)=4, n=4] [L13] CALL, EXPR fibo2(n-1) VAL [\old(n)=3] [L18] COND FALSE !(n < 1) VAL [\old(n)=3, n=3] [L20] COND FALSE !(n == 1) VAL [\old(n)=3, n=3] [L23] CALL, EXPR fibo1(n-1) VAL [\old(n)=2] [L8] COND FALSE !(n < 1) VAL [\old(n)=2, n=2] [L10] COND FALSE !(n == 1) VAL [\old(n)=2, n=2] [L13] CALL, EXPR fibo2(n-1) VAL [\old(n)=1] [L18] COND FALSE !(n < 1) VAL [\old(n)=1, n=1] [L20] COND TRUE n == 1 [L21] return 1; VAL [\old(n)=1, \result=1, n=1] [L13] RET, EXPR fibo2(n-1) VAL [\old(n)=2, fibo2(n-1)=1, n=2] [L13] CALL, EXPR fibo2(n-2) VAL [\old(n)=0] [L18] COND TRUE n < 1 [L19] return 0; VAL [\old(n)=0, \result=0, n=0] [L13] RET, EXPR fibo2(n-2) VAL [\old(n)=2, fibo2(n-1)=1, fibo2(n-2)=0, n=2] [L13] return fibo2(n-1) + fibo2(n-2); [L23] RET, EXPR fibo1(n-1) VAL [\old(n)=3, fibo1(n-1)=1, n=3] [L23] CALL, EXPR fibo1(n-2) VAL [\old(n)=1] [L8] COND FALSE !(n < 1) VAL [\old(n)=1, n=1] [L10] COND TRUE n == 1 [L11] return 1; VAL [\old(n)=1, \result=1, n=1] [L23] RET, EXPR fibo1(n-2) VAL [\old(n)=3, fibo1(n-1)=1, fibo1(n-2)=1, n=3] [L23] return fibo1(n-1) + fibo1(n-2); [L13] RET, EXPR fibo2(n-1) VAL [\old(n)=4, fibo2(n-1)=2, n=4] [L13] CALL, EXPR fibo2(n-2) VAL [\old(n)=2] [L18] COND FALSE !(n < 1) VAL [\old(n)=2, n=2] [L20] COND FALSE !(n == 1) VAL [\old(n)=2, n=2] [L23] CALL, EXPR fibo1(n-1) VAL [\old(n)=1] [L8] COND FALSE !(n < 1) VAL [\old(n)=1, n=1] [L10] COND TRUE n == 1 [L11] return 1; VAL [\old(n)=1, \result=1, n=1] [L23] RET, EXPR fibo1(n-1) VAL [\old(n)=2, fibo1(n-1)=1, n=2] [L23] CALL, EXPR fibo1(n-2) VAL [\old(n)=0] [L8] COND TRUE n < 1 [L9] return 0; VAL [\old(n)=0, \result=0, n=0] [L23] RET, EXPR fibo1(n-2) VAL [\old(n)=2, fibo1(n-1)=1, fibo1(n-2)=0, n=2] [L23] return fibo1(n-1) + fibo1(n-2); [L13] RET, EXPR fibo2(n-2) VAL [\old(n)=4, fibo2(n-1)=2, fibo2(n-2)=1, n=4] [L13] return fibo2(n-1) + fibo2(n-2); [L37] RET, EXPR fibo1(x) VAL [fibo1(x)=3, x=4] [L37] int result = fibo1(x); [L38] COND TRUE result == 3 VAL [result=3, x=4] [L39] __VERIFIER_error() VAL [result=3, x=4] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 33 locations, 1 error locations. Started 1 CEGAR loops. VerificationResult: UNSAFE, OverallTime: 19.4s, OverallIterations: 10, TraceHistogramMax: 6, AutomataDifference: 11.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 261 SDtfs, 345 SDslu, 1500 SDs, 0 SdLazy, 1999 SolverSat, 282 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 3.4s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 557 GetRequests, 428 SyntacticMatches, 0 SemanticMatches, 129 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 379 ImplicationChecksByTransitivity, 1.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=142occurred in iteration=7, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.6s AutomataMinimizationTime, 9 MinimizatonAttempts, 70 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 4.3s InterpolantComputationTime, 741 NumberOfCodeBlocks, 741 NumberOfCodeBlocksAsserted, 18 NumberOfCheckSat, 657 ConstructedInterpolants, 0 QuantifiedInterpolants, 65249 SizeOfPredicates, 26 NumberOfNonLiveVariables, 732 ConjunctsInSsa, 52 ConjunctsInUnsatCore, 16 InterpolantComputations, 2 PerfectInterpolantSequences, 388/526 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! Received shutdown request...