/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 11:22:25,865 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 11:22:25,867 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 11:22:25,900 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 11:22:25,900 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 11:22:25,901 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 11:22:25,903 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 11:22:25,905 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 11:22:25,906 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 11:22:25,909 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 11:22:25,910 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 11:22:25,911 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 11:22:25,911 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 11:22:25,913 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 11:22:25,914 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 11:22:25,916 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 11:22:25,916 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 11:22:25,916 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 11:22:25,918 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 11:22:25,922 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 11:22:25,923 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 11:22:25,924 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 11:22:25,924 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 11:22:25,925 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 11:22:25,926 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 11:22:25,930 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 11:22:25,930 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 11:22:25,930 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 11:22:25,931 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 11:22:25,931 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 11:22:25,939 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 11:22:25,940 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 11:22:25,941 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 11:22:25,941 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 11:22:25,942 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 11:22:25,942 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 11:22:25,942 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 11:22:25,943 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 11:22:25,943 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 11:22:25,943 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 11:22:25,944 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 11:22:25,945 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 11:22:25,945 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-08 11:22:25,953 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 11:22:25,953 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 11:22:25,954 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 11:22:25,954 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 11:22:25,954 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 11:22:25,954 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 11:22:25,954 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 11:22:25,955 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 11:22:25,955 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 11:22:25,955 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 11:22:25,956 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 11:22:25,956 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 11:22:25,956 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 11:22:25,956 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 11:22:25,956 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 11:22:25,956 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:22:25,956 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 11:22:25,956 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 11:22:25,956 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 11:22:25,957 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 11:22:25,957 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 11:22:25,957 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 11:22:25,957 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 11:22:26,148 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 11:22:26,162 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 11:22:26,164 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 11:22:26,164 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 11:22:26,165 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 11:22:26,165 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c [2022-04-08 11:22:26,204 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b49a00b35/f9b20c357d894de3a788d08514df5372/FLAG1de5fbcc1 [2022-04-08 11:22:26,564 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 11:22:26,565 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c [2022-04-08 11:22:26,606 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b49a00b35/f9b20c357d894de3a788d08514df5372/FLAG1de5fbcc1 [2022-04-08 11:22:26,622 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b49a00b35/f9b20c357d894de3a788d08514df5372 [2022-04-08 11:22:26,624 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 11:22:26,625 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 11:22:26,637 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 11:22:26,637 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 11:22:26,639 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 11:22:26,646 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:26,646 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ba39b72 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26, skipping insertion in model container [2022-04-08 11:22:26,647 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:26,655 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 11:22:26,667 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 11:22:26,869 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c[576,589] [2022-04-08 11:22:26,902 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:22:26,923 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 11:22:26,930 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c[576,589] [2022-04-08 11:22:26,934 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:22:26,943 INFO L208 MainTranslator]: Completed translation [2022-04-08 11:22:26,944 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26 WrapperNode [2022-04-08 11:22:26,944 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 11:22:26,955 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 11:22:26,956 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 11:22:26,956 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 11:22:26,979 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:26,979 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:26,983 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:26,983 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:26,996 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:27,016 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:27,021 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:27,022 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 11:22:27,022 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 11:22:27,022 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 11:22:27,022 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 11:22:27,024 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (1/1) ... [2022-04-08 11:22:27,029 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:22:27,036 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:27,060 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 11:22:27,099 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 11:22:27,147 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 11:22:27,147 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 11:22:27,147 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 11:22:27,148 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 11:22:27,148 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 11:22:27,148 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 11:22:27,149 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 11:22:27,150 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 11:22:27,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 11:22:27,150 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 11:22:27,151 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 11:22:27,151 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 11:22:27,151 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 11:22:27,215 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 11:22:27,216 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 11:22:27,427 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 11:22:27,431 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 11:22:27,432 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 11:22:27,433 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:22:27 BoogieIcfgContainer [2022-04-08 11:22:27,433 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 11:22:27,434 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 11:22:27,434 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 11:22:27,436 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 11:22:27,436 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 11:22:26" (1/3) ... [2022-04-08 11:22:27,437 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42ab22e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:22:27, skipping insertion in model container [2022-04-08 11:22:27,437 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:26" (2/3) ... [2022-04-08 11:22:27,437 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42ab22e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:22:27, skipping insertion in model container [2022-04-08 11:22:27,437 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:22:27" (3/3) ... [2022-04-08 11:22:27,438 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_unwindbound5.c [2022-04-08 11:22:27,441 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 11:22:27,441 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 11:22:27,469 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 11:22:27,473 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 11:22:27,474 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 11:22:27,619 INFO L276 IsEmpty]: Start isEmpty. Operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 11:22:27,624 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-08 11:22:27,624 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:27,624 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:22:27,625 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:27,629 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:27,630 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 1 times [2022-04-08 11:22:27,658 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:27,675 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1727798582] [2022-04-08 11:22:27,684 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:27,685 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 2 times [2022-04-08 11:22:27,689 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:27,690 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1647607997] [2022-04-08 11:22:27,690 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:27,690 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:27,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:27,878 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 11:22:27,885 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:27,896 INFO L290 TraceCheckUtils]: 0: Hoare triple {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-08 11:22:27,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 11:22:27,896 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-08 11:22:27,897 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 11:22:27,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:27,918 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 11:22:27,919 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 11:22:27,919 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 11:22:27,919 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-08 11:22:27,920 INFO L272 TraceCheckUtils]: 0: Hoare triple {41#true} call ULTIMATE.init(); {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 11:22:27,920 INFO L290 TraceCheckUtils]: 1: Hoare triple {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-08 11:22:27,920 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 11:22:27,921 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-08 11:22:27,921 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret8 := main(); {41#true} is VALID [2022-04-08 11:22:27,921 INFO L290 TraceCheckUtils]: 5: Hoare triple {41#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41#true} is VALID [2022-04-08 11:22:27,921 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41#true} is VALID [2022-04-08 11:22:27,921 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 11:22:27,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 11:22:27,922 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 11:22:27,922 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-08 11:22:27,922 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {42#false} is VALID [2022-04-08 11:22:27,922 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#false} assume !true; {42#false} is VALID [2022-04-08 11:22:27,922 INFO L272 TraceCheckUtils]: 13: Hoare triple {42#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {42#false} is VALID [2022-04-08 11:22:27,923 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-08 11:22:27,923 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-08 11:22:27,923 INFO L290 TraceCheckUtils]: 16: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-08 11:22:27,923 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 11:22:27,924 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:27,924 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1647607997] [2022-04-08 11:22:27,924 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1647607997] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:27,924 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:27,939 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:22:27,941 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:27,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1727798582] [2022-04-08 11:22:27,942 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1727798582] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:27,942 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:27,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:22:27,942 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [233158094] [2022-04-08 11:22:27,942 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:27,946 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-08 11:22:27,947 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:27,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:27,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:27,978 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 11:22:27,978 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:27,991 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 11:22:27,991 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 11:22:27,993 INFO L87 Difference]: Start difference. First operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:28,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:28,133 INFO L93 Difference]: Finished difference Result 68 states and 101 transitions. [2022-04-08 11:22:28,133 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 11:22:28,133 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-08 11:22:28,133 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:28,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:28,161 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-08 11:22:28,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:28,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-08 11:22:28,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-08 11:22:28,342 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:28,348 INFO L225 Difference]: With dead ends: 68 [2022-04-08 11:22:28,348 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 11:22:28,350 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 11:22:28,353 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:28,353 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 49 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:22:28,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 11:22:28,416 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-08 11:22:28,416 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:28,417 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:28,418 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:28,419 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:28,427 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:28,427 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:22:28,427 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:22:28,428 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:28,428 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:28,428 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-08 11:22:28,428 INFO L87 Difference]: Start difference. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-08 11:22:28,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:28,434 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:22:28,434 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:22:28,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:28,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:28,468 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:28,472 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:28,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:28,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 42 transitions. [2022-04-08 11:22:28,490 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 42 transitions. Word has length 17 [2022-04-08 11:22:28,490 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:28,490 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 42 transitions. [2022-04-08 11:22:28,491 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:28,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 42 transitions. [2022-04-08 11:22:28,559 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:28,559 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 42 transitions. [2022-04-08 11:22:28,560 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 11:22:28,560 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:28,560 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:22:28,560 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 11:22:28,560 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:28,562 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:28,562 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 1 times [2022-04-08 11:22:28,562 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:28,563 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [336469211] [2022-04-08 11:22:28,569 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:28,570 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 2 times [2022-04-08 11:22:28,570 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:28,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1024224200] [2022-04-08 11:22:28,570 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:28,570 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:28,627 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:28,627 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1740623392] [2022-04-08 11:22:28,627 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:28,627 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:28,628 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:28,644 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:22:28,663 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 11:22:28,730 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 11:22:28,730 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:28,732 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 11:22:28,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:28,745 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:28,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {323#true} call ULTIMATE.init(); {323#true} is VALID [2022-04-08 11:22:28,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {323#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#(<= ~counter~0 0)} assume true; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,870 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#(<= ~counter~0 0)} {323#true} #93#return; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,871 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#(<= ~counter~0 0)} call #t~ret8 := main(); {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,871 INFO L290 TraceCheckUtils]: 5: Hoare triple {331#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,872 INFO L272 TraceCheckUtils]: 6: Hoare triple {331#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,872 INFO L290 TraceCheckUtils]: 7: Hoare triple {331#(<= ~counter~0 0)} ~cond := #in~cond; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,872 INFO L290 TraceCheckUtils]: 8: Hoare triple {331#(<= ~counter~0 0)} assume !(0 == ~cond); {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,873 INFO L290 TraceCheckUtils]: 9: Hoare triple {331#(<= ~counter~0 0)} assume true; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,873 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {331#(<= ~counter~0 0)} {331#(<= ~counter~0 0)} #77#return; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,874 INFO L290 TraceCheckUtils]: 11: Hoare triple {331#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:28,874 INFO L290 TraceCheckUtils]: 12: Hoare triple {331#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {365#(<= |main_#t~post6| 0)} is VALID [2022-04-08 11:22:28,875 INFO L290 TraceCheckUtils]: 13: Hoare triple {365#(<= |main_#t~post6| 0)} assume !(#t~post6 < 5);havoc #t~post6; {324#false} is VALID [2022-04-08 11:22:28,875 INFO L272 TraceCheckUtils]: 14: Hoare triple {324#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {324#false} is VALID [2022-04-08 11:22:28,875 INFO L290 TraceCheckUtils]: 15: Hoare triple {324#false} ~cond := #in~cond; {324#false} is VALID [2022-04-08 11:22:28,875 INFO L290 TraceCheckUtils]: 16: Hoare triple {324#false} assume 0 == ~cond; {324#false} is VALID [2022-04-08 11:22:28,875 INFO L290 TraceCheckUtils]: 17: Hoare triple {324#false} assume !false; {324#false} is VALID [2022-04-08 11:22:28,876 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 11:22:28,876 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:28,876 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:28,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1024224200] [2022-04-08 11:22:28,876 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:28,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1740623392] [2022-04-08 11:22:28,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1740623392] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:28,877 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:28,877 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 11:22:28,878 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:28,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [336469211] [2022-04-08 11:22:28,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [336469211] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:28,878 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:28,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 11:22:28,878 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1753818047] [2022-04-08 11:22:28,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:28,879 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-08 11:22:28,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:28,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 11:22:28,892 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:28,892 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 11:22:28,892 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:28,892 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 11:22:28,893 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 11:22:28,893 INFO L87 Difference]: Start difference. First operand 33 states and 42 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 11:22:28,972 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:28,972 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-08 11:22:28,972 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 11:22:28,972 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-08 11:22:28,972 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:28,973 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 11:22:28,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-08 11:22:28,975 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 11:22:28,984 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-08 11:22:28,984 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2022-04-08 11:22:29,018 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:29,020 INFO L225 Difference]: With dead ends: 42 [2022-04-08 11:22:29,020 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 11:22:29,021 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 11:22:29,021 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:29,022 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 107 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:22:29,022 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 11:22:29,034 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-08 11:22:29,035 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:29,035 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:29,036 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:29,038 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:29,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:29,046 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 11:22:29,046 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 11:22:29,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:29,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:29,048 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-08 11:22:29,048 INFO L87 Difference]: Start difference. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-08 11:22:29,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:29,050 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 11:22:29,050 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 11:22:29,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:29,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:29,051 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:29,051 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:29,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 11:22:29,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-08 11:22:29,053 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 18 [2022-04-08 11:22:29,053 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:29,053 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-08 11:22:29,053 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 11:22:29,053 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-08 11:22:29,100 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:29,100 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 11:22:29,102 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 11:22:29,104 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:29,104 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:22:29,124 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:29,319 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:29,320 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:29,320 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:29,320 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 1 times [2022-04-08 11:22:29,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:29,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [338938744] [2022-04-08 11:22:29,321 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:29,321 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 2 times [2022-04-08 11:22:29,321 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:29,321 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [335540548] [2022-04-08 11:22:29,321 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:29,322 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:29,341 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:29,342 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [139137851] [2022-04-08 11:22:29,342 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:29,342 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:29,342 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:29,360 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:22:29,421 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 11:22:29,422 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:29,422 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 11:22:29,423 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:29,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:29,429 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:29,559 INFO L272 TraceCheckUtils]: 0: Hoare triple {604#true} call ULTIMATE.init(); {604#true} is VALID [2022-04-08 11:22:29,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {604#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {604#true} is VALID [2022-04-08 11:22:29,560 INFO L290 TraceCheckUtils]: 2: Hoare triple {604#true} assume true; {604#true} is VALID [2022-04-08 11:22:29,560 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {604#true} {604#true} #93#return; {604#true} is VALID [2022-04-08 11:22:29,560 INFO L272 TraceCheckUtils]: 4: Hoare triple {604#true} call #t~ret8 := main(); {604#true} is VALID [2022-04-08 11:22:29,561 INFO L290 TraceCheckUtils]: 5: Hoare triple {604#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {604#true} is VALID [2022-04-08 11:22:29,561 INFO L272 TraceCheckUtils]: 6: Hoare triple {604#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {604#true} is VALID [2022-04-08 11:22:29,563 INFO L290 TraceCheckUtils]: 7: Hoare triple {604#true} ~cond := #in~cond; {604#true} is VALID [2022-04-08 11:22:29,563 INFO L290 TraceCheckUtils]: 8: Hoare triple {604#true} assume !(0 == ~cond); {604#true} is VALID [2022-04-08 11:22:29,563 INFO L290 TraceCheckUtils]: 9: Hoare triple {604#true} assume true; {604#true} is VALID [2022-04-08 11:22:29,563 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {604#true} {604#true} #77#return; {604#true} is VALID [2022-04-08 11:22:29,564 INFO L290 TraceCheckUtils]: 11: Hoare triple {604#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {642#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:22:29,565 INFO L290 TraceCheckUtils]: 12: Hoare triple {642#(and (= main_~a~0 0) (= main_~b~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {642#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:22:29,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {642#(and (= main_~a~0 0) (= main_~b~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {642#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:22:29,567 INFO L272 TraceCheckUtils]: 14: Hoare triple {642#(and (= main_~a~0 0) (= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {652#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:29,567 INFO L290 TraceCheckUtils]: 15: Hoare triple {652#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {656#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:29,567 INFO L290 TraceCheckUtils]: 16: Hoare triple {656#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {605#false} is VALID [2022-04-08 11:22:29,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {605#false} assume !false; {605#false} is VALID [2022-04-08 11:22:29,568 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 11:22:29,568 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:29,568 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:29,568 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [335540548] [2022-04-08 11:22:29,568 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:29,568 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [139137851] [2022-04-08 11:22:29,568 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [139137851] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:29,568 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:29,568 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:29,569 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:29,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [338938744] [2022-04-08 11:22:29,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [338938744] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:29,569 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:29,569 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:29,569 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [727177723] [2022-04-08 11:22:29,569 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:29,573 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 11:22:29,573 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:29,573 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:29,612 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:29,612 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:29,612 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:29,613 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:29,613 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:29,613 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:29,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:29,820 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-08 11:22:29,820 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:29,820 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 11:22:29,820 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:29,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:29,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:22:29,825 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:29,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:22:29,826 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-08 11:22:29,894 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:29,898 INFO L225 Difference]: With dead ends: 45 [2022-04-08 11:22:29,898 INFO L226 Difference]: Without dead ends: 43 [2022-04-08 11:22:29,899 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:22:29,906 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:29,907 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 145 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:22:29,908 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-08 11:22:29,924 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-08 11:22:29,925 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:29,926 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 11:22:29,926 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 11:22:29,926 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 11:22:29,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:29,931 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:22:29,931 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:22:29,933 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:29,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:29,934 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-08 11:22:29,935 INFO L87 Difference]: Start difference. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-08 11:22:29,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:29,938 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:22:29,938 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:22:29,938 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:29,938 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:29,938 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:29,938 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:29,939 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 11:22:29,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-08 11:22:29,941 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-04-08 11:22:29,941 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:29,941 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-08 11:22:29,941 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 11:22:29,941 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 49 transitions. [2022-04-08 11:22:29,997 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:29,997 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-08 11:22:29,997 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 11:22:29,997 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:29,997 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:22:30,070 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:30,214 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 11:22:30,214 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:30,214 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:30,215 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 1 times [2022-04-08 11:22:30,215 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:30,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1692807816] [2022-04-08 11:22:30,215 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:30,215 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 2 times [2022-04-08 11:22:30,215 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:30,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1717458293] [2022-04-08 11:22:30,215 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:30,216 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:30,226 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:30,226 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2058025141] [2022-04-08 11:22:30,226 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:30,226 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:30,226 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:30,244 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:22:30,286 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 11:22:30,327 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:30,327 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:30,328 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:30,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:30,337 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:30,432 INFO L272 TraceCheckUtils]: 0: Hoare triple {920#true} call ULTIMATE.init(); {920#true} is VALID [2022-04-08 11:22:30,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {920#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {920#true} is VALID [2022-04-08 11:22:30,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {920#true} assume true; {920#true} is VALID [2022-04-08 11:22:30,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {920#true} {920#true} #93#return; {920#true} is VALID [2022-04-08 11:22:30,432 INFO L272 TraceCheckUtils]: 4: Hoare triple {920#true} call #t~ret8 := main(); {920#true} is VALID [2022-04-08 11:22:30,432 INFO L290 TraceCheckUtils]: 5: Hoare triple {920#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {920#true} is VALID [2022-04-08 11:22:30,433 INFO L272 TraceCheckUtils]: 6: Hoare triple {920#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {920#true} is VALID [2022-04-08 11:22:30,433 INFO L290 TraceCheckUtils]: 7: Hoare triple {920#true} ~cond := #in~cond; {920#true} is VALID [2022-04-08 11:22:30,433 INFO L290 TraceCheckUtils]: 8: Hoare triple {920#true} assume !(0 == ~cond); {920#true} is VALID [2022-04-08 11:22:30,433 INFO L290 TraceCheckUtils]: 9: Hoare triple {920#true} assume true; {920#true} is VALID [2022-04-08 11:22:30,433 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {920#true} {920#true} #77#return; {920#true} is VALID [2022-04-08 11:22:30,433 INFO L290 TraceCheckUtils]: 11: Hoare triple {920#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:30,434 INFO L290 TraceCheckUtils]: 12: Hoare triple {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:30,434 INFO L290 TraceCheckUtils]: 13: Hoare triple {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:30,434 INFO L272 TraceCheckUtils]: 14: Hoare triple {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {920#true} is VALID [2022-04-08 11:22:30,435 INFO L290 TraceCheckUtils]: 15: Hoare triple {920#true} ~cond := #in~cond; {920#true} is VALID [2022-04-08 11:22:30,435 INFO L290 TraceCheckUtils]: 16: Hoare triple {920#true} assume !(0 == ~cond); {920#true} is VALID [2022-04-08 11:22:30,435 INFO L290 TraceCheckUtils]: 17: Hoare triple {920#true} assume true; {920#true} is VALID [2022-04-08 11:22:30,436 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {920#true} {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:30,437 INFO L272 TraceCheckUtils]: 19: Hoare triple {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {983#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:30,437 INFO L290 TraceCheckUtils]: 20: Hoare triple {983#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {987#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:30,437 INFO L290 TraceCheckUtils]: 21: Hoare triple {987#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {921#false} is VALID [2022-04-08 11:22:30,438 INFO L290 TraceCheckUtils]: 22: Hoare triple {921#false} assume !false; {921#false} is VALID [2022-04-08 11:22:30,438 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 11:22:30,438 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:30,438 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:30,438 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1717458293] [2022-04-08 11:22:30,438 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:30,438 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2058025141] [2022-04-08 11:22:30,438 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2058025141] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:30,438 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:30,439 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:30,439 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:30,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1692807816] [2022-04-08 11:22:30,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1692807816] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:30,439 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:30,439 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:30,439 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1009740219] [2022-04-08 11:22:30,439 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:30,440 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-08 11:22:30,440 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:30,440 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 11:22:30,460 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:30,461 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:30,461 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:30,462 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:30,462 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:30,462 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 11:22:30,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:30,770 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-08 11:22:30,770 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:30,770 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-08 11:22:30,770 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:30,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 11:22:30,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-08 11:22:30,774 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 11:22:30,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-08 11:22:30,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 71 transitions. [2022-04-08 11:22:30,826 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:30,827 INFO L225 Difference]: With dead ends: 58 [2022-04-08 11:22:30,827 INFO L226 Difference]: Without dead ends: 55 [2022-04-08 11:22:30,828 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:22:30,828 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 13 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:30,828 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 139 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:22:30,829 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-08 11:22:30,877 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-08 11:22:30,877 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:30,878 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 11:22:30,878 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 11:22:30,878 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 11:22:30,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:30,880 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-08 11:22:30,880 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-08 11:22:30,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:30,880 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:30,880 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-08 11:22:30,881 INFO L87 Difference]: Start difference. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-08 11:22:30,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:30,882 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-08 11:22:30,882 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-08 11:22:30,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:30,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:30,883 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:30,883 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:30,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 11:22:30,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-08 11:22:30,884 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 23 [2022-04-08 11:22:30,884 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:30,884 INFO L478 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-08 11:22:30,885 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 11:22:30,885 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 54 states and 69 transitions. [2022-04-08 11:22:30,976 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:30,977 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-08 11:22:30,977 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-08 11:22:30,977 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:30,978 INFO L499 BasicCegarLoop]: trace histogram [3, 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] [2022-04-08 11:22:30,998 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:31,194 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:31,194 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:31,194 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:31,194 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 1 times [2022-04-08 11:22:31,195 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:31,195 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1955310744] [2022-04-08 11:22:31,195 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:31,195 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 2 times [2022-04-08 11:22:31,195 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:31,195 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [755850708] [2022-04-08 11:22:31,195 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:31,195 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:31,207 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:31,207 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [239899952] [2022-04-08 11:22:31,207 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:31,207 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:31,207 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:31,218 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:22:31,269 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 11:22:31,273 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:31,273 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:31,273 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:31,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:31,283 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:31,375 INFO L272 TraceCheckUtils]: 0: Hoare triple {1329#true} call ULTIMATE.init(); {1329#true} is VALID [2022-04-08 11:22:31,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {1329#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1329#true} is VALID [2022-04-08 11:22:31,375 INFO L290 TraceCheckUtils]: 2: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:31,375 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1329#true} {1329#true} #93#return; {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L272 TraceCheckUtils]: 4: Hoare triple {1329#true} call #t~ret8 := main(); {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L290 TraceCheckUtils]: 5: Hoare triple {1329#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L272 TraceCheckUtils]: 6: Hoare triple {1329#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L290 TraceCheckUtils]: 7: Hoare triple {1329#true} ~cond := #in~cond; {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {1329#true} assume !(0 == ~cond); {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1329#true} {1329#true} #77#return; {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L290 TraceCheckUtils]: 11: Hoare triple {1329#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L290 TraceCheckUtils]: 12: Hoare triple {1329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1329#true} is VALID [2022-04-08 11:22:31,376 INFO L290 TraceCheckUtils]: 13: Hoare triple {1329#true} assume !!(#t~post6 < 5);havoc #t~post6; {1329#true} is VALID [2022-04-08 11:22:31,377 INFO L272 TraceCheckUtils]: 14: Hoare triple {1329#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1329#true} is VALID [2022-04-08 11:22:31,377 INFO L290 TraceCheckUtils]: 15: Hoare triple {1329#true} ~cond := #in~cond; {1329#true} is VALID [2022-04-08 11:22:31,377 INFO L290 TraceCheckUtils]: 16: Hoare triple {1329#true} assume !(0 == ~cond); {1329#true} is VALID [2022-04-08 11:22:31,377 INFO L290 TraceCheckUtils]: 17: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:31,377 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1329#true} {1329#true} #79#return; {1329#true} is VALID [2022-04-08 11:22:31,379 INFO L272 TraceCheckUtils]: 19: Hoare triple {1329#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1329#true} is VALID [2022-04-08 11:22:31,379 INFO L290 TraceCheckUtils]: 20: Hoare triple {1329#true} ~cond := #in~cond; {1329#true} is VALID [2022-04-08 11:22:31,379 INFO L290 TraceCheckUtils]: 21: Hoare triple {1329#true} assume !(0 == ~cond); {1329#true} is VALID [2022-04-08 11:22:31,380 INFO L290 TraceCheckUtils]: 22: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:31,380 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1329#true} {1329#true} #81#return; {1329#true} is VALID [2022-04-08 11:22:31,380 INFO L290 TraceCheckUtils]: 24: Hoare triple {1329#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:22:31,381 INFO L290 TraceCheckUtils]: 25: Hoare triple {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:22:31,381 INFO L290 TraceCheckUtils]: 26: Hoare triple {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !!(#t~post7 < 5);havoc #t~post7; {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:22:31,382 INFO L272 TraceCheckUtils]: 27: Hoare triple {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1416#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:31,382 INFO L290 TraceCheckUtils]: 28: Hoare triple {1416#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1420#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:31,382 INFO L290 TraceCheckUtils]: 29: Hoare triple {1420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1330#false} is VALID [2022-04-08 11:22:31,383 INFO L290 TraceCheckUtils]: 30: Hoare triple {1330#false} assume !false; {1330#false} is VALID [2022-04-08 11:22:31,383 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 11:22:31,383 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:31,383 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:31,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [755850708] [2022-04-08 11:22:31,383 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:31,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [239899952] [2022-04-08 11:22:31,383 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [239899952] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:31,383 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:31,383 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:31,383 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:31,384 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1955310744] [2022-04-08 11:22:31,384 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1955310744] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:31,384 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:31,384 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:31,384 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1603629397] [2022-04-08 11:22:31,384 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:31,384 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-08 11:22:31,385 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:31,385 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:22:31,402 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:31,402 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:31,402 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:31,402 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:31,402 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:31,403 INFO L87 Difference]: Start difference. First operand 54 states and 69 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:22:31,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:31,598 INFO L93 Difference]: Finished difference Result 83 states and 113 transitions. [2022-04-08 11:22:31,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:31,598 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-08 11:22:31,599 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:31,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:22:31,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-08 11:22:31,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:22:31,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-08 11:22:31,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-04-08 11:22:31,676 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:31,679 INFO L225 Difference]: With dead ends: 83 [2022-04-08 11:22:31,679 INFO L226 Difference]: Without dead ends: 81 [2022-04-08 11:22:31,679 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:22:31,680 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 13 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:31,680 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 145 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:22:31,681 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-08 11:22:31,710 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-04-08 11:22:31,710 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:31,710 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:31,711 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:31,720 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:31,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:31,724 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-08 11:22:31,724 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-08 11:22:31,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:31,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:31,725 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-08 11:22:31,726 INFO L87 Difference]: Start difference. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-08 11:22:31,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:31,729 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-08 11:22:31,729 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-08 11:22:31,730 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:31,730 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:31,730 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:31,730 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:31,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:31,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2022-04-08 11:22:31,740 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 31 [2022-04-08 11:22:31,740 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:31,740 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2022-04-08 11:22:31,740 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:22:31,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 100 transitions. [2022-04-08 11:22:31,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:31,828 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2022-04-08 11:22:31,829 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 11:22:31,829 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:31,829 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-08 11:22:31,847 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:32,044 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:32,045 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:32,045 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:32,045 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 1 times [2022-04-08 11:22:32,045 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:32,045 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [547766949] [2022-04-08 11:22:36,414 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:22:36,414 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:22:36,414 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 2 times [2022-04-08 11:22:36,415 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:36,415 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2091158060] [2022-04-08 11:22:36,415 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:36,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:36,456 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:36,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1415922970] [2022-04-08 11:22:36,457 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:36,457 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:36,457 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:36,462 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:22:36,463 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 11:22:36,505 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:36,505 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:36,505 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:36,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:36,530 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:36,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {1904#true} call ULTIMATE.init(); {1904#true} is VALID [2022-04-08 11:22:36,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {1904#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,661 INFO L290 TraceCheckUtils]: 2: Hoare triple {1912#(<= ~counter~0 0)} assume true; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,661 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1912#(<= ~counter~0 0)} {1904#true} #93#return; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,662 INFO L272 TraceCheckUtils]: 4: Hoare triple {1912#(<= ~counter~0 0)} call #t~ret8 := main(); {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,662 INFO L290 TraceCheckUtils]: 5: Hoare triple {1912#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,663 INFO L272 TraceCheckUtils]: 6: Hoare triple {1912#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,663 INFO L290 TraceCheckUtils]: 7: Hoare triple {1912#(<= ~counter~0 0)} ~cond := #in~cond; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,663 INFO L290 TraceCheckUtils]: 8: Hoare triple {1912#(<= ~counter~0 0)} assume !(0 == ~cond); {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,663 INFO L290 TraceCheckUtils]: 9: Hoare triple {1912#(<= ~counter~0 0)} assume true; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,664 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1912#(<= ~counter~0 0)} {1912#(<= ~counter~0 0)} #77#return; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,664 INFO L290 TraceCheckUtils]: 11: Hoare triple {1912#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:36,665 INFO L290 TraceCheckUtils]: 12: Hoare triple {1912#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,665 INFO L290 TraceCheckUtils]: 13: Hoare triple {1946#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,665 INFO L272 TraceCheckUtils]: 14: Hoare triple {1946#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,666 INFO L290 TraceCheckUtils]: 15: Hoare triple {1946#(<= ~counter~0 1)} ~cond := #in~cond; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,666 INFO L290 TraceCheckUtils]: 16: Hoare triple {1946#(<= ~counter~0 1)} assume !(0 == ~cond); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,666 INFO L290 TraceCheckUtils]: 17: Hoare triple {1946#(<= ~counter~0 1)} assume true; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,667 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1946#(<= ~counter~0 1)} {1946#(<= ~counter~0 1)} #79#return; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,667 INFO L272 TraceCheckUtils]: 19: Hoare triple {1946#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,668 INFO L290 TraceCheckUtils]: 20: Hoare triple {1946#(<= ~counter~0 1)} ~cond := #in~cond; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,668 INFO L290 TraceCheckUtils]: 21: Hoare triple {1946#(<= ~counter~0 1)} assume !(0 == ~cond); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,668 INFO L290 TraceCheckUtils]: 22: Hoare triple {1946#(<= ~counter~0 1)} assume true; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,669 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1946#(<= ~counter~0 1)} {1946#(<= ~counter~0 1)} #81#return; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,669 INFO L290 TraceCheckUtils]: 24: Hoare triple {1946#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:36,669 INFO L290 TraceCheckUtils]: 25: Hoare triple {1946#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1986#(<= |main_#t~post7| 1)} is VALID [2022-04-08 11:22:36,670 INFO L290 TraceCheckUtils]: 26: Hoare triple {1986#(<= |main_#t~post7| 1)} assume !(#t~post7 < 5);havoc #t~post7; {1905#false} is VALID [2022-04-08 11:22:36,670 INFO L290 TraceCheckUtils]: 27: Hoare triple {1905#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {1905#false} is VALID [2022-04-08 11:22:36,670 INFO L290 TraceCheckUtils]: 28: Hoare triple {1905#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1905#false} is VALID [2022-04-08 11:22:36,670 INFO L290 TraceCheckUtils]: 29: Hoare triple {1905#false} assume !(#t~post6 < 5);havoc #t~post6; {1905#false} is VALID [2022-04-08 11:22:36,670 INFO L272 TraceCheckUtils]: 30: Hoare triple {1905#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1905#false} is VALID [2022-04-08 11:22:36,670 INFO L290 TraceCheckUtils]: 31: Hoare triple {1905#false} ~cond := #in~cond; {1905#false} is VALID [2022-04-08 11:22:36,670 INFO L290 TraceCheckUtils]: 32: Hoare triple {1905#false} assume 0 == ~cond; {1905#false} is VALID [2022-04-08 11:22:36,670 INFO L290 TraceCheckUtils]: 33: Hoare triple {1905#false} assume !false; {1905#false} is VALID [2022-04-08 11:22:36,671 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 11:22:36,671 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:36,671 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:36,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2091158060] [2022-04-08 11:22:36,671 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:36,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1415922970] [2022-04-08 11:22:36,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1415922970] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:36,671 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:36,671 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:36,671 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:36,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [547766949] [2022-04-08 11:22:36,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [547766949] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:36,671 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:36,671 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:36,672 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1215511331] [2022-04-08 11:22:36,672 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:36,673 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-08 11:22:36,673 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:36,673 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 11:22:36,695 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:36,695 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:36,695 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:36,696 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:36,696 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:36,696 INFO L87 Difference]: Start difference. First operand 74 states and 100 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 11:22:36,803 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:36,803 INFO L93 Difference]: Finished difference Result 113 states and 153 transitions. [2022-04-08 11:22:36,803 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:36,804 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-08 11:22:36,804 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:36,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 11:22:36,805 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-08 11:22:36,805 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 11:22:36,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-08 11:22:36,806 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 85 transitions. [2022-04-08 11:22:36,873 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:36,874 INFO L225 Difference]: With dead ends: 113 [2022-04-08 11:22:36,874 INFO L226 Difference]: Without dead ends: 78 [2022-04-08 11:22:36,875 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:36,875 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 20 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:36,876 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 114 Invalid, 20 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:22:36,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-08 11:22:36,901 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-08 11:22:36,902 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:36,902 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:36,902 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:36,902 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:36,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:36,904 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-08 11:22:36,904 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-08 11:22:36,905 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:36,905 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:36,905 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-08 11:22:36,905 INFO L87 Difference]: Start difference. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-08 11:22:36,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:36,907 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-08 11:22:36,907 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-08 11:22:36,908 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:36,908 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:36,908 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:36,908 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:36,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:36,910 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 102 transitions. [2022-04-08 11:22:36,910 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 102 transitions. Word has length 34 [2022-04-08 11:22:36,910 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:36,910 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 102 transitions. [2022-04-08 11:22:36,910 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 11:22:36,910 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 78 states and 102 transitions. [2022-04-08 11:22:36,995 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:36,996 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-08 11:22:36,996 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 11:22:36,996 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:36,996 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 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] [2022-04-08 11:22:37,014 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-08 11:22:37,207 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:37,207 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:37,208 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:37,208 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 1 times [2022-04-08 11:22:37,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:37,208 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1686084997] [2022-04-08 11:22:37,208 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:37,208 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 2 times [2022-04-08 11:22:37,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:37,208 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [858270932] [2022-04-08 11:22:37,208 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:37,209 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:37,247 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:37,248 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1801238623] [2022-04-08 11:22:37,248 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:37,248 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:37,248 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:37,301 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:22:37,302 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 11:22:37,369 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:37,369 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:37,370 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:22:37,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:37,383 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:37,587 INFO L272 TraceCheckUtils]: 0: Hoare triple {2548#true} call ULTIMATE.init(); {2548#true} is VALID [2022-04-08 11:22:37,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {2548#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2548#true} is VALID [2022-04-08 11:22:37,588 INFO L290 TraceCheckUtils]: 2: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:37,588 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2548#true} {2548#true} #93#return; {2548#true} is VALID [2022-04-08 11:22:37,588 INFO L272 TraceCheckUtils]: 4: Hoare triple {2548#true} call #t~ret8 := main(); {2548#true} is VALID [2022-04-08 11:22:37,588 INFO L290 TraceCheckUtils]: 5: Hoare triple {2548#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2548#true} is VALID [2022-04-08 11:22:37,588 INFO L272 TraceCheckUtils]: 6: Hoare triple {2548#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:37,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {2548#true} ~cond := #in~cond; {2574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:22:37,590 INFO L290 TraceCheckUtils]: 8: Hoare triple {2574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:22:37,590 INFO L290 TraceCheckUtils]: 9: Hoare triple {2578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:22:37,591 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2578#(not (= |assume_abort_if_not_#in~cond| 0))} {2548#true} #77#return; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:37,591 INFO L290 TraceCheckUtils]: 11: Hoare triple {2585#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:37,592 INFO L290 TraceCheckUtils]: 12: Hoare triple {2585#(<= 1 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:37,592 INFO L290 TraceCheckUtils]: 13: Hoare triple {2585#(<= 1 main_~y~0)} assume !!(#t~post6 < 5);havoc #t~post6; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:37,592 INFO L272 TraceCheckUtils]: 14: Hoare triple {2585#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:37,592 INFO L290 TraceCheckUtils]: 15: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:37,592 INFO L290 TraceCheckUtils]: 16: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:37,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:37,593 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2548#true} {2585#(<= 1 main_~y~0)} #79#return; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:37,593 INFO L272 TraceCheckUtils]: 19: Hoare triple {2585#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:37,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:37,593 INFO L290 TraceCheckUtils]: 21: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:37,593 INFO L290 TraceCheckUtils]: 22: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:37,594 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2548#true} {2585#(<= 1 main_~y~0)} #81#return; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:37,595 INFO L290 TraceCheckUtils]: 24: Hoare triple {2585#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:37,595 INFO L290 TraceCheckUtils]: 25: Hoare triple {2628#(<= 1 main_~r~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:37,595 INFO L290 TraceCheckUtils]: 26: Hoare triple {2628#(<= 1 main_~r~0)} assume !!(#t~post7 < 5);havoc #t~post7; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:37,595 INFO L272 TraceCheckUtils]: 27: Hoare triple {2628#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:37,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:37,595 INFO L290 TraceCheckUtils]: 29: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:37,595 INFO L290 TraceCheckUtils]: 30: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:37,596 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2548#true} {2628#(<= 1 main_~r~0)} #83#return; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:37,596 INFO L272 TraceCheckUtils]: 32: Hoare triple {2628#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:37,596 INFO L290 TraceCheckUtils]: 33: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:37,596 INFO L290 TraceCheckUtils]: 34: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:37,596 INFO L290 TraceCheckUtils]: 35: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:37,598 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2548#true} {2628#(<= 1 main_~r~0)} #85#return; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:37,599 INFO L272 TraceCheckUtils]: 37: Hoare triple {2628#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2668#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:37,599 INFO L290 TraceCheckUtils]: 38: Hoare triple {2668#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2672#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:37,600 INFO L290 TraceCheckUtils]: 39: Hoare triple {2672#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2549#false} is VALID [2022-04-08 11:22:37,600 INFO L290 TraceCheckUtils]: 40: Hoare triple {2549#false} assume !false; {2549#false} is VALID [2022-04-08 11:22:37,601 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 11:22:37,601 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:37,601 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:37,601 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [858270932] [2022-04-08 11:22:37,601 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:37,601 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1801238623] [2022-04-08 11:22:37,601 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1801238623] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:37,601 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:37,601 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:22:37,601 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:37,601 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1686084997] [2022-04-08 11:22:37,602 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1686084997] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:37,602 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:37,602 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:22:37,602 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [257495755] [2022-04-08 11:22:37,602 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:37,602 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-08 11:22:37,602 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:37,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 11:22:37,632 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:37,632 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:22:37,633 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:37,633 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:22:37,633 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-08 11:22:37,633 INFO L87 Difference]: Start difference. First operand 78 states and 102 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 11:22:37,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:37,966 INFO L93 Difference]: Finished difference Result 84 states and 107 transitions. [2022-04-08 11:22:37,966 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:22:37,966 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-08 11:22:37,966 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:37,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 11:22:37,967 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:37,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 11:22:37,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:37,968 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-08 11:22:37,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:38,001 INFO L225 Difference]: With dead ends: 84 [2022-04-08 11:22:38,001 INFO L226 Difference]: Without dead ends: 82 [2022-04-08 11:22:38,001 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-08 11:22:38,002 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 20 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 167 SdHoareTripleChecker+Invalid, 112 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:38,002 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 167 Invalid, 112 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:22:38,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-08 11:22:38,073 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 82. [2022-04-08 11:22:38,073 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:38,073 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:38,074 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:38,074 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:38,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,076 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-08 11:22:38,076 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-08 11:22:38,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:38,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:38,076 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-08 11:22:38,077 INFO L87 Difference]: Start difference. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-08 11:22:38,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,079 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-08 11:22:38,079 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-08 11:22:38,079 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:38,079 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:38,079 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:38,079 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:38,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:38,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 105 transitions. [2022-04-08 11:22:38,081 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 105 transitions. Word has length 41 [2022-04-08 11:22:38,082 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:38,082 INFO L478 AbstractCegarLoop]: Abstraction has 82 states and 105 transitions. [2022-04-08 11:22:38,082 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 11:22:38,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 82 states and 105 transitions. [2022-04-08 11:22:38,179 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:38,179 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-08 11:22:38,179 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 11:22:38,179 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:38,180 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 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, 1, 1, 1] [2022-04-08 11:22:38,204 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:38,380 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:38,380 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:38,381 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:38,381 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 1 times [2022-04-08 11:22:38,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:38,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [916804930] [2022-04-08 11:22:38,381 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:38,381 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 2 times [2022-04-08 11:22:38,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:38,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [105959212] [2022-04-08 11:22:38,381 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:38,382 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:38,392 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:38,392 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1469025608] [2022-04-08 11:22:38,392 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:38,393 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:38,393 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:38,393 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:22:38,394 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-08 11:22:38,437 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:38,437 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:38,437 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:22:38,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:38,449 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:38,612 INFO L272 TraceCheckUtils]: 0: Hoare triple {3180#true} call ULTIMATE.init(); {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L290 TraceCheckUtils]: 1: Hoare triple {3180#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L290 TraceCheckUtils]: 2: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3180#true} {3180#true} #93#return; {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L272 TraceCheckUtils]: 4: Hoare triple {3180#true} call #t~ret8 := main(); {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L290 TraceCheckUtils]: 5: Hoare triple {3180#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L272 TraceCheckUtils]: 6: Hoare triple {3180#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L290 TraceCheckUtils]: 7: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L290 TraceCheckUtils]: 8: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:38,612 INFO L290 TraceCheckUtils]: 9: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3180#true} {3180#true} #77#return; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 11: Hoare triple {3180#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 12: Hoare triple {3180#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 13: Hoare triple {3180#true} assume !!(#t~post6 < 5);havoc #t~post6; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L272 TraceCheckUtils]: 14: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 15: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 16: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 17: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3180#true} {3180#true} #79#return; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L272 TraceCheckUtils]: 19: Hoare triple {3180#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 20: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 21: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:38,613 INFO L290 TraceCheckUtils]: 22: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:38,614 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3180#true} {3180#true} #81#return; {3180#true} is VALID [2022-04-08 11:22:38,614 INFO L290 TraceCheckUtils]: 24: Hoare triple {3180#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3180#true} is VALID [2022-04-08 11:22:38,614 INFO L290 TraceCheckUtils]: 25: Hoare triple {3180#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3180#true} is VALID [2022-04-08 11:22:38,614 INFO L290 TraceCheckUtils]: 26: Hoare triple {3180#true} assume !!(#t~post7 < 5);havoc #t~post7; {3180#true} is VALID [2022-04-08 11:22:38,614 INFO L272 TraceCheckUtils]: 27: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:38,614 INFO L290 TraceCheckUtils]: 28: Hoare triple {3180#true} ~cond := #in~cond; {3269#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:38,614 INFO L290 TraceCheckUtils]: 29: Hoare triple {3269#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:38,615 INFO L290 TraceCheckUtils]: 30: Hoare triple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:38,615 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} {3180#true} #83#return; {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:22:38,615 INFO L272 TraceCheckUtils]: 32: Hoare triple {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:38,615 INFO L290 TraceCheckUtils]: 33: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:38,616 INFO L290 TraceCheckUtils]: 34: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:38,616 INFO L290 TraceCheckUtils]: 35: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:38,616 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3180#true} {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} #85#return; {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:22:38,616 INFO L272 TraceCheckUtils]: 37: Hoare triple {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:38,616 INFO L290 TraceCheckUtils]: 38: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:38,616 INFO L290 TraceCheckUtils]: 39: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:38,616 INFO L290 TraceCheckUtils]: 40: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:38,617 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3180#true} {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} #87#return; {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:22:38,617 INFO L290 TraceCheckUtils]: 42: Hoare triple {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {3314#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-08 11:22:38,618 INFO L272 TraceCheckUtils]: 43: Hoare triple {3314#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:38,618 INFO L290 TraceCheckUtils]: 44: Hoare triple {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:38,618 INFO L290 TraceCheckUtils]: 45: Hoare triple {3322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3181#false} is VALID [2022-04-08 11:22:38,619 INFO L290 TraceCheckUtils]: 46: Hoare triple {3181#false} assume !false; {3181#false} is VALID [2022-04-08 11:22:38,619 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 11:22:38,619 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:22:46,950 INFO L290 TraceCheckUtils]: 46: Hoare triple {3181#false} assume !false; {3181#false} is VALID [2022-04-08 11:22:46,950 INFO L290 TraceCheckUtils]: 45: Hoare triple {3322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3181#false} is VALID [2022-04-08 11:22:46,951 INFO L290 TraceCheckUtils]: 44: Hoare triple {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:46,951 INFO L272 TraceCheckUtils]: 43: Hoare triple {3314#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:46,952 INFO L290 TraceCheckUtils]: 42: Hoare triple {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {3314#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-08 11:22:46,952 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3180#true} {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #87#return; {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:22:46,956 INFO L290 TraceCheckUtils]: 40: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:46,957 INFO L290 TraceCheckUtils]: 39: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:46,957 INFO L290 TraceCheckUtils]: 38: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:46,957 INFO L272 TraceCheckUtils]: 37: Hoare triple {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:46,958 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3180#true} {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #85#return; {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:22:46,958 INFO L290 TraceCheckUtils]: 35: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:46,958 INFO L290 TraceCheckUtils]: 34: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:46,958 INFO L290 TraceCheckUtils]: 33: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:46,958 INFO L272 TraceCheckUtils]: 32: Hoare triple {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:46,975 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} {3180#true} #83#return; {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:22:46,975 INFO L290 TraceCheckUtils]: 30: Hoare triple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:46,976 INFO L290 TraceCheckUtils]: 29: Hoare triple {3384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:46,977 INFO L290 TraceCheckUtils]: 28: Hoare triple {3180#true} ~cond := #in~cond; {3384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:22:46,977 INFO L272 TraceCheckUtils]: 27: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:46,977 INFO L290 TraceCheckUtils]: 26: Hoare triple {3180#true} assume !!(#t~post7 < 5);havoc #t~post7; {3180#true} is VALID [2022-04-08 11:22:46,977 INFO L290 TraceCheckUtils]: 25: Hoare triple {3180#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3180#true} is VALID [2022-04-08 11:22:46,977 INFO L290 TraceCheckUtils]: 24: Hoare triple {3180#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3180#true} {3180#true} #81#return; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 22: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 21: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 20: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L272 TraceCheckUtils]: 19: Hoare triple {3180#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3180#true} {3180#true} #79#return; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 17: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 16: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 15: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L272 TraceCheckUtils]: 14: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 13: Hoare triple {3180#true} assume !!(#t~post6 < 5);havoc #t~post6; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 12: Hoare triple {3180#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L290 TraceCheckUtils]: 11: Hoare triple {3180#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3180#true} is VALID [2022-04-08 11:22:46,978 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3180#true} {3180#true} #77#return; {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L290 TraceCheckUtils]: 8: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L290 TraceCheckUtils]: 7: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L272 TraceCheckUtils]: 6: Hoare triple {3180#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {3180#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L272 TraceCheckUtils]: 4: Hoare triple {3180#true} call #t~ret8 := main(); {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3180#true} {3180#true} #93#return; {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L290 TraceCheckUtils]: 2: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L290 TraceCheckUtils]: 1: Hoare triple {3180#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L272 TraceCheckUtils]: 0: Hoare triple {3180#true} call ULTIMATE.init(); {3180#true} is VALID [2022-04-08 11:22:46,979 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 11:22:46,979 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:46,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [105959212] [2022-04-08 11:22:46,980 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:46,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1469025608] [2022-04-08 11:22:46,980 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1469025608] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:22:46,980 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:22:46,980 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 11:22:46,980 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:46,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [916804930] [2022-04-08 11:22:46,980 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [916804930] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:46,980 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:46,980 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:22:46,980 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1749150482] [2022-04-08 11:22:46,980 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:46,981 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 11:22:46,981 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:46,981 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:47,009 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:47,009 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:22:47,009 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:47,009 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:22:47,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:22:47,010 INFO L87 Difference]: Start difference. First operand 82 states and 105 transitions. Second operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:47,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:47,486 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-08 11:22:47,486 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:22:47,486 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 11:22:47,486 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:47,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:47,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:47,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:47,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:47,488 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-08 11:22:47,564 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:47,565 INFO L225 Difference]: With dead ends: 88 [2022-04-08 11:22:47,565 INFO L226 Difference]: Without dead ends: 86 [2022-04-08 11:22:47,566 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-08 11:22:47,566 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 22 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 108 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 118 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 108 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:47,566 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 115 Invalid, 118 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 108 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:22:47,566 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-08 11:22:47,615 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-08 11:22:47,615 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:47,616 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:47,616 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:47,616 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:47,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:47,619 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-08 11:22:47,619 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 11:22:47,619 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:47,619 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:47,619 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-08 11:22:47,620 INFO L87 Difference]: Start difference. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-08 11:22:47,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:47,622 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-08 11:22:47,622 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 11:22:47,622 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:47,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:47,622 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:47,623 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:47,623 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:22:47,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 108 transitions. [2022-04-08 11:22:47,625 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 108 transitions. Word has length 47 [2022-04-08 11:22:47,625 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:47,625 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 108 transitions. [2022-04-08 11:22:47,626 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:47,626 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 86 states and 108 transitions. [2022-04-08 11:22:47,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:47,756 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 11:22:47,757 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-08 11:22:47,757 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:47,757 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 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, 1, 1, 1, 1] [2022-04-08 11:22:47,785 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:47,957 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:47,957 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:47,958 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:47,958 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 1 times [2022-04-08 11:22:47,958 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:47,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1215398807] [2022-04-08 11:23:03,159 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:23:03,159 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:23:03,159 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 2 times [2022-04-08 11:23:03,159 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:23:03,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1593807887] [2022-04-08 11:23:03,159 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:23:03,160 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:23:03,196 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:23:03,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [425478414] [2022-04-08 11:23:03,196 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:23:03,196 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:23:03,196 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:23:03,197 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:23:03,271 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-08 11:23:03,281 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:23:03,281 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:23:03,281 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:23:03,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:23:03,294 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:23:03,539 INFO L272 TraceCheckUtils]: 0: Hoare triple {3997#true} call ULTIMATE.init(); {3997#true} is VALID [2022-04-08 11:23:03,540 INFO L290 TraceCheckUtils]: 1: Hoare triple {3997#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,540 INFO L290 TraceCheckUtils]: 2: Hoare triple {4005#(<= ~counter~0 0)} assume true; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,540 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4005#(<= ~counter~0 0)} {3997#true} #93#return; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,541 INFO L272 TraceCheckUtils]: 4: Hoare triple {4005#(<= ~counter~0 0)} call #t~ret8 := main(); {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {4005#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,541 INFO L272 TraceCheckUtils]: 6: Hoare triple {4005#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {4005#(<= ~counter~0 0)} ~cond := #in~cond; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {4005#(<= ~counter~0 0)} assume !(0 == ~cond); {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {4005#(<= ~counter~0 0)} assume true; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,543 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4005#(<= ~counter~0 0)} {4005#(<= ~counter~0 0)} #77#return; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,543 INFO L290 TraceCheckUtils]: 11: Hoare triple {4005#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:03,544 INFO L290 TraceCheckUtils]: 12: Hoare triple {4005#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,544 INFO L290 TraceCheckUtils]: 13: Hoare triple {4039#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,545 INFO L272 TraceCheckUtils]: 14: Hoare triple {4039#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,545 INFO L290 TraceCheckUtils]: 15: Hoare triple {4039#(<= ~counter~0 1)} ~cond := #in~cond; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,545 INFO L290 TraceCheckUtils]: 16: Hoare triple {4039#(<= ~counter~0 1)} assume !(0 == ~cond); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,546 INFO L290 TraceCheckUtils]: 17: Hoare triple {4039#(<= ~counter~0 1)} assume true; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,546 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4039#(<= ~counter~0 1)} {4039#(<= ~counter~0 1)} #79#return; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,547 INFO L272 TraceCheckUtils]: 19: Hoare triple {4039#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {4039#(<= ~counter~0 1)} ~cond := #in~cond; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,548 INFO L290 TraceCheckUtils]: 21: Hoare triple {4039#(<= ~counter~0 1)} assume !(0 == ~cond); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,548 INFO L290 TraceCheckUtils]: 22: Hoare triple {4039#(<= ~counter~0 1)} assume true; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,549 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4039#(<= ~counter~0 1)} {4039#(<= ~counter~0 1)} #81#return; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,549 INFO L290 TraceCheckUtils]: 24: Hoare triple {4039#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:03,550 INFO L290 TraceCheckUtils]: 25: Hoare triple {4039#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,550 INFO L290 TraceCheckUtils]: 26: Hoare triple {4079#(<= ~counter~0 2)} assume !!(#t~post7 < 5);havoc #t~post7; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,550 INFO L272 TraceCheckUtils]: 27: Hoare triple {4079#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,551 INFO L290 TraceCheckUtils]: 28: Hoare triple {4079#(<= ~counter~0 2)} ~cond := #in~cond; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,551 INFO L290 TraceCheckUtils]: 29: Hoare triple {4079#(<= ~counter~0 2)} assume !(0 == ~cond); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,551 INFO L290 TraceCheckUtils]: 30: Hoare triple {4079#(<= ~counter~0 2)} assume true; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,552 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4079#(<= ~counter~0 2)} {4079#(<= ~counter~0 2)} #83#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,552 INFO L272 TraceCheckUtils]: 32: Hoare triple {4079#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,553 INFO L290 TraceCheckUtils]: 33: Hoare triple {4079#(<= ~counter~0 2)} ~cond := #in~cond; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,553 INFO L290 TraceCheckUtils]: 34: Hoare triple {4079#(<= ~counter~0 2)} assume !(0 == ~cond); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,553 INFO L290 TraceCheckUtils]: 35: Hoare triple {4079#(<= ~counter~0 2)} assume true; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,554 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4079#(<= ~counter~0 2)} {4079#(<= ~counter~0 2)} #85#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,554 INFO L272 TraceCheckUtils]: 37: Hoare triple {4079#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,554 INFO L290 TraceCheckUtils]: 38: Hoare triple {4079#(<= ~counter~0 2)} ~cond := #in~cond; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,555 INFO L290 TraceCheckUtils]: 39: Hoare triple {4079#(<= ~counter~0 2)} assume !(0 == ~cond); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,555 INFO L290 TraceCheckUtils]: 40: Hoare triple {4079#(<= ~counter~0 2)} assume true; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,555 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4079#(<= ~counter~0 2)} {4079#(<= ~counter~0 2)} #87#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,556 INFO L290 TraceCheckUtils]: 42: Hoare triple {4079#(<= ~counter~0 2)} assume !(~r~0 >= 2 * ~b~0); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,556 INFO L290 TraceCheckUtils]: 43: Hoare triple {4079#(<= ~counter~0 2)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,556 INFO L290 TraceCheckUtils]: 44: Hoare triple {4079#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4137#(<= |main_#t~post6| 2)} is VALID [2022-04-08 11:23:03,557 INFO L290 TraceCheckUtils]: 45: Hoare triple {4137#(<= |main_#t~post6| 2)} assume !(#t~post6 < 5);havoc #t~post6; {3998#false} is VALID [2022-04-08 11:23:03,557 INFO L272 TraceCheckUtils]: 46: Hoare triple {3998#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3998#false} is VALID [2022-04-08 11:23:03,557 INFO L290 TraceCheckUtils]: 47: Hoare triple {3998#false} ~cond := #in~cond; {3998#false} is VALID [2022-04-08 11:23:03,557 INFO L290 TraceCheckUtils]: 48: Hoare triple {3998#false} assume 0 == ~cond; {3998#false} is VALID [2022-04-08 11:23:03,557 INFO L290 TraceCheckUtils]: 49: Hoare triple {3998#false} assume !false; {3998#false} is VALID [2022-04-08 11:23:03,557 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 26 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 11:23:03,557 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:23:03,834 INFO L290 TraceCheckUtils]: 49: Hoare triple {3998#false} assume !false; {3998#false} is VALID [2022-04-08 11:23:03,834 INFO L290 TraceCheckUtils]: 48: Hoare triple {3998#false} assume 0 == ~cond; {3998#false} is VALID [2022-04-08 11:23:03,834 INFO L290 TraceCheckUtils]: 47: Hoare triple {3998#false} ~cond := #in~cond; {3998#false} is VALID [2022-04-08 11:23:03,834 INFO L272 TraceCheckUtils]: 46: Hoare triple {3998#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3998#false} is VALID [2022-04-08 11:23:03,834 INFO L290 TraceCheckUtils]: 45: Hoare triple {4165#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {3998#false} is VALID [2022-04-08 11:23:03,835 INFO L290 TraceCheckUtils]: 44: Hoare triple {4169#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4165#(< |main_#t~post6| 5)} is VALID [2022-04-08 11:23:03,835 INFO L290 TraceCheckUtils]: 43: Hoare triple {4169#(< ~counter~0 5)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {4169#(< ~counter~0 5)} is VALID [2022-04-08 11:23:03,835 INFO L290 TraceCheckUtils]: 42: Hoare triple {4169#(< ~counter~0 5)} assume !(~r~0 >= 2 * ~b~0); {4169#(< ~counter~0 5)} is VALID [2022-04-08 11:23:03,836 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3997#true} {4169#(< ~counter~0 5)} #87#return; {4169#(< ~counter~0 5)} is VALID [2022-04-08 11:23:03,836 INFO L290 TraceCheckUtils]: 40: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:03,836 INFO L290 TraceCheckUtils]: 39: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:03,836 INFO L290 TraceCheckUtils]: 38: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:03,836 INFO L272 TraceCheckUtils]: 37: Hoare triple {4169#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:03,836 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3997#true} {4169#(< ~counter~0 5)} #85#return; {4169#(< ~counter~0 5)} is VALID [2022-04-08 11:23:03,837 INFO L290 TraceCheckUtils]: 35: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:03,837 INFO L290 TraceCheckUtils]: 34: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:03,837 INFO L290 TraceCheckUtils]: 33: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:03,837 INFO L272 TraceCheckUtils]: 32: Hoare triple {4169#(< ~counter~0 5)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:03,837 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3997#true} {4169#(< ~counter~0 5)} #83#return; {4169#(< ~counter~0 5)} is VALID [2022-04-08 11:23:03,837 INFO L290 TraceCheckUtils]: 30: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:03,837 INFO L290 TraceCheckUtils]: 29: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:03,838 INFO L290 TraceCheckUtils]: 28: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:03,838 INFO L272 TraceCheckUtils]: 27: Hoare triple {4169#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:03,838 INFO L290 TraceCheckUtils]: 26: Hoare triple {4169#(< ~counter~0 5)} assume !!(#t~post7 < 5);havoc #t~post7; {4169#(< ~counter~0 5)} is VALID [2022-04-08 11:23:03,839 INFO L290 TraceCheckUtils]: 25: Hoare triple {4227#(< ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4169#(< ~counter~0 5)} is VALID [2022-04-08 11:23:03,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {4227#(< ~counter~0 4)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {4227#(< ~counter~0 4)} is VALID [2022-04-08 11:23:03,839 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3997#true} {4227#(< ~counter~0 4)} #81#return; {4227#(< ~counter~0 4)} is VALID [2022-04-08 11:23:03,839 INFO L290 TraceCheckUtils]: 22: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:03,839 INFO L290 TraceCheckUtils]: 21: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:03,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:03,840 INFO L272 TraceCheckUtils]: 19: Hoare triple {4227#(< ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:03,840 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3997#true} {4227#(< ~counter~0 4)} #79#return; {4227#(< ~counter~0 4)} is VALID [2022-04-08 11:23:03,840 INFO L290 TraceCheckUtils]: 17: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:03,840 INFO L290 TraceCheckUtils]: 16: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:03,840 INFO L290 TraceCheckUtils]: 15: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:03,840 INFO L272 TraceCheckUtils]: 14: Hoare triple {4227#(< ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:03,840 INFO L290 TraceCheckUtils]: 13: Hoare triple {4227#(< ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {4227#(< ~counter~0 4)} is VALID [2022-04-08 11:23:03,841 INFO L290 TraceCheckUtils]: 12: Hoare triple {4079#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4227#(< ~counter~0 4)} is VALID [2022-04-08 11:23:03,841 INFO L290 TraceCheckUtils]: 11: Hoare triple {4079#(<= ~counter~0 2)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,841 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3997#true} {4079#(<= ~counter~0 2)} #77#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,842 INFO L290 TraceCheckUtils]: 9: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:03,842 INFO L290 TraceCheckUtils]: 8: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:03,842 INFO L290 TraceCheckUtils]: 7: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:03,842 INFO L272 TraceCheckUtils]: 6: Hoare triple {4079#(<= ~counter~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:03,842 INFO L290 TraceCheckUtils]: 5: Hoare triple {4079#(<= ~counter~0 2)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,842 INFO L272 TraceCheckUtils]: 4: Hoare triple {4079#(<= ~counter~0 2)} call #t~ret8 := main(); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,843 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4079#(<= ~counter~0 2)} {3997#true} #93#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {4079#(<= ~counter~0 2)} assume true; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {3997#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:03,843 INFO L272 TraceCheckUtils]: 0: Hoare triple {3997#true} call ULTIMATE.init(); {3997#true} is VALID [2022-04-08 11:23:03,843 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-08 11:23:03,844 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:23:03,844 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1593807887] [2022-04-08 11:23:03,844 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:23:03,844 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [425478414] [2022-04-08 11:23:03,844 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [425478414] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:23:03,844 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:23:03,844 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-08 11:23:03,844 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:23:03,844 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1215398807] [2022-04-08 11:23:03,844 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1215398807] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:23:03,844 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:23:03,844 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 11:23:03,844 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [429062071] [2022-04-08 11:23:03,844 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:23:03,845 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) Word has length 50 [2022-04-08 11:23:03,845 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:23:03,845 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:03,949 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:03,949 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 11:23:03,949 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:03,949 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 11:23:03,950 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:23:03,950 INFO L87 Difference]: Start difference. First operand 86 states and 108 transitions. Second operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:04,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:04,308 INFO L93 Difference]: Finished difference Result 115 states and 134 transitions. [2022-04-08 11:23:04,308 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:23:04,308 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) Word has length 50 [2022-04-08 11:23:04,309 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:23:04,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:04,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 79 transitions. [2022-04-08 11:23:04,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:04,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 79 transitions. [2022-04-08 11:23:04,311 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 79 transitions. [2022-04-08 11:23:04,400 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:04,409 INFO L225 Difference]: With dead ends: 115 [2022-04-08 11:23:04,409 INFO L226 Difference]: Without dead ends: 108 [2022-04-08 11:23:04,410 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 91 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=56, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:23:04,411 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 11 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:23:04,411 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 145 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:23:04,412 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-04-08 11:23:04,527 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 106. [2022-04-08 11:23:04,528 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:23:04,529 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:04,530 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:04,535 INFO L87 Difference]: Start difference. First operand 108 states. Second operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:04,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:04,538 INFO L93 Difference]: Finished difference Result 108 states and 127 transitions. [2022-04-08 11:23:04,538 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 127 transitions. [2022-04-08 11:23:04,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:04,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:04,539 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) Second operand 108 states. [2022-04-08 11:23:04,540 INFO L87 Difference]: Start difference. First operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) Second operand 108 states. [2022-04-08 11:23:04,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:04,542 INFO L93 Difference]: Finished difference Result 108 states and 127 transitions. [2022-04-08 11:23:04,542 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 127 transitions. [2022-04-08 11:23:04,542 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:04,542 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:04,542 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:23:04,543 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:23:04,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:04,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 125 transitions. [2022-04-08 11:23:04,545 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 125 transitions. Word has length 50 [2022-04-08 11:23:04,545 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:23:04,545 INFO L478 AbstractCegarLoop]: Abstraction has 106 states and 125 transitions. [2022-04-08 11:23:04,545 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:04,546 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 125 transitions. [2022-04-08 11:23:04,714 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:04,715 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 125 transitions. [2022-04-08 11:23:04,715 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 11:23:04,715 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:23:04,715 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 2, 2, 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] [2022-04-08 11:23:04,739 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-08 11:23:04,916 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-08 11:23:04,916 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:23:04,916 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:23:04,917 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 1 times [2022-04-08 11:23:04,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:04,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1715803755] [2022-04-08 11:23:16,201 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:23:16,201 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:23:16,201 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 2 times [2022-04-08 11:23:16,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:23:16,202 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1992851948] [2022-04-08 11:23:16,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:23:16,202 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:23:16,236 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:23:16,236 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1862203563] [2022-04-08 11:23:16,236 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:23:16,236 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:23:16,236 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:23:16,241 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:23:16,304 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-08 11:23:16,332 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:23:16,332 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:23:16,333 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 11:23:16,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:23:16,347 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:23:16,620 INFO L272 TraceCheckUtils]: 0: Hoare triple {4965#true} call ULTIMATE.init(); {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L290 TraceCheckUtils]: 1: Hoare triple {4965#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L290 TraceCheckUtils]: 2: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4965#true} {4965#true} #93#return; {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L272 TraceCheckUtils]: 4: Hoare triple {4965#true} call #t~ret8 := main(); {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L290 TraceCheckUtils]: 5: Hoare triple {4965#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L272 TraceCheckUtils]: 6: Hoare triple {4965#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L290 TraceCheckUtils]: 7: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:16,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:16,621 INFO L290 TraceCheckUtils]: 9: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,621 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4965#true} {4965#true} #77#return; {4965#true} is VALID [2022-04-08 11:23:16,621 INFO L290 TraceCheckUtils]: 11: Hoare triple {4965#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,621 INFO L290 TraceCheckUtils]: 12: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,622 INFO L290 TraceCheckUtils]: 13: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,622 INFO L272 TraceCheckUtils]: 14: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:16,622 INFO L290 TraceCheckUtils]: 15: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:16,622 INFO L290 TraceCheckUtils]: 16: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:16,622 INFO L290 TraceCheckUtils]: 17: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,623 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4965#true} {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,623 INFO L272 TraceCheckUtils]: 19: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:16,623 INFO L290 TraceCheckUtils]: 20: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:16,623 INFO L290 TraceCheckUtils]: 21: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:16,623 INFO L290 TraceCheckUtils]: 22: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,623 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4965#true} {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,624 INFO L290 TraceCheckUtils]: 24: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,624 INFO L290 TraceCheckUtils]: 25: Hoare triple {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,625 INFO L290 TraceCheckUtils]: 26: Hoare triple {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,625 INFO L272 TraceCheckUtils]: 27: Hoare triple {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:16,625 INFO L290 TraceCheckUtils]: 28: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:16,625 INFO L290 TraceCheckUtils]: 29: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:16,625 INFO L290 TraceCheckUtils]: 30: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,625 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4965#true} {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,626 INFO L272 TraceCheckUtils]: 32: Hoare triple {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:16,626 INFO L290 TraceCheckUtils]: 33: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:16,626 INFO L290 TraceCheckUtils]: 34: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:16,626 INFO L290 TraceCheckUtils]: 35: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,626 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4965#true} {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,626 INFO L272 TraceCheckUtils]: 37: Hoare triple {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:16,626 INFO L290 TraceCheckUtils]: 38: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:16,626 INFO L290 TraceCheckUtils]: 39: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:16,627 INFO L290 TraceCheckUtils]: 40: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,627 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4965#true} {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,627 INFO L290 TraceCheckUtils]: 42: Hoare triple {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:16,628 INFO L290 TraceCheckUtils]: 43: Hoare triple {5043#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:16,628 INFO L290 TraceCheckUtils]: 44: Hoare triple {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:16,629 INFO L290 TraceCheckUtils]: 45: Hoare triple {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:16,629 INFO L272 TraceCheckUtils]: 46: Hoare triple {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:16,629 INFO L290 TraceCheckUtils]: 47: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:16,629 INFO L290 TraceCheckUtils]: 48: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:16,629 INFO L290 TraceCheckUtils]: 49: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:16,629 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4965#true} {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} #79#return; {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:16,630 INFO L272 TraceCheckUtils]: 51: Hoare triple {5101#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:23:16,630 INFO L290 TraceCheckUtils]: 52: Hoare triple {5126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:23:16,631 INFO L290 TraceCheckUtils]: 53: Hoare triple {5130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4966#false} is VALID [2022-04-08 11:23:16,631 INFO L290 TraceCheckUtils]: 54: Hoare triple {4966#false} assume !false; {4966#false} is VALID [2022-04-08 11:23:16,631 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 4 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 11:23:16,631 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:23:38,906 INFO L290 TraceCheckUtils]: 54: Hoare triple {4966#false} assume !false; {4966#false} is VALID [2022-04-08 11:23:38,907 INFO L290 TraceCheckUtils]: 53: Hoare triple {5130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4966#false} is VALID [2022-04-08 11:23:38,907 INFO L290 TraceCheckUtils]: 52: Hoare triple {5126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:23:38,908 INFO L272 TraceCheckUtils]: 51: Hoare triple {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:23:38,908 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4965#true} {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:38,908 INFO L290 TraceCheckUtils]: 49: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,909 INFO L290 TraceCheckUtils]: 48: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:38,909 INFO L290 TraceCheckUtils]: 47: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:38,909 INFO L272 TraceCheckUtils]: 46: Hoare triple {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:38,913 INFO L290 TraceCheckUtils]: 45: Hoare triple {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 5);havoc #t~post6; {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:38,913 INFO L290 TraceCheckUtils]: 44: Hoare triple {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:38,943 INFO L290 TraceCheckUtils]: 43: Hoare triple {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5146#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:38,943 INFO L290 TraceCheckUtils]: 42: Hoare triple {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:38,944 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4965#true} {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:38,944 INFO L290 TraceCheckUtils]: 40: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,944 INFO L290 TraceCheckUtils]: 39: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:38,944 INFO L290 TraceCheckUtils]: 38: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:38,944 INFO L272 TraceCheckUtils]: 37: Hoare triple {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:38,954 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4965#true} {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #85#return; {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:38,954 INFO L290 TraceCheckUtils]: 35: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,954 INFO L290 TraceCheckUtils]: 34: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:38,954 INFO L290 TraceCheckUtils]: 33: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:38,954 INFO L272 TraceCheckUtils]: 32: Hoare triple {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:38,955 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4965#true} {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #83#return; {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:38,955 INFO L290 TraceCheckUtils]: 30: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,955 INFO L290 TraceCheckUtils]: 29: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:38,955 INFO L290 TraceCheckUtils]: 28: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:38,955 INFO L272 TraceCheckUtils]: 27: Hoare triple {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:38,963 INFO L290 TraceCheckUtils]: 26: Hoare triple {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !!(#t~post7 < 5);havoc #t~post7; {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:38,963 INFO L290 TraceCheckUtils]: 25: Hoare triple {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:38,964 INFO L290 TraceCheckUtils]: 24: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5171#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:38,965 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4965#true} {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:38,965 INFO L290 TraceCheckUtils]: 22: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,966 INFO L290 TraceCheckUtils]: 21: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:38,966 INFO L290 TraceCheckUtils]: 20: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:38,966 INFO L272 TraceCheckUtils]: 19: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:38,966 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4965#true} {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:38,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,966 INFO L290 TraceCheckUtils]: 16: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:38,966 INFO L290 TraceCheckUtils]: 15: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:38,966 INFO L272 TraceCheckUtils]: 14: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:38,967 INFO L290 TraceCheckUtils]: 13: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:38,967 INFO L290 TraceCheckUtils]: 12: Hoare triple {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:38,967 INFO L290 TraceCheckUtils]: 11: Hoare triple {4965#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5003#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:38,968 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4965#true} {4965#true} #77#return; {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L290 TraceCheckUtils]: 9: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L290 TraceCheckUtils]: 8: Hoare triple {4965#true} assume !(0 == ~cond); {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L290 TraceCheckUtils]: 7: Hoare triple {4965#true} ~cond := #in~cond; {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L272 TraceCheckUtils]: 6: Hoare triple {4965#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L290 TraceCheckUtils]: 5: Hoare triple {4965#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L272 TraceCheckUtils]: 4: Hoare triple {4965#true} call #t~ret8 := main(); {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4965#true} {4965#true} #93#return; {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L290 TraceCheckUtils]: 2: Hoare triple {4965#true} assume true; {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L290 TraceCheckUtils]: 1: Hoare triple {4965#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L272 TraceCheckUtils]: 0: Hoare triple {4965#true} call ULTIMATE.init(); {4965#true} is VALID [2022-04-08 11:23:38,968 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 4 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 11:23:38,968 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:23:38,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1992851948] [2022-04-08 11:23:38,969 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:23:38,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1862203563] [2022-04-08 11:23:38,969 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1862203563] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:23:38,969 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:23:38,969 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-08 11:23:38,969 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:23:38,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1715803755] [2022-04-08 11:23:38,969 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1715803755] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:23:38,969 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:23:38,969 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 11:23:38,969 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1849113629] [2022-04-08 11:23:38,969 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:23:38,970 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-08 11:23:38,970 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:23:38,970 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:39,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:39,014 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 11:23:39,014 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:39,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 11:23:39,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:23:39,014 INFO L87 Difference]: Start difference. First operand 106 states and 125 transitions. Second operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:39,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:39,578 INFO L93 Difference]: Finished difference Result 134 states and 166 transitions. [2022-04-08 11:23:39,578 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:23:39,579 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-08 11:23:39,579 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:23:39,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:39,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 107 transitions. [2022-04-08 11:23:39,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:39,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 107 transitions. [2022-04-08 11:23:39,591 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 107 transitions. [2022-04-08 11:23:39,688 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:39,690 INFO L225 Difference]: With dead ends: 134 [2022-04-08 11:23:39,690 INFO L226 Difference]: Without dead ends: 131 [2022-04-08 11:23:39,690 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 100 SyntacticMatches, 2 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:23:39,691 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 24 mSDsluCounter, 177 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 237 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 11:23:39,691 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 237 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 182 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 11:23:39,691 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-08 11:23:39,840 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 127. [2022-04-08 11:23:39,840 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:23:39,840 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:39,841 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:39,842 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:39,850 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:39,850 INFO L93 Difference]: Finished difference Result 131 states and 162 transitions. [2022-04-08 11:23:39,850 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 162 transitions. [2022-04-08 11:23:39,851 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:39,851 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:39,853 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) Second operand 131 states. [2022-04-08 11:23:39,853 INFO L87 Difference]: Start difference. First operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) Second operand 131 states. [2022-04-08 11:23:39,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:39,855 INFO L93 Difference]: Finished difference Result 131 states and 162 transitions. [2022-04-08 11:23:39,856 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 162 transitions. [2022-04-08 11:23:39,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:39,856 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:39,856 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:23:39,856 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:23:39,856 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:39,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 158 transitions. [2022-04-08 11:23:39,858 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 158 transitions. Word has length 55 [2022-04-08 11:23:39,859 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:23:39,859 INFO L478 AbstractCegarLoop]: Abstraction has 127 states and 158 transitions. [2022-04-08 11:23:39,859 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:39,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 127 states and 158 transitions. [2022-04-08 11:23:40,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:40,003 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 158 transitions. [2022-04-08 11:23:40,004 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-08 11:23:40,004 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:23:40,004 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:23:40,023 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 11:23:40,204 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-08 11:23:40,204 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:23:40,205 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:23:40,205 INFO L85 PathProgramCache]: Analyzing trace with hash 765609565, now seen corresponding path program 1 times [2022-04-08 11:23:40,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:40,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [981345234] [2022-04-08 11:23:53,839 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:23:53,840 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:23:53,840 INFO L85 PathProgramCache]: Analyzing trace with hash 765609565, now seen corresponding path program 2 times [2022-04-08 11:23:53,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:23:53,840 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2028711444] [2022-04-08 11:23:53,840 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:23:53,840 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:23:53,862 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:23:53,862 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2101678904] [2022-04-08 11:23:53,862 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:23:53,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:23:53,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:23:53,874 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:23:53,879 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-08 11:23:53,917 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:23:53,917 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:23:53,918 INFO L263 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:23:53,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:23:53,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:23:54,277 INFO L272 TraceCheckUtils]: 0: Hoare triple {6089#true} call ULTIMATE.init(); {6089#true} is VALID [2022-04-08 11:23:54,278 INFO L290 TraceCheckUtils]: 1: Hoare triple {6089#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,278 INFO L290 TraceCheckUtils]: 2: Hoare triple {6097#(<= ~counter~0 0)} assume true; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,278 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6097#(<= ~counter~0 0)} {6089#true} #93#return; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,279 INFO L272 TraceCheckUtils]: 4: Hoare triple {6097#(<= ~counter~0 0)} call #t~ret8 := main(); {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,279 INFO L290 TraceCheckUtils]: 5: Hoare triple {6097#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,279 INFO L272 TraceCheckUtils]: 6: Hoare triple {6097#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,280 INFO L290 TraceCheckUtils]: 7: Hoare triple {6097#(<= ~counter~0 0)} ~cond := #in~cond; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,281 INFO L290 TraceCheckUtils]: 8: Hoare triple {6097#(<= ~counter~0 0)} assume !(0 == ~cond); {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,283 INFO L290 TraceCheckUtils]: 9: Hoare triple {6097#(<= ~counter~0 0)} assume true; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,285 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6097#(<= ~counter~0 0)} {6097#(<= ~counter~0 0)} #77#return; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,285 INFO L290 TraceCheckUtils]: 11: Hoare triple {6097#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6097#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:54,286 INFO L290 TraceCheckUtils]: 12: Hoare triple {6097#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,288 INFO L290 TraceCheckUtils]: 13: Hoare triple {6131#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,288 INFO L272 TraceCheckUtils]: 14: Hoare triple {6131#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,290 INFO L290 TraceCheckUtils]: 15: Hoare triple {6131#(<= ~counter~0 1)} ~cond := #in~cond; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,290 INFO L290 TraceCheckUtils]: 16: Hoare triple {6131#(<= ~counter~0 1)} assume !(0 == ~cond); {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,291 INFO L290 TraceCheckUtils]: 17: Hoare triple {6131#(<= ~counter~0 1)} assume true; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,291 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6131#(<= ~counter~0 1)} {6131#(<= ~counter~0 1)} #79#return; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,292 INFO L272 TraceCheckUtils]: 19: Hoare triple {6131#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,292 INFO L290 TraceCheckUtils]: 20: Hoare triple {6131#(<= ~counter~0 1)} ~cond := #in~cond; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,292 INFO L290 TraceCheckUtils]: 21: Hoare triple {6131#(<= ~counter~0 1)} assume !(0 == ~cond); {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,292 INFO L290 TraceCheckUtils]: 22: Hoare triple {6131#(<= ~counter~0 1)} assume true; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,293 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6131#(<= ~counter~0 1)} {6131#(<= ~counter~0 1)} #81#return; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,293 INFO L290 TraceCheckUtils]: 24: Hoare triple {6131#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6131#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:54,294 INFO L290 TraceCheckUtils]: 25: Hoare triple {6131#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,294 INFO L290 TraceCheckUtils]: 26: Hoare triple {6171#(<= ~counter~0 2)} assume !!(#t~post7 < 5);havoc #t~post7; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,294 INFO L272 TraceCheckUtils]: 27: Hoare triple {6171#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,295 INFO L290 TraceCheckUtils]: 28: Hoare triple {6171#(<= ~counter~0 2)} ~cond := #in~cond; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,295 INFO L290 TraceCheckUtils]: 29: Hoare triple {6171#(<= ~counter~0 2)} assume !(0 == ~cond); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,295 INFO L290 TraceCheckUtils]: 30: Hoare triple {6171#(<= ~counter~0 2)} assume true; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,296 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6171#(<= ~counter~0 2)} {6171#(<= ~counter~0 2)} #83#return; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,296 INFO L272 TraceCheckUtils]: 32: Hoare triple {6171#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,297 INFO L290 TraceCheckUtils]: 33: Hoare triple {6171#(<= ~counter~0 2)} ~cond := #in~cond; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,297 INFO L290 TraceCheckUtils]: 34: Hoare triple {6171#(<= ~counter~0 2)} assume !(0 == ~cond); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,297 INFO L290 TraceCheckUtils]: 35: Hoare triple {6171#(<= ~counter~0 2)} assume true; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,298 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6171#(<= ~counter~0 2)} {6171#(<= ~counter~0 2)} #85#return; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,298 INFO L272 TraceCheckUtils]: 37: Hoare triple {6171#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,298 INFO L290 TraceCheckUtils]: 38: Hoare triple {6171#(<= ~counter~0 2)} ~cond := #in~cond; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,298 INFO L290 TraceCheckUtils]: 39: Hoare triple {6171#(<= ~counter~0 2)} assume !(0 == ~cond); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,299 INFO L290 TraceCheckUtils]: 40: Hoare triple {6171#(<= ~counter~0 2)} assume true; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,299 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6171#(<= ~counter~0 2)} {6171#(<= ~counter~0 2)} #87#return; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,299 INFO L290 TraceCheckUtils]: 42: Hoare triple {6171#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,300 INFO L272 TraceCheckUtils]: 43: Hoare triple {6171#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,300 INFO L290 TraceCheckUtils]: 44: Hoare triple {6171#(<= ~counter~0 2)} ~cond := #in~cond; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,315 INFO L290 TraceCheckUtils]: 45: Hoare triple {6171#(<= ~counter~0 2)} assume !(0 == ~cond); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,315 INFO L290 TraceCheckUtils]: 46: Hoare triple {6171#(<= ~counter~0 2)} assume true; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,316 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6171#(<= ~counter~0 2)} {6171#(<= ~counter~0 2)} #89#return; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,316 INFO L290 TraceCheckUtils]: 48: Hoare triple {6171#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,316 INFO L290 TraceCheckUtils]: 49: Hoare triple {6171#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6244#(<= |main_#t~post7| 2)} is VALID [2022-04-08 11:23:54,317 INFO L290 TraceCheckUtils]: 50: Hoare triple {6244#(<= |main_#t~post7| 2)} assume !(#t~post7 < 5);havoc #t~post7; {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L290 TraceCheckUtils]: 51: Hoare triple {6090#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L290 TraceCheckUtils]: 52: Hoare triple {6090#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L290 TraceCheckUtils]: 53: Hoare triple {6090#false} assume !(#t~post6 < 5);havoc #t~post6; {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L272 TraceCheckUtils]: 54: Hoare triple {6090#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L290 TraceCheckUtils]: 55: Hoare triple {6090#false} ~cond := #in~cond; {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L290 TraceCheckUtils]: 56: Hoare triple {6090#false} assume 0 == ~cond; {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L290 TraceCheckUtils]: 57: Hoare triple {6090#false} assume !false; {6090#false} is VALID [2022-04-08 11:23:54,317 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 14 proven. 34 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 11:23:54,317 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:23:54,623 INFO L290 TraceCheckUtils]: 57: Hoare triple {6090#false} assume !false; {6090#false} is VALID [2022-04-08 11:23:54,623 INFO L290 TraceCheckUtils]: 56: Hoare triple {6090#false} assume 0 == ~cond; {6090#false} is VALID [2022-04-08 11:23:54,623 INFO L290 TraceCheckUtils]: 55: Hoare triple {6090#false} ~cond := #in~cond; {6090#false} is VALID [2022-04-08 11:23:54,623 INFO L272 TraceCheckUtils]: 54: Hoare triple {6090#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6090#false} is VALID [2022-04-08 11:23:54,623 INFO L290 TraceCheckUtils]: 53: Hoare triple {6090#false} assume !(#t~post6 < 5);havoc #t~post6; {6090#false} is VALID [2022-04-08 11:23:54,623 INFO L290 TraceCheckUtils]: 52: Hoare triple {6090#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6090#false} is VALID [2022-04-08 11:23:54,623 INFO L290 TraceCheckUtils]: 51: Hoare triple {6090#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6090#false} is VALID [2022-04-08 11:23:54,623 INFO L290 TraceCheckUtils]: 50: Hoare triple {6290#(< |main_#t~post7| 5)} assume !(#t~post7 < 5);havoc #t~post7; {6090#false} is VALID [2022-04-08 11:23:54,624 INFO L290 TraceCheckUtils]: 49: Hoare triple {6294#(< ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6290#(< |main_#t~post7| 5)} is VALID [2022-04-08 11:23:54,624 INFO L290 TraceCheckUtils]: 48: Hoare triple {6294#(< ~counter~0 5)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,625 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6089#true} {6294#(< ~counter~0 5)} #89#return; {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,625 INFO L290 TraceCheckUtils]: 46: Hoare triple {6089#true} assume true; {6089#true} is VALID [2022-04-08 11:23:54,625 INFO L290 TraceCheckUtils]: 45: Hoare triple {6089#true} assume !(0 == ~cond); {6089#true} is VALID [2022-04-08 11:23:54,625 INFO L290 TraceCheckUtils]: 44: Hoare triple {6089#true} ~cond := #in~cond; {6089#true} is VALID [2022-04-08 11:23:54,625 INFO L272 TraceCheckUtils]: 43: Hoare triple {6294#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6089#true} is VALID [2022-04-08 11:23:54,625 INFO L290 TraceCheckUtils]: 42: Hoare triple {6294#(< ~counter~0 5)} assume !!(~r~0 >= 2 * ~b~0); {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,626 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6089#true} {6294#(< ~counter~0 5)} #87#return; {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,626 INFO L290 TraceCheckUtils]: 40: Hoare triple {6089#true} assume true; {6089#true} is VALID [2022-04-08 11:23:54,626 INFO L290 TraceCheckUtils]: 39: Hoare triple {6089#true} assume !(0 == ~cond); {6089#true} is VALID [2022-04-08 11:23:54,626 INFO L290 TraceCheckUtils]: 38: Hoare triple {6089#true} ~cond := #in~cond; {6089#true} is VALID [2022-04-08 11:23:54,626 INFO L272 TraceCheckUtils]: 37: Hoare triple {6294#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6089#true} is VALID [2022-04-08 11:23:54,627 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6089#true} {6294#(< ~counter~0 5)} #85#return; {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,627 INFO L290 TraceCheckUtils]: 35: Hoare triple {6089#true} assume true; {6089#true} is VALID [2022-04-08 11:23:54,627 INFO L290 TraceCheckUtils]: 34: Hoare triple {6089#true} assume !(0 == ~cond); {6089#true} is VALID [2022-04-08 11:23:54,627 INFO L290 TraceCheckUtils]: 33: Hoare triple {6089#true} ~cond := #in~cond; {6089#true} is VALID [2022-04-08 11:23:54,627 INFO L272 TraceCheckUtils]: 32: Hoare triple {6294#(< ~counter~0 5)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6089#true} is VALID [2022-04-08 11:23:54,627 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6089#true} {6294#(< ~counter~0 5)} #83#return; {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,627 INFO L290 TraceCheckUtils]: 30: Hoare triple {6089#true} assume true; {6089#true} is VALID [2022-04-08 11:23:54,627 INFO L290 TraceCheckUtils]: 29: Hoare triple {6089#true} assume !(0 == ~cond); {6089#true} is VALID [2022-04-08 11:23:54,628 INFO L290 TraceCheckUtils]: 28: Hoare triple {6089#true} ~cond := #in~cond; {6089#true} is VALID [2022-04-08 11:23:54,628 INFO L272 TraceCheckUtils]: 27: Hoare triple {6294#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6089#true} is VALID [2022-04-08 11:23:54,628 INFO L290 TraceCheckUtils]: 26: Hoare triple {6294#(< ~counter~0 5)} assume !!(#t~post7 < 5);havoc #t~post7; {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,628 INFO L290 TraceCheckUtils]: 25: Hoare triple {6367#(< ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6294#(< ~counter~0 5)} is VALID [2022-04-08 11:23:54,629 INFO L290 TraceCheckUtils]: 24: Hoare triple {6367#(< ~counter~0 4)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6367#(< ~counter~0 4)} is VALID [2022-04-08 11:23:54,629 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6089#true} {6367#(< ~counter~0 4)} #81#return; {6367#(< ~counter~0 4)} is VALID [2022-04-08 11:23:54,629 INFO L290 TraceCheckUtils]: 22: Hoare triple {6089#true} assume true; {6089#true} is VALID [2022-04-08 11:23:54,629 INFO L290 TraceCheckUtils]: 21: Hoare triple {6089#true} assume !(0 == ~cond); {6089#true} is VALID [2022-04-08 11:23:54,629 INFO L290 TraceCheckUtils]: 20: Hoare triple {6089#true} ~cond := #in~cond; {6089#true} is VALID [2022-04-08 11:23:54,630 INFO L272 TraceCheckUtils]: 19: Hoare triple {6367#(< ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6089#true} is VALID [2022-04-08 11:23:54,630 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6089#true} {6367#(< ~counter~0 4)} #79#return; {6367#(< ~counter~0 4)} is VALID [2022-04-08 11:23:54,630 INFO L290 TraceCheckUtils]: 17: Hoare triple {6089#true} assume true; {6089#true} is VALID [2022-04-08 11:23:54,630 INFO L290 TraceCheckUtils]: 16: Hoare triple {6089#true} assume !(0 == ~cond); {6089#true} is VALID [2022-04-08 11:23:54,630 INFO L290 TraceCheckUtils]: 15: Hoare triple {6089#true} ~cond := #in~cond; {6089#true} is VALID [2022-04-08 11:23:54,630 INFO L272 TraceCheckUtils]: 14: Hoare triple {6367#(< ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6089#true} is VALID [2022-04-08 11:23:54,631 INFO L290 TraceCheckUtils]: 13: Hoare triple {6367#(< ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {6367#(< ~counter~0 4)} is VALID [2022-04-08 11:23:54,631 INFO L290 TraceCheckUtils]: 12: Hoare triple {6171#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6367#(< ~counter~0 4)} is VALID [2022-04-08 11:23:54,631 INFO L290 TraceCheckUtils]: 11: Hoare triple {6171#(<= ~counter~0 2)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,632 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6089#true} {6171#(<= ~counter~0 2)} #77#return; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,632 INFO L290 TraceCheckUtils]: 9: Hoare triple {6089#true} assume true; {6089#true} is VALID [2022-04-08 11:23:54,632 INFO L290 TraceCheckUtils]: 8: Hoare triple {6089#true} assume !(0 == ~cond); {6089#true} is VALID [2022-04-08 11:23:54,632 INFO L290 TraceCheckUtils]: 7: Hoare triple {6089#true} ~cond := #in~cond; {6089#true} is VALID [2022-04-08 11:23:54,632 INFO L272 TraceCheckUtils]: 6: Hoare triple {6171#(<= ~counter~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6089#true} is VALID [2022-04-08 11:23:54,632 INFO L290 TraceCheckUtils]: 5: Hoare triple {6171#(<= ~counter~0 2)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,633 INFO L272 TraceCheckUtils]: 4: Hoare triple {6171#(<= ~counter~0 2)} call #t~ret8 := main(); {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,633 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6171#(<= ~counter~0 2)} {6089#true} #93#return; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {6171#(<= ~counter~0 2)} assume true; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,634 INFO L290 TraceCheckUtils]: 1: Hoare triple {6089#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6171#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:54,634 INFO L272 TraceCheckUtils]: 0: Hoare triple {6089#true} call ULTIMATE.init(); {6089#true} is VALID [2022-04-08 11:23:54,634 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 11:23:54,634 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:23:54,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2028711444] [2022-04-08 11:23:54,634 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:23:54,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2101678904] [2022-04-08 11:23:54,634 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2101678904] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:23:54,634 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:23:54,634 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-08 11:23:54,635 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:23:54,635 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [981345234] [2022-04-08 11:23:54,635 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [981345234] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:23:54,635 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:23:54,635 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 11:23:54,635 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1473289061] [2022-04-08 11:23:54,635 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:23:54,638 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) Word has length 58 [2022-04-08 11:23:54,638 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:23:54,638 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:54,673 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:54,673 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 11:23:54,673 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:54,673 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 11:23:54,673 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:23:54,673 INFO L87 Difference]: Start difference. First operand 127 states and 158 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:54,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:54,924 INFO L93 Difference]: Finished difference Result 173 states and 218 transitions. [2022-04-08 11:23:54,924 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:23:54,924 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) Word has length 58 [2022-04-08 11:23:54,925 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:23:54,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:54,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 103 transitions. [2022-04-08 11:23:54,926 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:54,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 103 transitions. [2022-04-08 11:23:54,927 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 103 transitions. [2022-04-08 11:23:55,008 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:55,010 INFO L225 Difference]: With dead ends: 173 [2022-04-08 11:23:55,010 INFO L226 Difference]: Without dead ends: 130 [2022-04-08 11:23:55,011 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:23:55,011 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 16 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:23:55,011 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 129 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:23:55,012 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 130 states. [2022-04-08 11:23:55,140 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 130 to 130. [2022-04-08 11:23:55,140 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:23:55,140 INFO L82 GeneralOperation]: Start isEquivalent. First operand 130 states. Second operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:55,141 INFO L74 IsIncluded]: Start isIncluded. First operand 130 states. Second operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:55,141 INFO L87 Difference]: Start difference. First operand 130 states. Second operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:55,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:55,159 INFO L93 Difference]: Finished difference Result 130 states and 161 transitions. [2022-04-08 11:23:55,159 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 161 transitions. [2022-04-08 11:23:55,160 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:55,160 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:55,160 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) Second operand 130 states. [2022-04-08 11:23:55,160 INFO L87 Difference]: Start difference. First operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) Second operand 130 states. [2022-04-08 11:23:55,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:55,162 INFO L93 Difference]: Finished difference Result 130 states and 161 transitions. [2022-04-08 11:23:55,162 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 161 transitions. [2022-04-08 11:23:55,162 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:55,162 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:55,162 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:23:55,163 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:23:55,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:55,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 161 transitions. [2022-04-08 11:23:55,165 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 161 transitions. Word has length 58 [2022-04-08 11:23:55,165 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:23:55,165 INFO L478 AbstractCegarLoop]: Abstraction has 130 states and 161 transitions. [2022-04-08 11:23:55,165 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:55,165 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 161 transitions. [2022-04-08 11:23:55,320 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:55,321 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 161 transitions. [2022-04-08 11:23:55,321 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-08 11:23:55,321 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:23:55,321 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 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, 1, 1, 1, 1, 1, 1] [2022-04-08 11:23:55,345 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-08 11:23:55,521 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-08 11:23:55,522 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:23:55,522 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:23:55,522 INFO L85 PathProgramCache]: Analyzing trace with hash 78053411, now seen corresponding path program 1 times [2022-04-08 11:23:55,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:55,522 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2098997142] [2022-04-08 11:24:09,534 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:09,534 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:24:09,534 INFO L85 PathProgramCache]: Analyzing trace with hash 78053411, now seen corresponding path program 2 times [2022-04-08 11:24:09,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:09,535 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2140926707] [2022-04-08 11:24:09,535 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:09,535 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:09,546 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:09,546 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1841673829] [2022-04-08 11:24:09,546 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:09,546 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:09,546 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:09,556 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:24:09,559 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-08 11:24:09,628 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:09,628 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:09,628 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 11:24:09,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:09,638 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:09,845 INFO L272 TraceCheckUtils]: 0: Hoare triple {7313#true} call ULTIMATE.init(); {7313#true} is VALID [2022-04-08 11:24:09,845 INFO L290 TraceCheckUtils]: 1: Hoare triple {7313#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7313#true} is VALID [2022-04-08 11:24:09,845 INFO L290 TraceCheckUtils]: 2: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,845 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7313#true} {7313#true} #93#return; {7313#true} is VALID [2022-04-08 11:24:09,845 INFO L272 TraceCheckUtils]: 4: Hoare triple {7313#true} call #t~ret8 := main(); {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 5: Hoare triple {7313#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L272 TraceCheckUtils]: 6: Hoare triple {7313#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 7: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7313#true} {7313#true} #77#return; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 11: Hoare triple {7313#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 12: Hoare triple {7313#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {7313#true} assume !!(#t~post6 < 5);havoc #t~post6; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L272 TraceCheckUtils]: 14: Hoare triple {7313#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 15: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 16: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 17: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7313#true} {7313#true} #79#return; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L272 TraceCheckUtils]: 19: Hoare triple {7313#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,846 INFO L290 TraceCheckUtils]: 21: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,847 INFO L290 TraceCheckUtils]: 22: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,847 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7313#true} {7313#true} #81#return; {7313#true} is VALID [2022-04-08 11:24:09,847 INFO L290 TraceCheckUtils]: 24: Hoare triple {7313#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {7390#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:09,847 INFO L290 TraceCheckUtils]: 25: Hoare triple {7390#(<= main_~b~0 main_~y~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7390#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:09,848 INFO L290 TraceCheckUtils]: 26: Hoare triple {7390#(<= main_~b~0 main_~y~0)} assume !!(#t~post7 < 5);havoc #t~post7; {7390#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:09,848 INFO L272 TraceCheckUtils]: 27: Hoare triple {7390#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,848 INFO L290 TraceCheckUtils]: 28: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,848 INFO L290 TraceCheckUtils]: 29: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,848 INFO L290 TraceCheckUtils]: 30: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,848 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7313#true} {7390#(<= main_~b~0 main_~y~0)} #83#return; {7390#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:09,848 INFO L272 TraceCheckUtils]: 32: Hoare triple {7390#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,849 INFO L290 TraceCheckUtils]: 33: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,849 INFO L290 TraceCheckUtils]: 34: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,849 INFO L290 TraceCheckUtils]: 35: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,849 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7313#true} {7390#(<= main_~b~0 main_~y~0)} #85#return; {7390#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:09,849 INFO L272 TraceCheckUtils]: 37: Hoare triple {7390#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,849 INFO L290 TraceCheckUtils]: 38: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,849 INFO L290 TraceCheckUtils]: 39: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,849 INFO L290 TraceCheckUtils]: 40: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,850 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7313#true} {7390#(<= main_~b~0 main_~y~0)} #87#return; {7390#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:09,850 INFO L290 TraceCheckUtils]: 42: Hoare triple {7390#(<= main_~b~0 main_~y~0)} assume !(~r~0 >= 2 * ~b~0); {7445#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:24:09,851 INFO L290 TraceCheckUtils]: 43: Hoare triple {7445#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {7449#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:09,851 INFO L290 TraceCheckUtils]: 44: Hoare triple {7449#(< main_~r~0 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7449#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:09,851 INFO L290 TraceCheckUtils]: 45: Hoare triple {7449#(< main_~r~0 main_~y~0)} assume !!(#t~post6 < 5);havoc #t~post6; {7449#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:09,851 INFO L272 TraceCheckUtils]: 46: Hoare triple {7449#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,851 INFO L290 TraceCheckUtils]: 47: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,852 INFO L290 TraceCheckUtils]: 48: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,852 INFO L290 TraceCheckUtils]: 49: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,852 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7313#true} {7449#(< main_~r~0 main_~y~0)} #79#return; {7449#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:09,852 INFO L272 TraceCheckUtils]: 51: Hoare triple {7449#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7313#true} is VALID [2022-04-08 11:24:09,852 INFO L290 TraceCheckUtils]: 52: Hoare triple {7313#true} ~cond := #in~cond; {7313#true} is VALID [2022-04-08 11:24:09,852 INFO L290 TraceCheckUtils]: 53: Hoare triple {7313#true} assume !(0 == ~cond); {7313#true} is VALID [2022-04-08 11:24:09,852 INFO L290 TraceCheckUtils]: 54: Hoare triple {7313#true} assume true; {7313#true} is VALID [2022-04-08 11:24:09,853 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7313#true} {7449#(< main_~r~0 main_~y~0)} #81#return; {7449#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 56: Hoare triple {7449#(< main_~r~0 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 57: Hoare triple {7314#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 58: Hoare triple {7314#false} assume !(#t~post7 < 5);havoc #t~post7; {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 59: Hoare triple {7314#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 60: Hoare triple {7314#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 61: Hoare triple {7314#false} assume !(#t~post6 < 5);havoc #t~post6; {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L272 TraceCheckUtils]: 62: Hoare triple {7314#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 63: Hoare triple {7314#false} ~cond := #in~cond; {7314#false} is VALID [2022-04-08 11:24:09,853 INFO L290 TraceCheckUtils]: 64: Hoare triple {7314#false} assume 0 == ~cond; {7314#false} is VALID [2022-04-08 11:24:09,854 INFO L290 TraceCheckUtils]: 65: Hoare triple {7314#false} assume !false; {7314#false} is VALID [2022-04-08 11:24:09,854 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 26 proven. 0 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-08 11:24:09,854 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:24:09,854 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:09,854 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2140926707] [2022-04-08 11:24:09,854 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:09,854 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1841673829] [2022-04-08 11:24:09,854 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1841673829] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:09,854 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:09,854 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:09,854 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:09,854 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2098997142] [2022-04-08 11:24:09,854 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2098997142] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:09,854 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:09,855 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:09,855 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1615685564] [2022-04-08 11:24:09,855 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:09,855 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 11:24:09,855 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:09,855 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:09,902 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:09,902 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:24:09,902 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:09,903 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:24:09,903 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:24:09,903 INFO L87 Difference]: Start difference. First operand 130 states and 161 transitions. Second operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:10,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:10,187 INFO L93 Difference]: Finished difference Result 190 states and 240 transitions. [2022-04-08 11:24:10,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 11:24:10,187 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 11:24:10,187 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:10,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:10,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 109 transitions. [2022-04-08 11:24:10,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:10,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 109 transitions. [2022-04-08 11:24:10,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 109 transitions. [2022-04-08 11:24:10,258 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:10,259 INFO L225 Difference]: With dead ends: 190 [2022-04-08 11:24:10,260 INFO L226 Difference]: Without dead ends: 119 [2022-04-08 11:24:10,260 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 63 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:24:10,261 INFO L913 BasicCegarLoop]: 56 mSDtfsCounter, 11 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 120 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:24:10,261 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 120 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:24:10,261 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-08 11:24:10,359 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 112. [2022-04-08 11:24:10,359 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:10,359 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:10,359 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:10,359 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:10,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:10,361 INFO L93 Difference]: Finished difference Result 119 states and 143 transitions. [2022-04-08 11:24:10,361 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 143 transitions. [2022-04-08 11:24:10,362 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:10,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:10,362 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 119 states. [2022-04-08 11:24:10,362 INFO L87 Difference]: Start difference. First operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 119 states. [2022-04-08 11:24:10,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:10,364 INFO L93 Difference]: Finished difference Result 119 states and 143 transitions. [2022-04-08 11:24:10,364 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 143 transitions. [2022-04-08 11:24:10,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:10,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:10,364 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:10,364 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:10,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:10,366 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 133 transitions. [2022-04-08 11:24:10,366 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 133 transitions. Word has length 66 [2022-04-08 11:24:10,366 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:10,367 INFO L478 AbstractCegarLoop]: Abstraction has 112 states and 133 transitions. [2022-04-08 11:24:10,367 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:10,367 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 133 transitions. [2022-04-08 11:24:10,486 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:10,486 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 133 transitions. [2022-04-08 11:24:10,487 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-08 11:24:10,487 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:10,487 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:24:10,503 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-08 11:24:10,697 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-08 11:24:10,698 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:10,698 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:10,698 INFO L85 PathProgramCache]: Analyzing trace with hash -1361251212, now seen corresponding path program 1 times [2022-04-08 11:24:10,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:10,698 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [533841473] [2022-04-08 11:24:27,179 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:27,179 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:24:27,179 INFO L85 PathProgramCache]: Analyzing trace with hash -1361251212, now seen corresponding path program 2 times [2022-04-08 11:24:27,179 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:27,179 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [386563614] [2022-04-08 11:24:27,179 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:27,180 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:27,196 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:27,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1297197111] [2022-04-08 11:24:27,196 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:27,196 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:27,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:27,202 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:24:27,205 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-08 11:24:27,305 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:27,305 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:27,306 INFO L263 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 11:24:27,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:27,318 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:27,654 INFO L272 TraceCheckUtils]: 0: Hoare triple {8360#true} call ULTIMATE.init(); {8360#true} is VALID [2022-04-08 11:24:27,655 INFO L290 TraceCheckUtils]: 1: Hoare triple {8360#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,655 INFO L290 TraceCheckUtils]: 2: Hoare triple {8368#(<= ~counter~0 0)} assume true; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,655 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8368#(<= ~counter~0 0)} {8360#true} #93#return; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,656 INFO L272 TraceCheckUtils]: 4: Hoare triple {8368#(<= ~counter~0 0)} call #t~ret8 := main(); {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {8368#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,656 INFO L272 TraceCheckUtils]: 6: Hoare triple {8368#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,656 INFO L290 TraceCheckUtils]: 7: Hoare triple {8368#(<= ~counter~0 0)} ~cond := #in~cond; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,657 INFO L290 TraceCheckUtils]: 8: Hoare triple {8368#(<= ~counter~0 0)} assume !(0 == ~cond); {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,657 INFO L290 TraceCheckUtils]: 9: Hoare triple {8368#(<= ~counter~0 0)} assume true; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8368#(<= ~counter~0 0)} {8368#(<= ~counter~0 0)} #77#return; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,706 INFO L290 TraceCheckUtils]: 11: Hoare triple {8368#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8368#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:27,707 INFO L290 TraceCheckUtils]: 12: Hoare triple {8368#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,708 INFO L290 TraceCheckUtils]: 13: Hoare triple {8402#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,708 INFO L272 TraceCheckUtils]: 14: Hoare triple {8402#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,709 INFO L290 TraceCheckUtils]: 15: Hoare triple {8402#(<= ~counter~0 1)} ~cond := #in~cond; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,710 INFO L290 TraceCheckUtils]: 16: Hoare triple {8402#(<= ~counter~0 1)} assume !(0 == ~cond); {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,710 INFO L290 TraceCheckUtils]: 17: Hoare triple {8402#(<= ~counter~0 1)} assume true; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,711 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8402#(<= ~counter~0 1)} {8402#(<= ~counter~0 1)} #79#return; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,711 INFO L272 TraceCheckUtils]: 19: Hoare triple {8402#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,711 INFO L290 TraceCheckUtils]: 20: Hoare triple {8402#(<= ~counter~0 1)} ~cond := #in~cond; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,712 INFO L290 TraceCheckUtils]: 21: Hoare triple {8402#(<= ~counter~0 1)} assume !(0 == ~cond); {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,712 INFO L290 TraceCheckUtils]: 22: Hoare triple {8402#(<= ~counter~0 1)} assume true; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,740 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8402#(<= ~counter~0 1)} {8402#(<= ~counter~0 1)} #81#return; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,740 INFO L290 TraceCheckUtils]: 24: Hoare triple {8402#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:27,741 INFO L290 TraceCheckUtils]: 25: Hoare triple {8402#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,741 INFO L290 TraceCheckUtils]: 26: Hoare triple {8442#(<= ~counter~0 2)} assume !!(#t~post7 < 5);havoc #t~post7; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,742 INFO L272 TraceCheckUtils]: 27: Hoare triple {8442#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,742 INFO L290 TraceCheckUtils]: 28: Hoare triple {8442#(<= ~counter~0 2)} ~cond := #in~cond; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,742 INFO L290 TraceCheckUtils]: 29: Hoare triple {8442#(<= ~counter~0 2)} assume !(0 == ~cond); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,742 INFO L290 TraceCheckUtils]: 30: Hoare triple {8442#(<= ~counter~0 2)} assume true; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,743 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8442#(<= ~counter~0 2)} {8442#(<= ~counter~0 2)} #83#return; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,744 INFO L272 TraceCheckUtils]: 32: Hoare triple {8442#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,744 INFO L290 TraceCheckUtils]: 33: Hoare triple {8442#(<= ~counter~0 2)} ~cond := #in~cond; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,744 INFO L290 TraceCheckUtils]: 34: Hoare triple {8442#(<= ~counter~0 2)} assume !(0 == ~cond); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,744 INFO L290 TraceCheckUtils]: 35: Hoare triple {8442#(<= ~counter~0 2)} assume true; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,745 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8442#(<= ~counter~0 2)} {8442#(<= ~counter~0 2)} #85#return; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,746 INFO L272 TraceCheckUtils]: 37: Hoare triple {8442#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,746 INFO L290 TraceCheckUtils]: 38: Hoare triple {8442#(<= ~counter~0 2)} ~cond := #in~cond; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,746 INFO L290 TraceCheckUtils]: 39: Hoare triple {8442#(<= ~counter~0 2)} assume !(0 == ~cond); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,746 INFO L290 TraceCheckUtils]: 40: Hoare triple {8442#(<= ~counter~0 2)} assume true; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,747 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8442#(<= ~counter~0 2)} {8442#(<= ~counter~0 2)} #87#return; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,747 INFO L290 TraceCheckUtils]: 42: Hoare triple {8442#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,748 INFO L272 TraceCheckUtils]: 43: Hoare triple {8442#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,748 INFO L290 TraceCheckUtils]: 44: Hoare triple {8442#(<= ~counter~0 2)} ~cond := #in~cond; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,748 INFO L290 TraceCheckUtils]: 45: Hoare triple {8442#(<= ~counter~0 2)} assume !(0 == ~cond); {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,749 INFO L290 TraceCheckUtils]: 46: Hoare triple {8442#(<= ~counter~0 2)} assume true; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,749 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8442#(<= ~counter~0 2)} {8442#(<= ~counter~0 2)} #89#return; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,749 INFO L290 TraceCheckUtils]: 48: Hoare triple {8442#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:27,750 INFO L290 TraceCheckUtils]: 49: Hoare triple {8442#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,750 INFO L290 TraceCheckUtils]: 50: Hoare triple {8515#(<= ~counter~0 3)} assume !!(#t~post7 < 5);havoc #t~post7; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,751 INFO L272 TraceCheckUtils]: 51: Hoare triple {8515#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,751 INFO L290 TraceCheckUtils]: 52: Hoare triple {8515#(<= ~counter~0 3)} ~cond := #in~cond; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,751 INFO L290 TraceCheckUtils]: 53: Hoare triple {8515#(<= ~counter~0 3)} assume !(0 == ~cond); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,752 INFO L290 TraceCheckUtils]: 54: Hoare triple {8515#(<= ~counter~0 3)} assume true; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,752 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8515#(<= ~counter~0 3)} {8515#(<= ~counter~0 3)} #83#return; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,753 INFO L272 TraceCheckUtils]: 56: Hoare triple {8515#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,753 INFO L290 TraceCheckUtils]: 57: Hoare triple {8515#(<= ~counter~0 3)} ~cond := #in~cond; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,753 INFO L290 TraceCheckUtils]: 58: Hoare triple {8515#(<= ~counter~0 3)} assume !(0 == ~cond); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,754 INFO L290 TraceCheckUtils]: 59: Hoare triple {8515#(<= ~counter~0 3)} assume true; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,754 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8515#(<= ~counter~0 3)} {8515#(<= ~counter~0 3)} #85#return; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,755 INFO L272 TraceCheckUtils]: 61: Hoare triple {8515#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,755 INFO L290 TraceCheckUtils]: 62: Hoare triple {8515#(<= ~counter~0 3)} ~cond := #in~cond; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,755 INFO L290 TraceCheckUtils]: 63: Hoare triple {8515#(<= ~counter~0 3)} assume !(0 == ~cond); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,756 INFO L290 TraceCheckUtils]: 64: Hoare triple {8515#(<= ~counter~0 3)} assume true; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,756 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {8515#(<= ~counter~0 3)} {8515#(<= ~counter~0 3)} #87#return; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,756 INFO L290 TraceCheckUtils]: 66: Hoare triple {8515#(<= ~counter~0 3)} assume !(~r~0 >= 2 * ~b~0); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,757 INFO L290 TraceCheckUtils]: 67: Hoare triple {8515#(<= ~counter~0 3)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:27,757 INFO L290 TraceCheckUtils]: 68: Hoare triple {8515#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8573#(<= |main_#t~post6| 3)} is VALID [2022-04-08 11:24:27,757 INFO L290 TraceCheckUtils]: 69: Hoare triple {8573#(<= |main_#t~post6| 3)} assume !(#t~post6 < 5);havoc #t~post6; {8361#false} is VALID [2022-04-08 11:24:27,757 INFO L272 TraceCheckUtils]: 70: Hoare triple {8361#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8361#false} is VALID [2022-04-08 11:24:27,757 INFO L290 TraceCheckUtils]: 71: Hoare triple {8361#false} ~cond := #in~cond; {8361#false} is VALID [2022-04-08 11:24:27,757 INFO L290 TraceCheckUtils]: 72: Hoare triple {8361#false} assume 0 == ~cond; {8361#false} is VALID [2022-04-08 11:24:27,758 INFO L290 TraceCheckUtils]: 73: Hoare triple {8361#false} assume !false; {8361#false} is VALID [2022-04-08 11:24:27,758 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 18 proven. 112 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-08 11:24:27,758 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:24:28,137 INFO L290 TraceCheckUtils]: 73: Hoare triple {8361#false} assume !false; {8361#false} is VALID [2022-04-08 11:24:28,137 INFO L290 TraceCheckUtils]: 72: Hoare triple {8361#false} assume 0 == ~cond; {8361#false} is VALID [2022-04-08 11:24:28,138 INFO L290 TraceCheckUtils]: 71: Hoare triple {8361#false} ~cond := #in~cond; {8361#false} is VALID [2022-04-08 11:24:28,138 INFO L272 TraceCheckUtils]: 70: Hoare triple {8361#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8361#false} is VALID [2022-04-08 11:24:28,139 INFO L290 TraceCheckUtils]: 69: Hoare triple {8601#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {8361#false} is VALID [2022-04-08 11:24:28,151 INFO L290 TraceCheckUtils]: 68: Hoare triple {8605#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8601#(< |main_#t~post6| 5)} is VALID [2022-04-08 11:24:28,157 INFO L290 TraceCheckUtils]: 67: Hoare triple {8605#(< ~counter~0 5)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8605#(< ~counter~0 5)} is VALID [2022-04-08 11:24:28,157 INFO L290 TraceCheckUtils]: 66: Hoare triple {8605#(< ~counter~0 5)} assume !(~r~0 >= 2 * ~b~0); {8605#(< ~counter~0 5)} is VALID [2022-04-08 11:24:28,157 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {8360#true} {8605#(< ~counter~0 5)} #87#return; {8605#(< ~counter~0 5)} is VALID [2022-04-08 11:24:28,157 INFO L290 TraceCheckUtils]: 64: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,157 INFO L290 TraceCheckUtils]: 63: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,157 INFO L290 TraceCheckUtils]: 62: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,157 INFO L272 TraceCheckUtils]: 61: Hoare triple {8605#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,158 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8360#true} {8605#(< ~counter~0 5)} #85#return; {8605#(< ~counter~0 5)} is VALID [2022-04-08 11:24:28,158 INFO L290 TraceCheckUtils]: 59: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,158 INFO L290 TraceCheckUtils]: 58: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,158 INFO L290 TraceCheckUtils]: 57: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,158 INFO L272 TraceCheckUtils]: 56: Hoare triple {8605#(< ~counter~0 5)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,159 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8360#true} {8605#(< ~counter~0 5)} #83#return; {8605#(< ~counter~0 5)} is VALID [2022-04-08 11:24:28,159 INFO L290 TraceCheckUtils]: 54: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,159 INFO L290 TraceCheckUtils]: 53: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,159 INFO L290 TraceCheckUtils]: 52: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,159 INFO L272 TraceCheckUtils]: 51: Hoare triple {8605#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,159 INFO L290 TraceCheckUtils]: 50: Hoare triple {8605#(< ~counter~0 5)} assume !!(#t~post7 < 5);havoc #t~post7; {8605#(< ~counter~0 5)} is VALID [2022-04-08 11:24:28,160 INFO L290 TraceCheckUtils]: 49: Hoare triple {8515#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8605#(< ~counter~0 5)} is VALID [2022-04-08 11:24:28,160 INFO L290 TraceCheckUtils]: 48: Hoare triple {8515#(<= ~counter~0 3)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,161 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8360#true} {8515#(<= ~counter~0 3)} #89#return; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,161 INFO L290 TraceCheckUtils]: 46: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,161 INFO L290 TraceCheckUtils]: 45: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,161 INFO L290 TraceCheckUtils]: 44: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,161 INFO L272 TraceCheckUtils]: 43: Hoare triple {8515#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,161 INFO L290 TraceCheckUtils]: 42: Hoare triple {8515#(<= ~counter~0 3)} assume !!(~r~0 >= 2 * ~b~0); {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,161 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8360#true} {8515#(<= ~counter~0 3)} #87#return; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,162 INFO L290 TraceCheckUtils]: 40: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,162 INFO L290 TraceCheckUtils]: 39: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,162 INFO L290 TraceCheckUtils]: 38: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,162 INFO L272 TraceCheckUtils]: 37: Hoare triple {8515#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,162 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8360#true} {8515#(<= ~counter~0 3)} #85#return; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,162 INFO L290 TraceCheckUtils]: 35: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,162 INFO L290 TraceCheckUtils]: 34: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,162 INFO L290 TraceCheckUtils]: 33: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,162 INFO L272 TraceCheckUtils]: 32: Hoare triple {8515#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,163 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8360#true} {8515#(<= ~counter~0 3)} #83#return; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,163 INFO L290 TraceCheckUtils]: 29: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,163 INFO L290 TraceCheckUtils]: 28: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,163 INFO L272 TraceCheckUtils]: 27: Hoare triple {8515#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {8515#(<= ~counter~0 3)} assume !!(#t~post7 < 5);havoc #t~post7; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,164 INFO L290 TraceCheckUtils]: 25: Hoare triple {8442#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8515#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:28,164 INFO L290 TraceCheckUtils]: 24: Hoare triple {8442#(<= ~counter~0 2)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:28,165 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8360#true} {8442#(<= ~counter~0 2)} #81#return; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:28,165 INFO L290 TraceCheckUtils]: 22: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,165 INFO L290 TraceCheckUtils]: 21: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,165 INFO L290 TraceCheckUtils]: 20: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,165 INFO L272 TraceCheckUtils]: 19: Hoare triple {8442#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,165 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8360#true} {8442#(<= ~counter~0 2)} #79#return; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:28,165 INFO L290 TraceCheckUtils]: 17: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,165 INFO L290 TraceCheckUtils]: 16: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,166 INFO L290 TraceCheckUtils]: 15: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,166 INFO L272 TraceCheckUtils]: 14: Hoare triple {8442#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,166 INFO L290 TraceCheckUtils]: 13: Hoare triple {8442#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:28,166 INFO L290 TraceCheckUtils]: 12: Hoare triple {8402#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8442#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:28,167 INFO L290 TraceCheckUtils]: 11: Hoare triple {8402#(<= ~counter~0 1)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:28,167 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8360#true} {8402#(<= ~counter~0 1)} #77#return; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:28,167 INFO L290 TraceCheckUtils]: 9: Hoare triple {8360#true} assume true; {8360#true} is VALID [2022-04-08 11:24:28,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {8360#true} assume !(0 == ~cond); {8360#true} is VALID [2022-04-08 11:24:28,167 INFO L290 TraceCheckUtils]: 7: Hoare triple {8360#true} ~cond := #in~cond; {8360#true} is VALID [2022-04-08 11:24:28,168 INFO L272 TraceCheckUtils]: 6: Hoare triple {8402#(<= ~counter~0 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8360#true} is VALID [2022-04-08 11:24:28,171 INFO L290 TraceCheckUtils]: 5: Hoare triple {8402#(<= ~counter~0 1)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:28,171 INFO L272 TraceCheckUtils]: 4: Hoare triple {8402#(<= ~counter~0 1)} call #t~ret8 := main(); {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:28,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8402#(<= ~counter~0 1)} {8360#true} #93#return; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:28,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {8402#(<= ~counter~0 1)} assume true; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:28,173 INFO L290 TraceCheckUtils]: 1: Hoare triple {8360#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8402#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:28,173 INFO L272 TraceCheckUtils]: 0: Hoare triple {8360#true} call ULTIMATE.init(); {8360#true} is VALID [2022-04-08 11:24:28,174 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 18 proven. 8 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-08 11:24:28,174 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:28,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [386563614] [2022-04-08 11:24:28,174 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:28,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1297197111] [2022-04-08 11:24:28,174 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1297197111] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:24:28,174 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:24:28,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-08 11:24:28,174 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:28,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [533841473] [2022-04-08 11:24:28,174 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [533841473] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:28,174 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:28,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 11:24:28,175 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1163384326] [2022-04-08 11:24:28,175 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:28,175 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 74 [2022-04-08 11:24:28,175 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:28,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:28,215 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:28,215 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 11:24:28,215 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:28,215 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 11:24:28,215 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:24:28,215 INFO L87 Difference]: Start difference. First operand 112 states and 133 transitions. Second operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:28,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:28,521 INFO L93 Difference]: Finished difference Result 141 states and 164 transitions. [2022-04-08 11:24:28,521 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:24:28,521 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 74 [2022-04-08 11:24:28,521 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:28,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:28,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 94 transitions. [2022-04-08 11:24:28,522 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:28,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 94 transitions. [2022-04-08 11:24:28,524 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 94 transitions. [2022-04-08 11:24:28,589 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:28,590 INFO L225 Difference]: With dead ends: 141 [2022-04-08 11:24:28,590 INFO L226 Difference]: Without dead ends: 134 [2022-04-08 11:24:28,591 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 139 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=56, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:24:28,591 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 20 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 76 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:24:28,591 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 163 Invalid, 76 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:24:28,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 134 states. [2022-04-08 11:24:28,797 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 134 to 132. [2022-04-08 11:24:28,797 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:28,798 INFO L82 GeneralOperation]: Start isEquivalent. First operand 134 states. Second operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:28,798 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:28,798 INFO L87 Difference]: Start difference. First operand 134 states. Second operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:28,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:28,800 INFO L93 Difference]: Finished difference Result 134 states and 157 transitions. [2022-04-08 11:24:28,800 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 157 transitions. [2022-04-08 11:24:28,801 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:28,801 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:28,801 INFO L74 IsIncluded]: Start isIncluded. First operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 134 states. [2022-04-08 11:24:28,801 INFO L87 Difference]: Start difference. First operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 134 states. [2022-04-08 11:24:28,803 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:28,803 INFO L93 Difference]: Finished difference Result 134 states and 157 transitions. [2022-04-08 11:24:28,803 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 157 transitions. [2022-04-08 11:24:28,803 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:28,803 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:28,803 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:28,803 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:28,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:28,805 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 155 transitions. [2022-04-08 11:24:28,806 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 155 transitions. Word has length 74 [2022-04-08 11:24:28,806 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:28,806 INFO L478 AbstractCegarLoop]: Abstraction has 132 states and 155 transitions. [2022-04-08 11:24:28,806 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:28,806 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 132 states and 155 transitions. [2022-04-08 11:24:28,969 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:28,969 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 155 transitions. [2022-04-08 11:24:28,969 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-08 11:24:28,970 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:28,970 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:24:28,985 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-08 11:24:29,170 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-08 11:24:29,170 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:29,170 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:29,171 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 1 times [2022-04-08 11:24:29,171 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:29,171 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [804060035] [2022-04-08 11:24:29,448 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:48,204 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:48,204 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:24:48,205 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 2 times [2022-04-08 11:24:48,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:48,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1599651533] [2022-04-08 11:24:48,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:48,205 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:48,224 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:48,224 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2001879933] [2022-04-08 11:24:48,224 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:48,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:48,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:48,228 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:24:48,229 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-08 11:24:48,278 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:48,279 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:48,279 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-08 11:24:48,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:48,295 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:50,189 INFO L272 TraceCheckUtils]: 0: Hoare triple {9628#true} call ULTIMATE.init(); {9628#true} is VALID [2022-04-08 11:24:50,190 INFO L290 TraceCheckUtils]: 1: Hoare triple {9628#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {9628#true} is VALID [2022-04-08 11:24:50,190 INFO L290 TraceCheckUtils]: 2: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,190 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9628#true} {9628#true} #93#return; {9628#true} is VALID [2022-04-08 11:24:50,190 INFO L272 TraceCheckUtils]: 4: Hoare triple {9628#true} call #t~ret8 := main(); {9628#true} is VALID [2022-04-08 11:24:50,190 INFO L290 TraceCheckUtils]: 5: Hoare triple {9628#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9628#true} is VALID [2022-04-08 11:24:50,190 INFO L272 TraceCheckUtils]: 6: Hoare triple {9628#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,190 INFO L290 TraceCheckUtils]: 7: Hoare triple {9628#true} ~cond := #in~cond; {9654#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:24:50,190 INFO L290 TraceCheckUtils]: 8: Hoare triple {9654#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {9658#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:24:50,190 INFO L290 TraceCheckUtils]: 9: Hoare triple {9658#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9658#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:24:50,191 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9658#(not (= |assume_abort_if_not_#in~cond| 0))} {9628#true} #77#return; {9665#(<= 1 main_~y~0)} is VALID [2022-04-08 11:24:50,191 INFO L290 TraceCheckUtils]: 11: Hoare triple {9665#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,191 INFO L290 TraceCheckUtils]: 12: Hoare triple {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,192 INFO L290 TraceCheckUtils]: 13: Hoare triple {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 5);havoc #t~post6; {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,192 INFO L272 TraceCheckUtils]: 14: Hoare triple {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,192 INFO L290 TraceCheckUtils]: 15: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,192 INFO L290 TraceCheckUtils]: 16: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,192 INFO L290 TraceCheckUtils]: 17: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,192 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {9628#true} {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #79#return; {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,192 INFO L272 TraceCheckUtils]: 19: Hoare triple {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,192 INFO L290 TraceCheckUtils]: 20: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,192 INFO L290 TraceCheckUtils]: 21: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,192 INFO L290 TraceCheckUtils]: 22: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,193 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9628#true} {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #81#return; {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,193 INFO L290 TraceCheckUtils]: 24: Hoare triple {9669#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,193 INFO L290 TraceCheckUtils]: 25: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,193 INFO L290 TraceCheckUtils]: 26: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 5);havoc #t~post7; {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,193 INFO L272 TraceCheckUtils]: 27: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L290 TraceCheckUtils]: 28: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L290 TraceCheckUtils]: 29: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L290 TraceCheckUtils]: 30: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9628#true} {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #83#return; {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,194 INFO L272 TraceCheckUtils]: 32: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L290 TraceCheckUtils]: 33: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L290 TraceCheckUtils]: 34: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L290 TraceCheckUtils]: 35: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,194 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {9628#true} {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #85#return; {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,195 INFO L272 TraceCheckUtils]: 37: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,195 INFO L290 TraceCheckUtils]: 38: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,195 INFO L290 TraceCheckUtils]: 39: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,195 INFO L290 TraceCheckUtils]: 40: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,195 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {9628#true} {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #87#return; {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,195 INFO L290 TraceCheckUtils]: 42: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,195 INFO L272 TraceCheckUtils]: 43: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,195 INFO L290 TraceCheckUtils]: 44: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,195 INFO L290 TraceCheckUtils]: 45: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,196 INFO L290 TraceCheckUtils]: 46: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,196 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9628#true} {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #89#return; {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,197 INFO L290 TraceCheckUtils]: 48: Hoare triple {9709#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,197 INFO L290 TraceCheckUtils]: 49: Hoare triple {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,197 INFO L290 TraceCheckUtils]: 50: Hoare triple {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 5);havoc #t~post7; {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,197 INFO L272 TraceCheckUtils]: 51: Hoare triple {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,197 INFO L290 TraceCheckUtils]: 52: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,197 INFO L290 TraceCheckUtils]: 53: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,197 INFO L290 TraceCheckUtils]: 54: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,198 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9628#true} {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #83#return; {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,198 INFO L272 TraceCheckUtils]: 56: Hoare triple {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,198 INFO L290 TraceCheckUtils]: 57: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,198 INFO L290 TraceCheckUtils]: 58: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,198 INFO L290 TraceCheckUtils]: 59: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,198 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9628#true} {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #85#return; {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,198 INFO L272 TraceCheckUtils]: 61: Hoare triple {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,198 INFO L290 TraceCheckUtils]: 62: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:50,199 INFO L290 TraceCheckUtils]: 63: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:50,199 INFO L290 TraceCheckUtils]: 64: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:50,203 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {9628#true} {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #87#return; {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,204 INFO L290 TraceCheckUtils]: 66: Hoare triple {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !(~r~0 >= 2 * ~b~0); {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,204 INFO L290 TraceCheckUtils]: 67: Hoare triple {9782#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {9840#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,205 INFO L290 TraceCheckUtils]: 68: Hoare triple {9840#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9840#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,205 INFO L290 TraceCheckUtils]: 69: Hoare triple {9840#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} assume !!(#t~post6 < 5);havoc #t~post6; {9840#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:50,205 INFO L272 TraceCheckUtils]: 70: Hoare triple {9840#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:50,205 INFO L290 TraceCheckUtils]: 71: Hoare triple {9628#true} ~cond := #in~cond; {9853#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:24:50,206 INFO L290 TraceCheckUtils]: 72: Hoare triple {9853#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:24:50,206 INFO L290 TraceCheckUtils]: 73: Hoare triple {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:24:50,209 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} {9840#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} #79#return; {9864#(and (<= 1 (div (* (- 1) main_~q~0) (- 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0) (<= 1 main_~y~0) (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0))} is VALID [2022-04-08 11:24:50,209 INFO L272 TraceCheckUtils]: 75: Hoare triple {9864#(and (<= 1 (div (* (- 1) main_~q~0) (- 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0) (<= 1 main_~y~0) (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:24:50,210 INFO L290 TraceCheckUtils]: 76: Hoare triple {9868#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:24:50,210 INFO L290 TraceCheckUtils]: 77: Hoare triple {9872#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9629#false} is VALID [2022-04-08 11:24:50,210 INFO L290 TraceCheckUtils]: 78: Hoare triple {9629#false} assume !false; {9629#false} is VALID [2022-04-08 11:24:50,210 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 46 proven. 11 refuted. 0 times theorem prover too weak. 153 trivial. 0 not checked. [2022-04-08 11:24:50,210 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:24:59,140 INFO L290 TraceCheckUtils]: 78: Hoare triple {9629#false} assume !false; {9629#false} is VALID [2022-04-08 11:24:59,140 INFO L290 TraceCheckUtils]: 77: Hoare triple {9872#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9629#false} is VALID [2022-04-08 11:24:59,140 INFO L290 TraceCheckUtils]: 76: Hoare triple {9868#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:24:59,141 INFO L272 TraceCheckUtils]: 75: Hoare triple {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:24:59,142 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #79#return; {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:24:59,142 INFO L290 TraceCheckUtils]: 73: Hoare triple {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:24:59,142 INFO L290 TraceCheckUtils]: 72: Hoare triple {9902#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {9857#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:24:59,143 INFO L290 TraceCheckUtils]: 71: Hoare triple {9628#true} ~cond := #in~cond; {9902#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:24:59,143 INFO L272 TraceCheckUtils]: 70: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,143 INFO L290 TraceCheckUtils]: 69: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !!(#t~post6 < 5);havoc #t~post6; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,143 INFO L290 TraceCheckUtils]: 68: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,151 INFO L290 TraceCheckUtils]: 67: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,151 INFO L290 TraceCheckUtils]: 66: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !(~r~0 >= 2 * ~b~0); {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,152 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {9628#true} {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #87#return; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,152 INFO L290 TraceCheckUtils]: 64: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,152 INFO L290 TraceCheckUtils]: 63: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,152 INFO L290 TraceCheckUtils]: 62: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,152 INFO L272 TraceCheckUtils]: 61: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,153 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9628#true} {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #85#return; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,153 INFO L290 TraceCheckUtils]: 59: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,153 INFO L290 TraceCheckUtils]: 58: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,153 INFO L290 TraceCheckUtils]: 57: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,153 INFO L272 TraceCheckUtils]: 56: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,153 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9628#true} {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #83#return; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,154 INFO L290 TraceCheckUtils]: 54: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,154 INFO L290 TraceCheckUtils]: 53: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,154 INFO L290 TraceCheckUtils]: 52: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,154 INFO L272 TraceCheckUtils]: 51: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,154 INFO L290 TraceCheckUtils]: 50: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !!(#t~post7 < 5);havoc #t~post7; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,154 INFO L290 TraceCheckUtils]: 49: Hoare triple {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,156 INFO L290 TraceCheckUtils]: 48: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {9892#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:24:59,156 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9628#true} {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #89#return; {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,156 INFO L290 TraceCheckUtils]: 46: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,156 INFO L290 TraceCheckUtils]: 45: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,156 INFO L290 TraceCheckUtils]: 44: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,156 INFO L272 TraceCheckUtils]: 43: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,157 INFO L290 TraceCheckUtils]: 42: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} assume !!(~r~0 >= 2 * ~b~0); {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,157 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {9628#true} {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #87#return; {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,157 INFO L290 TraceCheckUtils]: 40: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,157 INFO L290 TraceCheckUtils]: 39: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,158 INFO L290 TraceCheckUtils]: 38: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,158 INFO L272 TraceCheckUtils]: 37: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,158 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {9628#true} {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #85#return; {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,158 INFO L290 TraceCheckUtils]: 35: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,158 INFO L290 TraceCheckUtils]: 34: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,158 INFO L290 TraceCheckUtils]: 33: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,158 INFO L272 TraceCheckUtils]: 32: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,159 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9628#true} {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #83#return; {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,159 INFO L290 TraceCheckUtils]: 30: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,159 INFO L290 TraceCheckUtils]: 29: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,159 INFO L290 TraceCheckUtils]: 28: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,159 INFO L272 TraceCheckUtils]: 27: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,159 INFO L290 TraceCheckUtils]: 26: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} assume !!(#t~post7 < 5);havoc #t~post7; {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,160 INFO L290 TraceCheckUtils]: 24: Hoare triple {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {9972#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:24:59,161 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9628#true} {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:24:59,161 INFO L290 TraceCheckUtils]: 22: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,161 INFO L272 TraceCheckUtils]: 19: Hoare triple {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,161 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {9628#true} {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:24:59,161 INFO L290 TraceCheckUtils]: 17: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,162 INFO L290 TraceCheckUtils]: 16: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,162 INFO L272 TraceCheckUtils]: 14: Hoare triple {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,162 INFO L290 TraceCheckUtils]: 13: Hoare triple {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 5);havoc #t~post6; {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:24:59,162 INFO L290 TraceCheckUtils]: 12: Hoare triple {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:24:59,162 INFO L290 TraceCheckUtils]: 11: Hoare triple {9628#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {9888#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:24:59,163 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9628#true} {9628#true} #77#return; {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L290 TraceCheckUtils]: 9: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L290 TraceCheckUtils]: 8: Hoare triple {9628#true} assume !(0 == ~cond); {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L290 TraceCheckUtils]: 7: Hoare triple {9628#true} ~cond := #in~cond; {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L272 TraceCheckUtils]: 6: Hoare triple {9628#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L290 TraceCheckUtils]: 5: Hoare triple {9628#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L272 TraceCheckUtils]: 4: Hoare triple {9628#true} call #t~ret8 := main(); {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9628#true} {9628#true} #93#return; {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L290 TraceCheckUtils]: 2: Hoare triple {9628#true} assume true; {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L290 TraceCheckUtils]: 1: Hoare triple {9628#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L272 TraceCheckUtils]: 0: Hoare triple {9628#true} call ULTIMATE.init(); {9628#true} is VALID [2022-04-08 11:24:59,163 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 46 proven. 10 refuted. 0 times theorem prover too weak. 154 trivial. 0 not checked. [2022-04-08 11:24:59,164 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:59,164 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1599651533] [2022-04-08 11:24:59,164 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:59,164 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2001879933] [2022-04-08 11:24:59,164 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2001879933] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:24:59,164 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:24:59,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 18 [2022-04-08 11:24:59,164 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:59,164 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [804060035] [2022-04-08 11:24:59,164 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [804060035] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:59,164 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:59,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 11:24:59,165 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [991480581] [2022-04-08 11:24:59,165 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:59,165 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Word has length 79 [2022-04-08 11:24:59,165 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:59,165 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:24:59,216 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:59,216 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 11:24:59,216 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:59,216 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 11:24:59,216 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=245, Unknown=0, NotChecked=0, Total=306 [2022-04-08 11:24:59,217 INFO L87 Difference]: Start difference. First operand 132 states and 155 transitions. Second operand has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:04,340 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:04,340 INFO L93 Difference]: Finished difference Result 161 states and 197 transitions. [2022-04-08 11:25:04,340 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 11:25:04,341 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Word has length 79 [2022-04-08 11:25:04,341 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:04,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:04,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 119 transitions. [2022-04-08 11:25:04,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:04,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 119 transitions. [2022-04-08 11:25:04,344 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 119 transitions. [2022-04-08 11:25:04,463 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:04,465 INFO L225 Difference]: With dead ends: 161 [2022-04-08 11:25:04,465 INFO L226 Difference]: Without dead ends: 158 [2022-04-08 11:25:04,465 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 138 SyntacticMatches, 3 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 112 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=86, Invalid=376, Unknown=0, NotChecked=0, Total=462 [2022-04-08 11:25:04,466 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 51 mSDsluCounter, 239 mSDsCounter, 0 mSdLazyCounter, 632 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 284 SdHoareTripleChecker+Invalid, 658 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 632 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:04,466 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 284 Invalid, 658 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 632 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-08 11:25:04,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-04-08 11:25:04,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 153. [2022-04-08 11:25:04,776 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:04,776 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:04,776 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:04,777 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:04,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:04,782 INFO L93 Difference]: Finished difference Result 158 states and 193 transitions. [2022-04-08 11:25:04,782 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 193 transitions. [2022-04-08 11:25:04,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:04,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:04,782 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 158 states. [2022-04-08 11:25:04,783 INFO L87 Difference]: Start difference. First operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 158 states. [2022-04-08 11:25:04,785 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:04,785 INFO L93 Difference]: Finished difference Result 158 states and 193 transitions. [2022-04-08 11:25:04,785 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 193 transitions. [2022-04-08 11:25:04,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:04,786 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:04,786 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:04,786 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:04,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:04,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 188 transitions. [2022-04-08 11:25:04,801 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 188 transitions. Word has length 79 [2022-04-08 11:25:04,801 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:04,801 INFO L478 AbstractCegarLoop]: Abstraction has 153 states and 188 transitions. [2022-04-08 11:25:04,801 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:04,802 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 153 states and 188 transitions. [2022-04-08 11:25:05,057 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 188 edges. 188 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:05,057 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 188 transitions. [2022-04-08 11:25:05,057 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2022-04-08 11:25:05,057 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:05,058 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:05,076 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:05,258 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-08 11:25:05,258 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:05,258 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:05,258 INFO L85 PathProgramCache]: Analyzing trace with hash -554329876, now seen corresponding path program 3 times [2022-04-08 11:25:05,259 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:05,259 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1396794949] [2022-04-08 11:25:23,673 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:25:23,673 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:25:23,673 INFO L85 PathProgramCache]: Analyzing trace with hash -554329876, now seen corresponding path program 4 times [2022-04-08 11:25:23,673 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:23,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2111748672] [2022-04-08 11:25:23,673 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:23,673 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:23,685 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:23,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1805354747] [2022-04-08 11:25:23,685 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:25:23,685 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:23,685 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:23,700 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:23,721 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-08 11:25:23,768 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:25:23,769 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:23,769 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-08 11:25:23,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:23,782 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:24,353 INFO L272 TraceCheckUtils]: 0: Hoare triple {11071#true} call ULTIMATE.init(); {11071#true} is VALID [2022-04-08 11:25:24,354 INFO L290 TraceCheckUtils]: 1: Hoare triple {11071#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11071#true} is VALID [2022-04-08 11:25:24,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,354 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11071#true} {11071#true} #93#return; {11071#true} is VALID [2022-04-08 11:25:24,354 INFO L272 TraceCheckUtils]: 4: Hoare triple {11071#true} call #t~ret8 := main(); {11071#true} is VALID [2022-04-08 11:25:24,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {11071#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11071#true} is VALID [2022-04-08 11:25:24,354 INFO L272 TraceCheckUtils]: 6: Hoare triple {11071#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {11071#true} ~cond := #in~cond; {11097#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:25:24,355 INFO L290 TraceCheckUtils]: 8: Hoare triple {11097#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11101#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:24,355 INFO L290 TraceCheckUtils]: 9: Hoare triple {11101#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11101#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:24,355 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11101#(not (= |assume_abort_if_not_#in~cond| 0))} {11071#true} #77#return; {11108#(<= 1 main_~y~0)} is VALID [2022-04-08 11:25:24,355 INFO L290 TraceCheckUtils]: 11: Hoare triple {11108#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,356 INFO L290 TraceCheckUtils]: 12: Hoare triple {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,356 INFO L290 TraceCheckUtils]: 13: Hoare triple {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 5);havoc #t~post6; {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,356 INFO L272 TraceCheckUtils]: 14: Hoare triple {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,356 INFO L290 TraceCheckUtils]: 15: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,356 INFO L290 TraceCheckUtils]: 16: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,356 INFO L290 TraceCheckUtils]: 17: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,357 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11071#true} {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #79#return; {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,357 INFO L272 TraceCheckUtils]: 19: Hoare triple {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,357 INFO L290 TraceCheckUtils]: 20: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,357 INFO L290 TraceCheckUtils]: 21: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,357 INFO L290 TraceCheckUtils]: 22: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,357 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11071#true} {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #81#return; {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,358 INFO L290 TraceCheckUtils]: 24: Hoare triple {11112#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,371 INFO L290 TraceCheckUtils]: 25: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,372 INFO L290 TraceCheckUtils]: 26: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 5);havoc #t~post7; {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,372 INFO L272 TraceCheckUtils]: 27: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,372 INFO L290 TraceCheckUtils]: 28: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,372 INFO L290 TraceCheckUtils]: 29: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,372 INFO L290 TraceCheckUtils]: 30: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,372 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11071#true} {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #83#return; {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,372 INFO L272 TraceCheckUtils]: 32: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,372 INFO L290 TraceCheckUtils]: 33: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,372 INFO L290 TraceCheckUtils]: 34: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,375 INFO L290 TraceCheckUtils]: 35: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,375 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11071#true} {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #85#return; {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,376 INFO L272 TraceCheckUtils]: 37: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,376 INFO L290 TraceCheckUtils]: 38: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,376 INFO L290 TraceCheckUtils]: 39: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,376 INFO L290 TraceCheckUtils]: 40: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,377 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11071#true} {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #87#return; {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,377 INFO L290 TraceCheckUtils]: 42: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,377 INFO L272 TraceCheckUtils]: 43: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,377 INFO L290 TraceCheckUtils]: 44: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,377 INFO L290 TraceCheckUtils]: 45: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,377 INFO L290 TraceCheckUtils]: 46: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,378 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11071#true} {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #89#return; {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,378 INFO L290 TraceCheckUtils]: 48: Hoare triple {11152#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,379 INFO L290 TraceCheckUtils]: 49: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,379 INFO L290 TraceCheckUtils]: 50: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} assume !!(#t~post7 < 5);havoc #t~post7; {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,379 INFO L272 TraceCheckUtils]: 51: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,379 INFO L290 TraceCheckUtils]: 52: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,379 INFO L290 TraceCheckUtils]: 53: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,379 INFO L290 TraceCheckUtils]: 54: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,380 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11071#true} {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} #83#return; {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,380 INFO L272 TraceCheckUtils]: 56: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,380 INFO L290 TraceCheckUtils]: 57: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,380 INFO L290 TraceCheckUtils]: 58: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,380 INFO L290 TraceCheckUtils]: 59: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,380 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11071#true} {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} #85#return; {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,380 INFO L272 TraceCheckUtils]: 61: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,380 INFO L290 TraceCheckUtils]: 62: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,381 INFO L290 TraceCheckUtils]: 63: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,381 INFO L290 TraceCheckUtils]: 64: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,381 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {11071#true} {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} #87#return; {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,381 INFO L290 TraceCheckUtils]: 66: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,381 INFO L272 TraceCheckUtils]: 67: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,381 INFO L290 TraceCheckUtils]: 68: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,382 INFO L290 TraceCheckUtils]: 69: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,382 INFO L290 TraceCheckUtils]: 70: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,382 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {11071#true} {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} #89#return; {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,383 INFO L290 TraceCheckUtils]: 72: Hoare triple {11225#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2) (<= 1 main_~y~0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {11298#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 4))} is VALID [2022-04-08 11:25:24,383 INFO L290 TraceCheckUtils]: 73: Hoare triple {11298#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 4))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11298#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 4))} is VALID [2022-04-08 11:25:24,383 INFO L290 TraceCheckUtils]: 74: Hoare triple {11298#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 4))} assume !(#t~post7 < 5);havoc #t~post7; {11298#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 4))} is VALID [2022-04-08 11:25:24,384 INFO L290 TraceCheckUtils]: 75: Hoare triple {11298#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 4))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {11308#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,384 INFO L290 TraceCheckUtils]: 76: Hoare triple {11308#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11308#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,385 INFO L290 TraceCheckUtils]: 77: Hoare triple {11308#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4) (<= 1 main_~y~0))} assume !(#t~post6 < 5);havoc #t~post6; {11308#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:24,385 INFO L272 TraceCheckUtils]: 78: Hoare triple {11308#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:24,385 INFO L290 TraceCheckUtils]: 79: Hoare triple {11318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:24,386 INFO L290 TraceCheckUtils]: 80: Hoare triple {11322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11072#false} is VALID [2022-04-08 11:25:24,386 INFO L290 TraceCheckUtils]: 81: Hoare triple {11072#false} assume !false; {11072#false} is VALID [2022-04-08 11:25:24,386 INFO L134 CoverageAnalysis]: Checked inductivity of 214 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-08 11:25:24,386 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:25:24,721 INFO L290 TraceCheckUtils]: 81: Hoare triple {11072#false} assume !false; {11072#false} is VALID [2022-04-08 11:25:24,722 INFO L290 TraceCheckUtils]: 80: Hoare triple {11322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11072#false} is VALID [2022-04-08 11:25:24,722 INFO L290 TraceCheckUtils]: 79: Hoare triple {11318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:24,723 INFO L272 TraceCheckUtils]: 78: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:24,723 INFO L290 TraceCheckUtils]: 77: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(#t~post6 < 5);havoc #t~post6; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,723 INFO L290 TraceCheckUtils]: 76: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,730 INFO L290 TraceCheckUtils]: 75: Hoare triple {11348#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,730 INFO L290 TraceCheckUtils]: 74: Hoare triple {11348#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(#t~post7 < 5);havoc #t~post7; {11348#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:24,730 INFO L290 TraceCheckUtils]: 73: Hoare triple {11348#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11348#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:24,733 INFO L290 TraceCheckUtils]: 72: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {11348#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:24,733 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {11071#true} {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #89#return; {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,733 INFO L290 TraceCheckUtils]: 70: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,733 INFO L290 TraceCheckUtils]: 69: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,733 INFO L290 TraceCheckUtils]: 68: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,734 INFO L272 TraceCheckUtils]: 67: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,734 INFO L290 TraceCheckUtils]: 66: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,734 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {11071#true} {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #87#return; {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,734 INFO L290 TraceCheckUtils]: 64: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,734 INFO L290 TraceCheckUtils]: 63: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,734 INFO L290 TraceCheckUtils]: 62: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,735 INFO L272 TraceCheckUtils]: 61: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,735 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11071#true} {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #85#return; {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,735 INFO L290 TraceCheckUtils]: 59: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,735 INFO L290 TraceCheckUtils]: 58: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,735 INFO L290 TraceCheckUtils]: 57: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,736 INFO L272 TraceCheckUtils]: 56: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,736 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11071#true} {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #83#return; {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,737 INFO L290 TraceCheckUtils]: 54: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,737 INFO L290 TraceCheckUtils]: 53: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,737 INFO L290 TraceCheckUtils]: 52: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,737 INFO L272 TraceCheckUtils]: 51: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,741 INFO L290 TraceCheckUtils]: 50: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 5);havoc #t~post7; {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,741 INFO L290 TraceCheckUtils]: 49: Hoare triple {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,744 INFO L290 TraceCheckUtils]: 48: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {11358#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,744 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11071#true} {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #89#return; {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,744 INFO L290 TraceCheckUtils]: 46: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,744 INFO L290 TraceCheckUtils]: 45: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,744 INFO L290 TraceCheckUtils]: 44: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,744 INFO L272 TraceCheckUtils]: 43: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,744 INFO L290 TraceCheckUtils]: 42: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,745 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11071#true} {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #87#return; {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,745 INFO L290 TraceCheckUtils]: 40: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,745 INFO L290 TraceCheckUtils]: 39: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,745 INFO L290 TraceCheckUtils]: 38: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,745 INFO L272 TraceCheckUtils]: 37: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,745 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11071#true} {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #85#return; {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,745 INFO L290 TraceCheckUtils]: 35: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,745 INFO L290 TraceCheckUtils]: 34: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,745 INFO L290 TraceCheckUtils]: 33: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,746 INFO L272 TraceCheckUtils]: 32: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,746 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11071#true} {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #83#return; {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,746 INFO L290 TraceCheckUtils]: 30: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,746 INFO L290 TraceCheckUtils]: 29: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,746 INFO L290 TraceCheckUtils]: 28: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,746 INFO L272 TraceCheckUtils]: 27: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,746 INFO L290 TraceCheckUtils]: 26: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} assume !!(#t~post7 < 5);havoc #t~post7; {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,747 INFO L290 TraceCheckUtils]: 25: Hoare triple {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,747 INFO L290 TraceCheckUtils]: 24: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {11431#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:24,747 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11071#true} {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,747 INFO L290 TraceCheckUtils]: 22: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,747 INFO L290 TraceCheckUtils]: 21: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,747 INFO L290 TraceCheckUtils]: 20: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,747 INFO L272 TraceCheckUtils]: 19: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,748 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11071#true} {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,748 INFO L272 TraceCheckUtils]: 14: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,751 INFO L290 TraceCheckUtils]: 13: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 5);havoc #t~post6; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,755 INFO L290 TraceCheckUtils]: 12: Hoare triple {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,756 INFO L290 TraceCheckUtils]: 11: Hoare triple {11071#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {11338#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:24,756 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11071#true} {11071#true} #77#return; {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {11071#true} assume !(0 == ~cond); {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {11071#true} ~cond := #in~cond; {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L272 TraceCheckUtils]: 6: Hoare triple {11071#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L290 TraceCheckUtils]: 5: Hoare triple {11071#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L272 TraceCheckUtils]: 4: Hoare triple {11071#true} call #t~ret8 := main(); {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11071#true} {11071#true} #93#return; {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L290 TraceCheckUtils]: 2: Hoare triple {11071#true} assume true; {11071#true} is VALID [2022-04-08 11:25:24,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {11071#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11071#true} is VALID [2022-04-08 11:25:24,773 INFO L272 TraceCheckUtils]: 0: Hoare triple {11071#true} call ULTIMATE.init(); {11071#true} is VALID [2022-04-08 11:25:24,774 INFO L134 CoverageAnalysis]: Checked inductivity of 214 backedges. 20 proven. 12 refuted. 0 times theorem prover too weak. 182 trivial. 0 not checked. [2022-04-08 11:25:24,774 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:24,774 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2111748672] [2022-04-08 11:25:24,774 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:24,774 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1805354747] [2022-04-08 11:25:24,774 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1805354747] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:25:24,774 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:25:24,774 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 16 [2022-04-08 11:25:24,774 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:24,774 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1396794949] [2022-04-08 11:25:24,774 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1396794949] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:24,776 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:24,776 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 11:25:24,776 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [876303828] [2022-04-08 11:25:24,776 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:24,776 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) Word has length 82 [2022-04-08 11:25:24,777 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:24,777 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:24,920 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:24,920 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 11:25:24,920 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:24,920 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 11:25:24,920 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-08 11:25:24,921 INFO L87 Difference]: Start difference. First operand 153 states and 188 transitions. Second operand has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:26,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:26,292 INFO L93 Difference]: Finished difference Result 201 states and 254 transitions. [2022-04-08 11:25:26,292 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 11:25:26,292 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) Word has length 82 [2022-04-08 11:25:26,292 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:26,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:26,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-08 11:25:26,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:26,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-08 11:25:26,295 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 135 transitions. [2022-04-08 11:25:26,422 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:26,426 INFO L225 Difference]: With dead ends: 201 [2022-04-08 11:25:26,426 INFO L226 Difference]: Without dead ends: 198 [2022-04-08 11:25:26,426 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 165 GetRequests, 147 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 63 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=59, Invalid=247, Unknown=0, NotChecked=0, Total=306 [2022-04-08 11:25:26,426 INFO L913 BasicCegarLoop]: 73 mSDtfsCounter, 52 mSDsluCounter, 318 mSDsCounter, 0 mSdLazyCounter, 528 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 391 SdHoareTripleChecker+Invalid, 553 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 528 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:26,426 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 391 Invalid, 553 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 528 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 11:25:26,427 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 198 states. [2022-04-08 11:25:26,626 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 198 to 168. [2022-04-08 11:25:26,626 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:26,626 INFO L82 GeneralOperation]: Start isEquivalent. First operand 198 states. Second operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:26,626 INFO L74 IsIncluded]: Start isIncluded. First operand 198 states. Second operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:26,627 INFO L87 Difference]: Start difference. First operand 198 states. Second operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:26,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:26,630 INFO L93 Difference]: Finished difference Result 198 states and 249 transitions. [2022-04-08 11:25:26,630 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 249 transitions. [2022-04-08 11:25:26,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:26,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:26,631 INFO L74 IsIncluded]: Start isIncluded. First operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) Second operand 198 states. [2022-04-08 11:25:26,631 INFO L87 Difference]: Start difference. First operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) Second operand 198 states. [2022-04-08 11:25:26,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:26,635 INFO L93 Difference]: Finished difference Result 198 states and 249 transitions. [2022-04-08 11:25:26,635 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 249 transitions. [2022-04-08 11:25:26,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:26,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:26,636 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:26,636 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:26,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:26,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 168 states to 168 states and 206 transitions. [2022-04-08 11:25:26,639 INFO L78 Accepts]: Start accepts. Automaton has 168 states and 206 transitions. Word has length 82 [2022-04-08 11:25:26,639 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:26,640 INFO L478 AbstractCegarLoop]: Abstraction has 168 states and 206 transitions. [2022-04-08 11:25:26,640 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:26,640 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 168 states and 206 transitions. [2022-04-08 11:25:26,864 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:26,865 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 206 transitions. [2022-04-08 11:25:26,865 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2022-04-08 11:25:26,865 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:26,865 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:26,894 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:27,066 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:27,066 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:27,066 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:27,066 INFO L85 PathProgramCache]: Analyzing trace with hash 1891783602, now seen corresponding path program 1 times [2022-04-08 11:25:27,067 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:27,067 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [747761804] [2022-04-08 11:25:50,407 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:25:50,408 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:25:50,408 INFO L85 PathProgramCache]: Analyzing trace with hash 1891783602, now seen corresponding path program 2 times [2022-04-08 11:25:50,408 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:50,409 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [735623460] [2022-04-08 11:25:50,409 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:50,409 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:50,427 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:50,427 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [714598456] [2022-04-08 11:25:50,427 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:50,427 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:50,427 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:50,428 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:50,429 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-08 11:25:50,484 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:25:50,485 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:50,485 INFO L263 TraceCheckSpWp]: Trace formula consists of 234 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 11:25:50,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:50,504 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:50,842 INFO L272 TraceCheckUtils]: 0: Hoare triple {12716#true} call ULTIMATE.init(); {12716#true} is VALID [2022-04-08 11:25:50,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {12716#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {12724#(<= ~counter~0 0)} assume true; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,843 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12724#(<= ~counter~0 0)} {12716#true} #93#return; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,843 INFO L272 TraceCheckUtils]: 4: Hoare triple {12724#(<= ~counter~0 0)} call #t~ret8 := main(); {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,844 INFO L290 TraceCheckUtils]: 5: Hoare triple {12724#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,844 INFO L272 TraceCheckUtils]: 6: Hoare triple {12724#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,844 INFO L290 TraceCheckUtils]: 7: Hoare triple {12724#(<= ~counter~0 0)} ~cond := #in~cond; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,844 INFO L290 TraceCheckUtils]: 8: Hoare triple {12724#(<= ~counter~0 0)} assume !(0 == ~cond); {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,845 INFO L290 TraceCheckUtils]: 9: Hoare triple {12724#(<= ~counter~0 0)} assume true; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,845 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12724#(<= ~counter~0 0)} {12724#(<= ~counter~0 0)} #77#return; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,845 INFO L290 TraceCheckUtils]: 11: Hoare triple {12724#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:50,846 INFO L290 TraceCheckUtils]: 12: Hoare triple {12724#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {12758#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,846 INFO L272 TraceCheckUtils]: 14: Hoare triple {12758#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,846 INFO L290 TraceCheckUtils]: 15: Hoare triple {12758#(<= ~counter~0 1)} ~cond := #in~cond; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,847 INFO L290 TraceCheckUtils]: 16: Hoare triple {12758#(<= ~counter~0 1)} assume !(0 == ~cond); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,847 INFO L290 TraceCheckUtils]: 17: Hoare triple {12758#(<= ~counter~0 1)} assume true; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,847 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12758#(<= ~counter~0 1)} {12758#(<= ~counter~0 1)} #79#return; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,847 INFO L272 TraceCheckUtils]: 19: Hoare triple {12758#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,848 INFO L290 TraceCheckUtils]: 20: Hoare triple {12758#(<= ~counter~0 1)} ~cond := #in~cond; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,848 INFO L290 TraceCheckUtils]: 21: Hoare triple {12758#(<= ~counter~0 1)} assume !(0 == ~cond); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,848 INFO L290 TraceCheckUtils]: 22: Hoare triple {12758#(<= ~counter~0 1)} assume true; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,848 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12758#(<= ~counter~0 1)} {12758#(<= ~counter~0 1)} #81#return; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {12758#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:50,849 INFO L290 TraceCheckUtils]: 25: Hoare triple {12758#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,849 INFO L290 TraceCheckUtils]: 26: Hoare triple {12798#(<= ~counter~0 2)} assume !!(#t~post7 < 5);havoc #t~post7; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,850 INFO L272 TraceCheckUtils]: 27: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,850 INFO L290 TraceCheckUtils]: 28: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,850 INFO L290 TraceCheckUtils]: 29: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,850 INFO L290 TraceCheckUtils]: 30: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,850 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #83#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,851 INFO L272 TraceCheckUtils]: 32: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,851 INFO L290 TraceCheckUtils]: 33: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,869 INFO L290 TraceCheckUtils]: 34: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,870 INFO L290 TraceCheckUtils]: 35: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,870 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #85#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,870 INFO L272 TraceCheckUtils]: 37: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,871 INFO L290 TraceCheckUtils]: 39: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,879 INFO L290 TraceCheckUtils]: 40: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,898 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #87#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,898 INFO L290 TraceCheckUtils]: 42: Hoare triple {12798#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,898 INFO L272 TraceCheckUtils]: 43: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,898 INFO L290 TraceCheckUtils]: 44: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,899 INFO L290 TraceCheckUtils]: 45: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,899 INFO L290 TraceCheckUtils]: 46: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,899 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #89#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,899 INFO L290 TraceCheckUtils]: 48: Hoare triple {12798#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:50,900 INFO L290 TraceCheckUtils]: 49: Hoare triple {12798#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,900 INFO L290 TraceCheckUtils]: 50: Hoare triple {12871#(<= ~counter~0 3)} assume !!(#t~post7 < 5);havoc #t~post7; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,901 INFO L272 TraceCheckUtils]: 51: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,901 INFO L290 TraceCheckUtils]: 52: Hoare triple {12871#(<= ~counter~0 3)} ~cond := #in~cond; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,901 INFO L290 TraceCheckUtils]: 53: Hoare triple {12871#(<= ~counter~0 3)} assume !(0 == ~cond); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,901 INFO L290 TraceCheckUtils]: 54: Hoare triple {12871#(<= ~counter~0 3)} assume true; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,901 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12871#(<= ~counter~0 3)} {12871#(<= ~counter~0 3)} #83#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,902 INFO L272 TraceCheckUtils]: 56: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,902 INFO L290 TraceCheckUtils]: 57: Hoare triple {12871#(<= ~counter~0 3)} ~cond := #in~cond; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,902 INFO L290 TraceCheckUtils]: 58: Hoare triple {12871#(<= ~counter~0 3)} assume !(0 == ~cond); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,902 INFO L290 TraceCheckUtils]: 59: Hoare triple {12871#(<= ~counter~0 3)} assume true; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,903 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12871#(<= ~counter~0 3)} {12871#(<= ~counter~0 3)} #85#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,903 INFO L272 TraceCheckUtils]: 61: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,903 INFO L290 TraceCheckUtils]: 62: Hoare triple {12871#(<= ~counter~0 3)} ~cond := #in~cond; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,903 INFO L290 TraceCheckUtils]: 63: Hoare triple {12871#(<= ~counter~0 3)} assume !(0 == ~cond); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,904 INFO L290 TraceCheckUtils]: 64: Hoare triple {12871#(<= ~counter~0 3)} assume true; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,904 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {12871#(<= ~counter~0 3)} {12871#(<= ~counter~0 3)} #87#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,904 INFO L290 TraceCheckUtils]: 66: Hoare triple {12871#(<= ~counter~0 3)} assume !(~r~0 >= 2 * ~b~0); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,904 INFO L290 TraceCheckUtils]: 67: Hoare triple {12871#(<= ~counter~0 3)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:50,905 INFO L290 TraceCheckUtils]: 68: Hoare triple {12871#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,905 INFO L290 TraceCheckUtils]: 69: Hoare triple {12929#(<= ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,905 INFO L272 TraceCheckUtils]: 70: Hoare triple {12929#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,905 INFO L290 TraceCheckUtils]: 71: Hoare triple {12929#(<= ~counter~0 4)} ~cond := #in~cond; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,906 INFO L290 TraceCheckUtils]: 72: Hoare triple {12929#(<= ~counter~0 4)} assume !(0 == ~cond); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,906 INFO L290 TraceCheckUtils]: 73: Hoare triple {12929#(<= ~counter~0 4)} assume true; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,906 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {12929#(<= ~counter~0 4)} {12929#(<= ~counter~0 4)} #79#return; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,906 INFO L272 TraceCheckUtils]: 75: Hoare triple {12929#(<= ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,907 INFO L290 TraceCheckUtils]: 76: Hoare triple {12929#(<= ~counter~0 4)} ~cond := #in~cond; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,907 INFO L290 TraceCheckUtils]: 77: Hoare triple {12929#(<= ~counter~0 4)} assume !(0 == ~cond); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,907 INFO L290 TraceCheckUtils]: 78: Hoare triple {12929#(<= ~counter~0 4)} assume true; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,907 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {12929#(<= ~counter~0 4)} {12929#(<= ~counter~0 4)} #81#return; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 80: Hoare triple {12929#(<= ~counter~0 4)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 81: Hoare triple {12929#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12969#(<= |main_#t~post7| 4)} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 82: Hoare triple {12969#(<= |main_#t~post7| 4)} assume !(#t~post7 < 5);havoc #t~post7; {12717#false} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 83: Hoare triple {12717#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {12717#false} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 84: Hoare triple {12717#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12717#false} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 85: Hoare triple {12717#false} assume !(#t~post6 < 5);havoc #t~post6; {12717#false} is VALID [2022-04-08 11:25:50,908 INFO L272 TraceCheckUtils]: 86: Hoare triple {12717#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12717#false} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 87: Hoare triple {12717#false} ~cond := #in~cond; {12717#false} is VALID [2022-04-08 11:25:50,908 INFO L290 TraceCheckUtils]: 88: Hoare triple {12717#false} assume 0 == ~cond; {12717#false} is VALID [2022-04-08 11:25:50,909 INFO L290 TraceCheckUtils]: 89: Hoare triple {12717#false} assume !false; {12717#false} is VALID [2022-04-08 11:25:50,909 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 27 proven. 191 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 11:25:50,909 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:25:51,216 INFO L290 TraceCheckUtils]: 89: Hoare triple {12717#false} assume !false; {12717#false} is VALID [2022-04-08 11:25:51,216 INFO L290 TraceCheckUtils]: 88: Hoare triple {12717#false} assume 0 == ~cond; {12717#false} is VALID [2022-04-08 11:25:51,216 INFO L290 TraceCheckUtils]: 87: Hoare triple {12717#false} ~cond := #in~cond; {12717#false} is VALID [2022-04-08 11:25:51,216 INFO L272 TraceCheckUtils]: 86: Hoare triple {12717#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12717#false} is VALID [2022-04-08 11:25:51,216 INFO L290 TraceCheckUtils]: 85: Hoare triple {12717#false} assume !(#t~post6 < 5);havoc #t~post6; {12717#false} is VALID [2022-04-08 11:25:51,216 INFO L290 TraceCheckUtils]: 84: Hoare triple {12717#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12717#false} is VALID [2022-04-08 11:25:51,217 INFO L290 TraceCheckUtils]: 83: Hoare triple {12717#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {12717#false} is VALID [2022-04-08 11:25:51,217 INFO L290 TraceCheckUtils]: 82: Hoare triple {12969#(<= |main_#t~post7| 4)} assume !(#t~post7 < 5);havoc #t~post7; {12717#false} is VALID [2022-04-08 11:25:51,217 INFO L290 TraceCheckUtils]: 81: Hoare triple {12929#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12969#(<= |main_#t~post7| 4)} is VALID [2022-04-08 11:25:51,217 INFO L290 TraceCheckUtils]: 80: Hoare triple {12929#(<= ~counter~0 4)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:51,218 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {12716#true} {12929#(<= ~counter~0 4)} #81#return; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:51,218 INFO L290 TraceCheckUtils]: 78: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,218 INFO L290 TraceCheckUtils]: 77: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,218 INFO L290 TraceCheckUtils]: 76: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,218 INFO L272 TraceCheckUtils]: 75: Hoare triple {12929#(<= ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,219 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {12716#true} {12929#(<= ~counter~0 4)} #79#return; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:51,219 INFO L290 TraceCheckUtils]: 73: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,219 INFO L290 TraceCheckUtils]: 72: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,219 INFO L290 TraceCheckUtils]: 71: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,219 INFO L272 TraceCheckUtils]: 70: Hoare triple {12929#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,219 INFO L290 TraceCheckUtils]: 69: Hoare triple {12929#(<= ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:51,220 INFO L290 TraceCheckUtils]: 68: Hoare triple {12871#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:25:51,220 INFO L290 TraceCheckUtils]: 67: Hoare triple {12871#(<= ~counter~0 3)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:51,220 INFO L290 TraceCheckUtils]: 66: Hoare triple {12871#(<= ~counter~0 3)} assume !(~r~0 >= 2 * ~b~0); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:51,221 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {12716#true} {12871#(<= ~counter~0 3)} #87#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:51,221 INFO L290 TraceCheckUtils]: 64: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,221 INFO L290 TraceCheckUtils]: 63: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,221 INFO L290 TraceCheckUtils]: 62: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,221 INFO L272 TraceCheckUtils]: 61: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,221 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12716#true} {12871#(<= ~counter~0 3)} #85#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:51,221 INFO L290 TraceCheckUtils]: 59: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,222 INFO L290 TraceCheckUtils]: 58: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,222 INFO L290 TraceCheckUtils]: 57: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,222 INFO L272 TraceCheckUtils]: 56: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,222 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12716#true} {12871#(<= ~counter~0 3)} #83#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:51,222 INFO L290 TraceCheckUtils]: 54: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,222 INFO L290 TraceCheckUtils]: 53: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,222 INFO L290 TraceCheckUtils]: 52: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,222 INFO L272 TraceCheckUtils]: 51: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,223 INFO L290 TraceCheckUtils]: 50: Hoare triple {12871#(<= ~counter~0 3)} assume !!(#t~post7 < 5);havoc #t~post7; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:51,223 INFO L290 TraceCheckUtils]: 49: Hoare triple {12798#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:25:51,223 INFO L290 TraceCheckUtils]: 48: Hoare triple {12798#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,224 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12716#true} {12798#(<= ~counter~0 2)} #89#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,224 INFO L290 TraceCheckUtils]: 46: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,224 INFO L290 TraceCheckUtils]: 45: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,224 INFO L290 TraceCheckUtils]: 44: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,224 INFO L272 TraceCheckUtils]: 43: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,224 INFO L290 TraceCheckUtils]: 42: Hoare triple {12798#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,225 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12716#true} {12798#(<= ~counter~0 2)} #87#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,225 INFO L290 TraceCheckUtils]: 40: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,225 INFO L290 TraceCheckUtils]: 39: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,225 INFO L290 TraceCheckUtils]: 38: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,225 INFO L272 TraceCheckUtils]: 37: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,225 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12716#true} {12798#(<= ~counter~0 2)} #85#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,225 INFO L290 TraceCheckUtils]: 35: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,225 INFO L290 TraceCheckUtils]: 34: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,225 INFO L290 TraceCheckUtils]: 33: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,225 INFO L272 TraceCheckUtils]: 32: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,226 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12716#true} {12798#(<= ~counter~0 2)} #83#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,226 INFO L290 TraceCheckUtils]: 30: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,226 INFO L290 TraceCheckUtils]: 29: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,226 INFO L290 TraceCheckUtils]: 28: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,226 INFO L272 TraceCheckUtils]: 27: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,226 INFO L290 TraceCheckUtils]: 26: Hoare triple {12798#(<= ~counter~0 2)} assume !!(#t~post7 < 5);havoc #t~post7; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,227 INFO L290 TraceCheckUtils]: 25: Hoare triple {12758#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:25:51,227 INFO L290 TraceCheckUtils]: 24: Hoare triple {12758#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:51,228 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12716#true} {12758#(<= ~counter~0 1)} #81#return; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:51,228 INFO L290 TraceCheckUtils]: 22: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,228 INFO L290 TraceCheckUtils]: 21: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,228 INFO L290 TraceCheckUtils]: 20: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,228 INFO L272 TraceCheckUtils]: 19: Hoare triple {12758#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,228 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12716#true} {12758#(<= ~counter~0 1)} #79#return; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:51,228 INFO L290 TraceCheckUtils]: 17: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,228 INFO L290 TraceCheckUtils]: 16: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,228 INFO L290 TraceCheckUtils]: 15: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,229 INFO L272 TraceCheckUtils]: 14: Hoare triple {12758#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,229 INFO L290 TraceCheckUtils]: 13: Hoare triple {12758#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:51,229 INFO L290 TraceCheckUtils]: 12: Hoare triple {12724#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:25:51,229 INFO L290 TraceCheckUtils]: 11: Hoare triple {12724#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:51,230 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12716#true} {12724#(<= ~counter~0 0)} #77#return; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:51,230 INFO L290 TraceCheckUtils]: 9: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:25:51,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:25:51,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:25:51,230 INFO L272 TraceCheckUtils]: 6: Hoare triple {12724#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:25:51,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {12724#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:51,231 INFO L272 TraceCheckUtils]: 4: Hoare triple {12724#(<= ~counter~0 0)} call #t~ret8 := main(); {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:51,231 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12724#(<= ~counter~0 0)} {12716#true} #93#return; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:51,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {12724#(<= ~counter~0 0)} assume true; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:51,232 INFO L290 TraceCheckUtils]: 1: Hoare triple {12716#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:25:51,232 INFO L272 TraceCheckUtils]: 0: Hoare triple {12716#true} call ULTIMATE.init(); {12716#true} is VALID [2022-04-08 11:25:51,232 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 27 proven. 15 refuted. 0 times theorem prover too weak. 220 trivial. 0 not checked. [2022-04-08 11:25:51,232 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:51,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [735623460] [2022-04-08 11:25:51,232 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:51,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [714598456] [2022-04-08 11:25:51,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [714598456] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:25:51,233 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:25:51,233 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-08 11:25:51,233 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:51,233 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [747761804] [2022-04-08 11:25:51,233 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [747761804] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:51,233 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:51,233 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:25:51,233 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [999662831] [2022-04-08 11:25:51,233 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:51,233 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 90 [2022-04-08 11:25:51,234 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:51,234 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:25:51,284 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:51,285 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:25:51,285 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:51,285 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:25:51,285 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-08 11:25:51,285 INFO L87 Difference]: Start difference. First operand 168 states and 206 transitions. Second operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:25:51,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:51,774 INFO L93 Difference]: Finished difference Result 269 states and 336 transitions. [2022-04-08 11:25:51,774 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 11:25:51,774 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 90 [2022-04-08 11:25:51,774 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:51,774 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:25:51,779 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 143 transitions. [2022-04-08 11:25:51,779 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:25:51,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 143 transitions. [2022-04-08 11:25:51,780 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 143 transitions. [2022-04-08 11:25:51,889 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:51,892 INFO L225 Difference]: With dead ends: 269 [2022-04-08 11:25:51,892 INFO L226 Difference]: Without dead ends: 196 [2022-04-08 11:25:51,893 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 182 GetRequests, 172 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2022-04-08 11:25:51,894 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 46 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 117 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:51,894 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 169 Invalid, 117 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:25:51,895 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 196 states. [2022-04-08 11:25:52,162 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 196 to 196. [2022-04-08 11:25:52,162 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:52,162 INFO L82 GeneralOperation]: Start isEquivalent. First operand 196 states. Second operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:25:52,162 INFO L74 IsIncluded]: Start isIncluded. First operand 196 states. Second operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:25:52,163 INFO L87 Difference]: Start difference. First operand 196 states. Second operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:25:52,166 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:52,166 INFO L93 Difference]: Finished difference Result 196 states and 232 transitions. [2022-04-08 11:25:52,166 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 232 transitions. [2022-04-08 11:25:52,166 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:52,166 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:52,167 INFO L74 IsIncluded]: Start isIncluded. First operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) Second operand 196 states. [2022-04-08 11:25:52,167 INFO L87 Difference]: Start difference. First operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) Second operand 196 states. [2022-04-08 11:25:52,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:52,170 INFO L93 Difference]: Finished difference Result 196 states and 232 transitions. [2022-04-08 11:25:52,170 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 232 transitions. [2022-04-08 11:25:52,170 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:52,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:52,171 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:52,171 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:52,171 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:25:52,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 196 states to 196 states and 232 transitions. [2022-04-08 11:25:52,174 INFO L78 Accepts]: Start accepts. Automaton has 196 states and 232 transitions. Word has length 90 [2022-04-08 11:25:52,174 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:52,174 INFO L478 AbstractCegarLoop]: Abstraction has 196 states and 232 transitions. [2022-04-08 11:25:52,175 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:25:52,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 196 states and 232 transitions. [2022-04-08 11:25:52,434 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:52,435 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 232 transitions. [2022-04-08 11:25:52,435 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 107 [2022-04-08 11:25:52,436 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:52,436 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 3, 3, 3, 3, 3, 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, 1] [2022-04-08 11:25:52,452 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Ended with exit code 0 [2022-04-08 11:25:52,636 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-08 11:25:52,636 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:52,636 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:52,636 INFO L85 PathProgramCache]: Analyzing trace with hash 447330249, now seen corresponding path program 3 times [2022-04-08 11:25:52,637 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:52,637 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [355254127] [2022-04-08 11:26:19,763 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:26:19,763 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:26:19,763 INFO L85 PathProgramCache]: Analyzing trace with hash 447330249, now seen corresponding path program 4 times [2022-04-08 11:26:19,763 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:26:19,763 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [553452355] [2022-04-08 11:26:19,769 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:26:19,769 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:26:19,778 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:26:19,779 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1034031203] [2022-04-08 11:26:19,779 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:26:19,779 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:19,779 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:26:19,799 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:26:19,802 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-08 11:26:19,864 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:26:19,864 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:26:19,865 INFO L263 TraceCheckSpWp]: Trace formula consists of 229 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-08 11:26:19,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:26:19,883 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:26:21,781 INFO L272 TraceCheckUtils]: 0: Hoare triple {14591#true} call ULTIMATE.init(); {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {14591#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14591#true} {14591#true} #93#return; {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {14591#true} call #t~ret8 := main(); {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {14591#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L272 TraceCheckUtils]: 6: Hoare triple {14591#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,781 INFO L290 TraceCheckUtils]: 9: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,782 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14591#true} {14591#true} #77#return; {14591#true} is VALID [2022-04-08 11:26:21,782 INFO L290 TraceCheckUtils]: 11: Hoare triple {14591#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,782 INFO L290 TraceCheckUtils]: 12: Hoare triple {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,782 INFO L290 TraceCheckUtils]: 13: Hoare triple {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,783 INFO L272 TraceCheckUtils]: 14: Hoare triple {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,783 INFO L290 TraceCheckUtils]: 15: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,783 INFO L290 TraceCheckUtils]: 17: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,783 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14591#true} {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,783 INFO L272 TraceCheckUtils]: 19: Hoare triple {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,783 INFO L290 TraceCheckUtils]: 20: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,783 INFO L290 TraceCheckUtils]: 21: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,784 INFO L290 TraceCheckUtils]: 22: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,784 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14591#true} {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,784 INFO L290 TraceCheckUtils]: 24: Hoare triple {14629#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,785 INFO L290 TraceCheckUtils]: 25: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,785 INFO L290 TraceCheckUtils]: 26: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,785 INFO L272 TraceCheckUtils]: 27: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,785 INFO L290 TraceCheckUtils]: 28: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,785 INFO L290 TraceCheckUtils]: 29: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,785 INFO L290 TraceCheckUtils]: 30: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,786 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14591#true} {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,786 INFO L272 TraceCheckUtils]: 32: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,786 INFO L290 TraceCheckUtils]: 33: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,786 INFO L290 TraceCheckUtils]: 35: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,786 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14591#true} {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,787 INFO L272 TraceCheckUtils]: 37: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,787 INFO L290 TraceCheckUtils]: 38: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,787 INFO L290 TraceCheckUtils]: 39: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,787 INFO L290 TraceCheckUtils]: 40: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,787 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14591#true} {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,788 INFO L290 TraceCheckUtils]: 42: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,788 INFO L272 TraceCheckUtils]: 43: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,788 INFO L290 TraceCheckUtils]: 44: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,788 INFO L290 TraceCheckUtils]: 45: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,788 INFO L290 TraceCheckUtils]: 46: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,788 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14591#true} {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,789 INFO L290 TraceCheckUtils]: 48: Hoare triple {14669#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,789 INFO L290 TraceCheckUtils]: 49: Hoare triple {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,790 INFO L290 TraceCheckUtils]: 50: Hoare triple {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,790 INFO L272 TraceCheckUtils]: 51: Hoare triple {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,790 INFO L290 TraceCheckUtils]: 52: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,790 INFO L290 TraceCheckUtils]: 53: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,790 INFO L290 TraceCheckUtils]: 54: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,790 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14591#true} {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #83#return; {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,791 INFO L272 TraceCheckUtils]: 56: Hoare triple {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,791 INFO L290 TraceCheckUtils]: 57: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,791 INFO L290 TraceCheckUtils]: 58: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,791 INFO L290 TraceCheckUtils]: 59: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,791 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14591#true} {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #85#return; {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,791 INFO L272 TraceCheckUtils]: 61: Hoare triple {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,791 INFO L290 TraceCheckUtils]: 62: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,791 INFO L290 TraceCheckUtils]: 63: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,791 INFO L290 TraceCheckUtils]: 64: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,792 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {14591#true} {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #87#return; {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,792 INFO L290 TraceCheckUtils]: 66: Hoare triple {14742#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {14797#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (not (<= (* main_~b~0 2) main_~r~0)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:21,793 INFO L290 TraceCheckUtils]: 67: Hoare triple {14797#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (not (<= (* main_~b~0 2) main_~r~0)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,794 INFO L290 TraceCheckUtils]: 68: Hoare triple {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,794 INFO L290 TraceCheckUtils]: 69: Hoare triple {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !!(#t~post6 < 5);havoc #t~post6; {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,794 INFO L272 TraceCheckUtils]: 70: Hoare triple {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,794 INFO L290 TraceCheckUtils]: 71: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,794 INFO L290 TraceCheckUtils]: 72: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,794 INFO L290 TraceCheckUtils]: 73: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,795 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14591#true} {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #79#return; {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,795 INFO L272 TraceCheckUtils]: 75: Hoare triple {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,795 INFO L290 TraceCheckUtils]: 76: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,795 INFO L290 TraceCheckUtils]: 77: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,795 INFO L290 TraceCheckUtils]: 78: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,795 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {14591#true} {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #81#return; {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,796 INFO L290 TraceCheckUtils]: 80: Hoare triple {14801#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,796 INFO L290 TraceCheckUtils]: 81: Hoare triple {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,797 INFO L290 TraceCheckUtils]: 82: Hoare triple {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !!(#t~post7 < 5);havoc #t~post7; {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,797 INFO L272 TraceCheckUtils]: 83: Hoare triple {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,797 INFO L290 TraceCheckUtils]: 84: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,797 INFO L290 TraceCheckUtils]: 85: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,797 INFO L290 TraceCheckUtils]: 86: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,798 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {14591#true} {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #83#return; {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:21,798 INFO L272 TraceCheckUtils]: 88: Hoare triple {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,798 INFO L290 TraceCheckUtils]: 89: Hoare triple {14591#true} ~cond := #in~cond; {14869#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:26:21,798 INFO L290 TraceCheckUtils]: 90: Hoare triple {14869#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:26:21,798 INFO L290 TraceCheckUtils]: 91: Hoare triple {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:26:21,799 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} {14841#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #85#return; {14880#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} is VALID [2022-04-08 11:26:21,799 INFO L272 TraceCheckUtils]: 93: Hoare triple {14880#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:21,799 INFO L290 TraceCheckUtils]: 94: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:21,799 INFO L290 TraceCheckUtils]: 95: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:21,799 INFO L290 TraceCheckUtils]: 96: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:21,800 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14591#true} {14880#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} #87#return; {14880#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} is VALID [2022-04-08 11:26:21,800 INFO L290 TraceCheckUtils]: 98: Hoare triple {14880#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} assume !(~r~0 >= 2 * ~b~0); {14880#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} is VALID [2022-04-08 11:26:21,802 INFO L290 TraceCheckUtils]: 99: Hoare triple {14880#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {14902#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} is VALID [2022-04-08 11:26:21,802 INFO L290 TraceCheckUtils]: 100: Hoare triple {14902#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14902#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} is VALID [2022-04-08 11:26:21,803 INFO L290 TraceCheckUtils]: 101: Hoare triple {14902#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} assume !(#t~post6 < 5);havoc #t~post6; {14902#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} is VALID [2022-04-08 11:26:21,803 INFO L272 TraceCheckUtils]: 102: Hoare triple {14902#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14912#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:26:21,803 INFO L290 TraceCheckUtils]: 103: Hoare triple {14912#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14916#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:26:21,804 INFO L290 TraceCheckUtils]: 104: Hoare triple {14916#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14592#false} is VALID [2022-04-08 11:26:21,804 INFO L290 TraceCheckUtils]: 105: Hoare triple {14592#false} assume !false; {14592#false} is VALID [2022-04-08 11:26:21,804 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 63 proven. 32 refuted. 0 times theorem prover too weak. 325 trivial. 0 not checked. [2022-04-08 11:26:21,804 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:26:32,939 INFO L290 TraceCheckUtils]: 105: Hoare triple {14592#false} assume !false; {14592#false} is VALID [2022-04-08 11:26:32,939 INFO L290 TraceCheckUtils]: 104: Hoare triple {14916#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14592#false} is VALID [2022-04-08 11:26:32,940 INFO L290 TraceCheckUtils]: 103: Hoare triple {14912#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14916#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:26:32,940 INFO L272 TraceCheckUtils]: 102: Hoare triple {14932#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14912#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:26:32,940 INFO L290 TraceCheckUtils]: 101: Hoare triple {14932#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(#t~post6 < 5);havoc #t~post6; {14932#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:26:32,941 INFO L290 TraceCheckUtils]: 100: Hoare triple {14932#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14932#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:26:32,945 INFO L290 TraceCheckUtils]: 99: Hoare triple {14942#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {14932#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:26:32,946 INFO L290 TraceCheckUtils]: 98: Hoare triple {14942#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {14942#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:26:32,946 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14591#true} {14942#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {14942#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:26:32,946 INFO L290 TraceCheckUtils]: 96: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,946 INFO L290 TraceCheckUtils]: 95: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,946 INFO L290 TraceCheckUtils]: 94: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,946 INFO L272 TraceCheckUtils]: 93: Hoare triple {14942#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,948 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} #85#return; {14942#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:26:32,948 INFO L290 TraceCheckUtils]: 91: Hoare triple {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:26:32,948 INFO L290 TraceCheckUtils]: 90: Hoare triple {14974#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14873#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:26:32,949 INFO L290 TraceCheckUtils]: 89: Hoare triple {14591#true} ~cond := #in~cond; {14974#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:26:32,949 INFO L272 TraceCheckUtils]: 88: Hoare triple {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,949 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {14591#true} {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} #83#return; {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:26:32,949 INFO L290 TraceCheckUtils]: 86: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,949 INFO L290 TraceCheckUtils]: 85: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,949 INFO L290 TraceCheckUtils]: 84: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,949 INFO L272 TraceCheckUtils]: 83: Hoare triple {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,950 INFO L290 TraceCheckUtils]: 82: Hoare triple {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} assume !!(#t~post7 < 5);havoc #t~post7; {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:26:32,950 INFO L290 TraceCheckUtils]: 81: Hoare triple {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 80: Hoare triple {14591#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14964#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:26:32,951 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {14591#true} {14591#true} #81#return; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 78: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 77: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 76: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L272 TraceCheckUtils]: 75: Hoare triple {14591#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14591#true} {14591#true} #79#return; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 73: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 72: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 71: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L272 TraceCheckUtils]: 70: Hoare triple {14591#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 69: Hoare triple {14591#true} assume !!(#t~post6 < 5);havoc #t~post6; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 68: Hoare triple {14591#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 67: Hoare triple {14591#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 66: Hoare triple {14591#true} assume !(~r~0 >= 2 * ~b~0); {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {14591#true} {14591#true} #87#return; {14591#true} is VALID [2022-04-08 11:26:32,951 INFO L290 TraceCheckUtils]: 64: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 63: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 62: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L272 TraceCheckUtils]: 61: Hoare triple {14591#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14591#true} {14591#true} #85#return; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 59: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 58: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 57: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L272 TraceCheckUtils]: 56: Hoare triple {14591#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14591#true} {14591#true} #83#return; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 54: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 53: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 52: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L272 TraceCheckUtils]: 51: Hoare triple {14591#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 50: Hoare triple {14591#true} assume !!(#t~post7 < 5);havoc #t~post7; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 49: Hoare triple {14591#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 48: Hoare triple {14591#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14591#true} {14591#true} #89#return; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 46: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,952 INFO L290 TraceCheckUtils]: 45: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 44: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L272 TraceCheckUtils]: 43: Hoare triple {14591#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 42: Hoare triple {14591#true} assume !!(~r~0 >= 2 * ~b~0); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14591#true} {14591#true} #87#return; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 40: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 39: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 38: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L272 TraceCheckUtils]: 37: Hoare triple {14591#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14591#true} {14591#true} #85#return; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 35: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 34: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 33: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L272 TraceCheckUtils]: 32: Hoare triple {14591#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14591#true} {14591#true} #83#return; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 30: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 29: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 28: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L272 TraceCheckUtils]: 27: Hoare triple {14591#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,953 INFO L290 TraceCheckUtils]: 26: Hoare triple {14591#true} assume !!(#t~post7 < 5);havoc #t~post7; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 25: Hoare triple {14591#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 24: Hoare triple {14591#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14591#true} {14591#true} #81#return; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 22: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 21: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 20: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L272 TraceCheckUtils]: 19: Hoare triple {14591#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14591#true} {14591#true} #79#return; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 17: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 16: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 15: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L272 TraceCheckUtils]: 14: Hoare triple {14591#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 13: Hoare triple {14591#true} assume !!(#t~post6 < 5);havoc #t~post6; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 12: Hoare triple {14591#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 11: Hoare triple {14591#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14591#true} {14591#true} #77#return; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 9: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 8: Hoare triple {14591#true} assume !(0 == ~cond); {14591#true} is VALID [2022-04-08 11:26:32,954 INFO L290 TraceCheckUtils]: 7: Hoare triple {14591#true} ~cond := #in~cond; {14591#true} is VALID [2022-04-08 11:26:32,955 INFO L272 TraceCheckUtils]: 6: Hoare triple {14591#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14591#true} is VALID [2022-04-08 11:26:32,955 INFO L290 TraceCheckUtils]: 5: Hoare triple {14591#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14591#true} is VALID [2022-04-08 11:26:32,955 INFO L272 TraceCheckUtils]: 4: Hoare triple {14591#true} call #t~ret8 := main(); {14591#true} is VALID [2022-04-08 11:26:32,955 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14591#true} {14591#true} #93#return; {14591#true} is VALID [2022-04-08 11:26:32,955 INFO L290 TraceCheckUtils]: 2: Hoare triple {14591#true} assume true; {14591#true} is VALID [2022-04-08 11:26:32,955 INFO L290 TraceCheckUtils]: 1: Hoare triple {14591#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {14591#true} is VALID [2022-04-08 11:26:32,955 INFO L272 TraceCheckUtils]: 0: Hoare triple {14591#true} call ULTIMATE.init(); {14591#true} is VALID [2022-04-08 11:26:32,956 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 80 proven. 4 refuted. 0 times theorem prover too weak. 336 trivial. 0 not checked. [2022-04-08 11:26:32,956 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:26:32,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [553452355] [2022-04-08 11:26:32,956 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:26:32,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1034031203] [2022-04-08 11:26:32,956 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1034031203] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:26:32,956 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:26:32,956 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 18 [2022-04-08 11:26:32,957 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:26:32,957 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [355254127] [2022-04-08 11:26:32,957 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [355254127] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:26:32,957 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:26:32,957 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 11:26:32,957 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1606484197] [2022-04-08 11:26:32,957 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:26:32,957 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) Word has length 106 [2022-04-08 11:26:32,958 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:26:32,958 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:26:33,028 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:33,028 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 11:26:33,028 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:33,029 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 11:26:33,029 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=252, Unknown=0, NotChecked=0, Total=306 [2022-04-08 11:26:33,029 INFO L87 Difference]: Start difference. First operand 196 states and 232 transitions. Second operand has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:26:36,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:36,139 INFO L93 Difference]: Finished difference Result 281 states and 343 transitions. [2022-04-08 11:26:36,139 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 11:26:36,139 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) Word has length 106 [2022-04-08 11:26:36,140 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:26:36,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:26:36,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 151 transitions. [2022-04-08 11:26:36,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:26:36,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 151 transitions. [2022-04-08 11:26:36,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 151 transitions. [2022-04-08 11:26:36,242 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:36,245 INFO L225 Difference]: With dead ends: 281 [2022-04-08 11:26:36,245 INFO L226 Difference]: Without dead ends: 185 [2022-04-08 11:26:36,245 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 194 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2022-04-08 11:26:36,245 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 31 mSDsluCounter, 244 mSDsCounter, 0 mSdLazyCounter, 549 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 293 SdHoareTripleChecker+Invalid, 578 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 549 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:26:36,246 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 293 Invalid, 578 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 549 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-08 11:26:36,246 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-04-08 11:26:36,572 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 184. [2022-04-08 11:26:36,572 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:26:36,572 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:26:36,573 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:26:36,573 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:26:36,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:36,576 INFO L93 Difference]: Finished difference Result 185 states and 219 transitions. [2022-04-08 11:26:36,576 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 219 transitions. [2022-04-08 11:26:36,577 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:36,577 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:36,577 INFO L74 IsIncluded]: Start isIncluded. First operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) Second operand 185 states. [2022-04-08 11:26:36,577 INFO L87 Difference]: Start difference. First operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) Second operand 185 states. [2022-04-08 11:26:36,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:36,580 INFO L93 Difference]: Finished difference Result 185 states and 219 transitions. [2022-04-08 11:26:36,580 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 219 transitions. [2022-04-08 11:26:36,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:36,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:36,580 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:26:36,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:26:36,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:26:36,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 218 transitions. [2022-04-08 11:26:36,602 INFO L78 Accepts]: Start accepts. Automaton has 184 states and 218 transitions. Word has length 106 [2022-04-08 11:26:36,602 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:26:36,602 INFO L478 AbstractCegarLoop]: Abstraction has 184 states and 218 transitions. [2022-04-08 11:26:36,603 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:26:36,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 184 states and 218 transitions. [2022-04-08 11:26:36,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 218 edges. 218 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:36,950 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 218 transitions. [2022-04-08 11:26:36,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 115 [2022-04-08 11:26:36,951 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:26:36,951 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 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] [2022-04-08 11:26:36,968 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-08 11:26:37,151 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-08 11:26:37,151 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:26:37,152 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:26:37,152 INFO L85 PathProgramCache]: Analyzing trace with hash 2077207105, now seen corresponding path program 3 times [2022-04-08 11:26:37,152 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:37,152 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [414935977] [2022-04-08 11:27:05,026 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:27:05,026 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:27:05,027 INFO L85 PathProgramCache]: Analyzing trace with hash 2077207105, now seen corresponding path program 4 times [2022-04-08 11:27:05,027 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:27:05,027 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1447223652] [2022-04-08 11:27:05,027 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:27:05,027 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:27:05,060 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:27:05,060 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1810911001] [2022-04-08 11:27:05,060 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:27:05,061 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:27:05,061 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:27:05,061 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:27:05,074 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-08 11:27:05,130 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:27:05,130 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:27:05,131 INFO L263 TraceCheckSpWp]: Trace formula consists of 247 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-08 11:27:05,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:27:05,148 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:28:48,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {16548#true} call ULTIMATE.init(); {16548#true} is VALID [2022-04-08 11:28:48,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {16548#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16548#true} is VALID [2022-04-08 11:28:48,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,185 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16548#true} {16548#true} #93#return; {16548#true} is VALID [2022-04-08 11:28:48,185 INFO L272 TraceCheckUtils]: 4: Hoare triple {16548#true} call #t~ret8 := main(); {16548#true} is VALID [2022-04-08 11:28:48,185 INFO L290 TraceCheckUtils]: 5: Hoare triple {16548#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16548#true} is VALID [2022-04-08 11:28:48,186 INFO L272 TraceCheckUtils]: 6: Hoare triple {16548#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,186 INFO L290 TraceCheckUtils]: 7: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,186 INFO L290 TraceCheckUtils]: 8: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,186 INFO L290 TraceCheckUtils]: 9: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,186 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16548#true} {16548#true} #77#return; {16548#true} is VALID [2022-04-08 11:28:48,186 INFO L290 TraceCheckUtils]: 11: Hoare triple {16548#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,186 INFO L290 TraceCheckUtils]: 12: Hoare triple {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,187 INFO L290 TraceCheckUtils]: 13: Hoare triple {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,187 INFO L272 TraceCheckUtils]: 14: Hoare triple {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,187 INFO L290 TraceCheckUtils]: 15: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,187 INFO L290 TraceCheckUtils]: 16: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,187 INFO L290 TraceCheckUtils]: 17: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,187 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16548#true} {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,187 INFO L272 TraceCheckUtils]: 19: Hoare triple {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,188 INFO L290 TraceCheckUtils]: 20: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,188 INFO L290 TraceCheckUtils]: 21: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,188 INFO L290 TraceCheckUtils]: 22: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,188 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16548#true} {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,188 INFO L290 TraceCheckUtils]: 24: Hoare triple {16586#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,189 INFO L290 TraceCheckUtils]: 25: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,189 INFO L290 TraceCheckUtils]: 26: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,189 INFO L272 TraceCheckUtils]: 27: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,189 INFO L290 TraceCheckUtils]: 28: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,189 INFO L290 TraceCheckUtils]: 29: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,189 INFO L290 TraceCheckUtils]: 30: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,190 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {16548#true} {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,190 INFO L272 TraceCheckUtils]: 32: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,190 INFO L290 TraceCheckUtils]: 33: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,190 INFO L290 TraceCheckUtils]: 34: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,190 INFO L290 TraceCheckUtils]: 35: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,190 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16548#true} {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,190 INFO L272 TraceCheckUtils]: 37: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,190 INFO L290 TraceCheckUtils]: 38: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,190 INFO L290 TraceCheckUtils]: 39: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,191 INFO L290 TraceCheckUtils]: 40: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,191 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16548#true} {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,191 INFO L290 TraceCheckUtils]: 42: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,191 INFO L272 TraceCheckUtils]: 43: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,191 INFO L290 TraceCheckUtils]: 44: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,191 INFO L290 TraceCheckUtils]: 45: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,192 INFO L290 TraceCheckUtils]: 46: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,192 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16548#true} {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,193 INFO L290 TraceCheckUtils]: 48: Hoare triple {16626#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {16699#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,193 INFO L290 TraceCheckUtils]: 49: Hoare triple {16699#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16699#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,194 INFO L290 TraceCheckUtils]: 50: Hoare triple {16699#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {16699#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:28:48,194 INFO L272 TraceCheckUtils]: 51: Hoare triple {16699#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,194 INFO L290 TraceCheckUtils]: 52: Hoare triple {16548#true} ~cond := #in~cond; {16712#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:48,194 INFO L290 TraceCheckUtils]: 53: Hoare triple {16712#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {16716#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:48,195 INFO L290 TraceCheckUtils]: 54: Hoare triple {16716#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {16716#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:48,195 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16716#(not (= |__VERIFIER_assert_#in~cond| 0))} {16699#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} #83#return; {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:28:48,195 INFO L272 TraceCheckUtils]: 56: Hoare triple {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,195 INFO L290 TraceCheckUtils]: 57: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,195 INFO L290 TraceCheckUtils]: 58: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,196 INFO L290 TraceCheckUtils]: 59: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,196 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16548#true} {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #85#return; {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:28:48,196 INFO L272 TraceCheckUtils]: 61: Hoare triple {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,196 INFO L290 TraceCheckUtils]: 62: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,196 INFO L290 TraceCheckUtils]: 63: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,196 INFO L290 TraceCheckUtils]: 64: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,197 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {16548#true} {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #87#return; {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:28:48,197 INFO L290 TraceCheckUtils]: 66: Hoare triple {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !!(~r~0 >= 2 * ~b~0); {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:28:48,197 INFO L272 TraceCheckUtils]: 67: Hoare triple {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,197 INFO L290 TraceCheckUtils]: 68: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,197 INFO L290 TraceCheckUtils]: 69: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,197 INFO L290 TraceCheckUtils]: 70: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,198 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {16548#true} {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #89#return; {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:28:48,202 INFO L290 TraceCheckUtils]: 72: Hoare triple {16723#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:28:48,203 INFO L290 TraceCheckUtils]: 73: Hoare triple {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:28:48,203 INFO L290 TraceCheckUtils]: 74: Hoare triple {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !!(#t~post7 < 5);havoc #t~post7; {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:28:48,203 INFO L272 TraceCheckUtils]: 75: Hoare triple {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,203 INFO L290 TraceCheckUtils]: 76: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,203 INFO L290 TraceCheckUtils]: 77: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,203 INFO L290 TraceCheckUtils]: 78: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,204 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {16548#true} {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #83#return; {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:28:48,204 INFO L272 TraceCheckUtils]: 80: Hoare triple {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,204 INFO L290 TraceCheckUtils]: 81: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,204 INFO L290 TraceCheckUtils]: 82: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,204 INFO L290 TraceCheckUtils]: 83: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,205 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {16548#true} {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #85#return; {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:28:48,205 INFO L272 TraceCheckUtils]: 85: Hoare triple {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,205 INFO L290 TraceCheckUtils]: 86: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,205 INFO L290 TraceCheckUtils]: 87: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,205 INFO L290 TraceCheckUtils]: 88: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,205 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {16548#true} {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #87#return; {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:28:48,206 INFO L290 TraceCheckUtils]: 90: Hoare triple {16775#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !(~r~0 >= 2 * ~b~0); {16830#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (not (<= (* main_~b~0 2) main_~r~0)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:28:48,210 INFO L290 TraceCheckUtils]: 91: Hoare triple {16830#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (not (<= (* main_~b~0 2) main_~r~0)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:28:48,211 INFO L290 TraceCheckUtils]: 92: Hoare triple {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:28:48,212 INFO L290 TraceCheckUtils]: 93: Hoare triple {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:28:48,212 INFO L272 TraceCheckUtils]: 94: Hoare triple {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,212 INFO L290 TraceCheckUtils]: 95: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,212 INFO L290 TraceCheckUtils]: 96: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,212 INFO L290 TraceCheckUtils]: 97: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,212 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {16548#true} {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} #79#return; {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:28:48,212 INFO L272 TraceCheckUtils]: 99: Hoare triple {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16548#true} is VALID [2022-04-08 11:28:48,213 INFO L290 TraceCheckUtils]: 100: Hoare triple {16548#true} ~cond := #in~cond; {16548#true} is VALID [2022-04-08 11:28:48,213 INFO L290 TraceCheckUtils]: 101: Hoare triple {16548#true} assume !(0 == ~cond); {16548#true} is VALID [2022-04-08 11:28:48,213 INFO L290 TraceCheckUtils]: 102: Hoare triple {16548#true} assume true; {16548#true} is VALID [2022-04-08 11:28:48,213 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {16548#true} {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} #81#return; {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:28:48,214 INFO L290 TraceCheckUtils]: 104: Hoare triple {16834#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {16874#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-08 11:28:48,214 INFO L290 TraceCheckUtils]: 105: Hoare triple {16874#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16874#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-08 11:28:48,214 INFO L290 TraceCheckUtils]: 106: Hoare triple {16874#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} assume !(#t~post7 < 5);havoc #t~post7; {16874#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-08 11:28:48,218 INFO L290 TraceCheckUtils]: 107: Hoare triple {16874#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {16884#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} is VALID [2022-04-08 11:28:48,219 INFO L290 TraceCheckUtils]: 108: Hoare triple {16884#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16884#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} is VALID [2022-04-08 11:28:48,219 INFO L290 TraceCheckUtils]: 109: Hoare triple {16884#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} assume !(#t~post6 < 5);havoc #t~post6; {16884#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} is VALID [2022-04-08 11:28:48,228 INFO L272 TraceCheckUtils]: 110: Hoare triple {16884#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16894#(exists ((v_main_~y~0_BEFORE_CALL_179 Int) (aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58 Int) (aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 Int) (aux_div_v_main_~q~0_BEFORE_CALL_125_55 Int)) (and (< (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) 2) (<= (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2) (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55))) (< (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55)) (+ 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2))) (= (* v_main_~y~0_BEFORE_CALL_179 aux_div_v_main_~q~0_BEFORE_CALL_125_55) (* v_main_~y~0_BEFORE_CALL_179 2)) (<= 0 (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58)) (< (+ v_main_~y~0_BEFORE_CALL_179 (* (* v_main_~y~0_BEFORE_CALL_179 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) 4)) (* 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 v_main_~y~0_BEFORE_CALL_179))) (<= 1 |__VERIFIER_assert_#in~cond|)))} is VALID [2022-04-08 11:28:48,229 INFO L290 TraceCheckUtils]: 111: Hoare triple {16894#(exists ((v_main_~y~0_BEFORE_CALL_179 Int) (aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58 Int) (aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 Int) (aux_div_v_main_~q~0_BEFORE_CALL_125_55 Int)) (and (< (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) 2) (<= (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2) (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55))) (< (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55)) (+ 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2))) (= (* v_main_~y~0_BEFORE_CALL_179 aux_div_v_main_~q~0_BEFORE_CALL_125_55) (* v_main_~y~0_BEFORE_CALL_179 2)) (<= 0 (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58)) (< (+ v_main_~y~0_BEFORE_CALL_179 (* (* v_main_~y~0_BEFORE_CALL_179 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) 4)) (* 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 v_main_~y~0_BEFORE_CALL_179))) (<= 1 |__VERIFIER_assert_#in~cond|)))} ~cond := #in~cond; {16898#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:48,229 INFO L290 TraceCheckUtils]: 112: Hoare triple {16898#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16549#false} is VALID [2022-04-08 11:28:48,229 INFO L290 TraceCheckUtils]: 113: Hoare triple {16549#false} assume !false; {16549#false} is VALID [2022-04-08 11:28:48,230 INFO L134 CoverageAnalysis]: Checked inductivity of 486 backedges. 47 proven. 61 refuted. 0 times theorem prover too weak. 378 trivial. 0 not checked. [2022-04-08 11:28:48,230 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:28:58,328 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 11:29:44,227 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:29:44,227 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1447223652] [2022-04-08 11:29:44,227 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:29:44,227 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1810911001] [2022-04-08 11:29:44,227 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1810911001] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 11:29:44,227 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 11:29:44,227 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2022-04-08 11:29:44,227 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:29:44,227 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [414935977] [2022-04-08 11:29:44,228 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [414935977] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:29:44,228 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:29:44,228 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 11:29:44,228 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1886274513] [2022-04-08 11:29:44,228 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:29:44,228 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 114 [2022-04-08 11:29:44,228 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:29:44,228 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:29:44,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:29:44,376 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 11:29:44,376 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:29:44,377 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 11:29:44,377 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=137, Invalid=513, Unknown=0, NotChecked=0, Total=650 [2022-04-08 11:29:44,377 INFO L87 Difference]: Start difference. First operand 184 states and 218 transitions. Second operand has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:29:57,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:29:57,483 INFO L93 Difference]: Finished difference Result 230 states and 283 transitions. [2022-04-08 11:29:57,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 11:29:57,484 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 114 [2022-04-08 11:29:57,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:29:57,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:29:57,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 172 transitions. [2022-04-08 11:29:57,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:29:57,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 172 transitions. [2022-04-08 11:29:57,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 172 transitions. [2022-04-08 11:29:57,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:29:57,809 INFO L225 Difference]: With dead ends: 230 [2022-04-08 11:29:57,809 INFO L226 Difference]: Without dead ends: 217 [2022-04-08 11:29:57,810 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 207 GetRequests, 179 SyntacticMatches, 2 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 219 ImplicationChecksByTransitivity, 1.9s TimeCoverageRelationStatistics Valid=151, Invalid=605, Unknown=0, NotChecked=0, Total=756 [2022-04-08 11:29:57,810 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 47 mSDsluCounter, 318 mSDsCounter, 0 mSdLazyCounter, 914 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 382 SdHoareTripleChecker+Invalid, 961 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 914 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 17 IncrementalHoareTripleChecker+Unchecked, 4.7s IncrementalHoareTripleChecker+Time [2022-04-08 11:29:57,810 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 382 Invalid, 961 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 914 Invalid, 0 Unknown, 17 Unchecked, 4.7s Time] [2022-04-08 11:29:57,811 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 217 states. [2022-04-08 11:29:58,059 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 217 to 206. [2022-04-08 11:29:58,059 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:29:58,060 INFO L82 GeneralOperation]: Start isEquivalent. First operand 217 states. Second operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:29:58,060 INFO L74 IsIncluded]: Start isIncluded. First operand 217 states. Second operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:29:58,060 INFO L87 Difference]: Start difference. First operand 217 states. Second operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:29:58,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:29:58,064 INFO L93 Difference]: Finished difference Result 217 states and 264 transitions. [2022-04-08 11:29:58,064 INFO L276 IsEmpty]: Start isEmpty. Operand 217 states and 264 transitions. [2022-04-08 11:29:58,064 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:29:58,064 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:29:58,065 INFO L74 IsIncluded]: Start isIncluded. First operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) Second operand 217 states. [2022-04-08 11:29:58,065 INFO L87 Difference]: Start difference. First operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) Second operand 217 states. [2022-04-08 11:29:58,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:29:58,069 INFO L93 Difference]: Finished difference Result 217 states and 264 transitions. [2022-04-08 11:29:58,069 INFO L276 IsEmpty]: Start isEmpty. Operand 217 states and 264 transitions. [2022-04-08 11:29:58,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:29:58,069 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:29:58,069 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:29:58,069 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:29:58,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:29:58,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 206 states to 206 states and 252 transitions. [2022-04-08 11:29:58,074 INFO L78 Accepts]: Start accepts. Automaton has 206 states and 252 transitions. Word has length 114 [2022-04-08 11:29:58,074 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:29:58,074 INFO L478 AbstractCegarLoop]: Abstraction has 206 states and 252 transitions. [2022-04-08 11:29:58,074 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:29:58,074 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 206 states and 252 transitions. [2022-04-08 11:29:58,598 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 252 edges. 252 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:29:58,599 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 252 transitions. [2022-04-08 11:29:58,599 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-04-08 11:29:58,599 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:29:58,599 INFO L499 BasicCegarLoop]: trace histogram [18, 17, 17, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 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] [2022-04-08 11:29:58,618 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-08 11:29:58,806 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-08 11:29:58,807 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:29:58,807 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:29:58,807 INFO L85 PathProgramCache]: Analyzing trace with hash 1338024082, now seen corresponding path program 5 times [2022-04-08 11:29:58,807 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:29:58,807 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1214248153] [2022-04-08 11:30:26,652 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:30:26,652 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:30:26,652 INFO L85 PathProgramCache]: Analyzing trace with hash 1338024082, now seen corresponding path program 6 times [2022-04-08 11:30:26,652 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:30:26,652 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [472478258] [2022-04-08 11:30:26,652 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:30:26,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:30:26,679 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:30:26,679 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1120598022] [2022-04-08 11:30:26,679 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 11:30:26,679 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:30:26,680 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:30:26,681 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:30:26,682 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-08 11:30:26,763 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2022-04-08 11:30:26,763 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:30:26,764 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-08 11:30:26,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:30:26,782 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:30:27,895 INFO L272 TraceCheckUtils]: 0: Hoare triple {18499#true} call ULTIMATE.init(); {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {18499#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L290 TraceCheckUtils]: 2: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18499#true} {18499#true} #93#return; {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L272 TraceCheckUtils]: 4: Hoare triple {18499#true} call #t~ret8 := main(); {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {18499#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L272 TraceCheckUtils]: 6: Hoare triple {18499#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L290 TraceCheckUtils]: 8: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L290 TraceCheckUtils]: 9: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,896 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18499#true} {18499#true} #77#return; {18499#true} is VALID [2022-04-08 11:30:27,897 INFO L290 TraceCheckUtils]: 11: Hoare triple {18499#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,897 INFO L290 TraceCheckUtils]: 12: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,897 INFO L290 TraceCheckUtils]: 13: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,897 INFO L272 TraceCheckUtils]: 14: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,897 INFO L290 TraceCheckUtils]: 15: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,897 INFO L290 TraceCheckUtils]: 16: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,898 INFO L290 TraceCheckUtils]: 17: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,898 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,898 INFO L272 TraceCheckUtils]: 19: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,898 INFO L290 TraceCheckUtils]: 20: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,898 INFO L290 TraceCheckUtils]: 21: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,898 INFO L290 TraceCheckUtils]: 22: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,899 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,899 INFO L290 TraceCheckUtils]: 24: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,899 INFO L290 TraceCheckUtils]: 25: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,900 INFO L290 TraceCheckUtils]: 26: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,900 INFO L272 TraceCheckUtils]: 27: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,900 INFO L290 TraceCheckUtils]: 28: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,900 INFO L290 TraceCheckUtils]: 29: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,900 INFO L290 TraceCheckUtils]: 30: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,901 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,901 INFO L272 TraceCheckUtils]: 32: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,901 INFO L290 TraceCheckUtils]: 33: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,901 INFO L290 TraceCheckUtils]: 34: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,901 INFO L290 TraceCheckUtils]: 35: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,901 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,901 INFO L272 TraceCheckUtils]: 37: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,901 INFO L290 TraceCheckUtils]: 38: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,901 INFO L290 TraceCheckUtils]: 39: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,902 INFO L290 TraceCheckUtils]: 40: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,902 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,902 INFO L290 TraceCheckUtils]: 42: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,902 INFO L272 TraceCheckUtils]: 43: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,902 INFO L290 TraceCheckUtils]: 44: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,903 INFO L290 TraceCheckUtils]: 45: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,903 INFO L290 TraceCheckUtils]: 46: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,903 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,903 INFO L290 TraceCheckUtils]: 48: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,904 INFO L290 TraceCheckUtils]: 49: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,904 INFO L290 TraceCheckUtils]: 50: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,904 INFO L272 TraceCheckUtils]: 51: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,904 INFO L290 TraceCheckUtils]: 52: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,904 INFO L290 TraceCheckUtils]: 53: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,904 INFO L290 TraceCheckUtils]: 54: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,905 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,905 INFO L272 TraceCheckUtils]: 56: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,905 INFO L290 TraceCheckUtils]: 57: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,905 INFO L290 TraceCheckUtils]: 58: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,905 INFO L290 TraceCheckUtils]: 59: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,906 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,906 INFO L272 TraceCheckUtils]: 61: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,906 INFO L290 TraceCheckUtils]: 62: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,906 INFO L290 TraceCheckUtils]: 63: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,906 INFO L290 TraceCheckUtils]: 64: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,906 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,907 INFO L290 TraceCheckUtils]: 66: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,907 INFO L272 TraceCheckUtils]: 67: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,907 INFO L290 TraceCheckUtils]: 68: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,907 INFO L290 TraceCheckUtils]: 69: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,907 INFO L290 TraceCheckUtils]: 70: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,907 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,908 INFO L290 TraceCheckUtils]: 72: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,908 INFO L290 TraceCheckUtils]: 73: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,908 INFO L290 TraceCheckUtils]: 74: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,908 INFO L272 TraceCheckUtils]: 75: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,908 INFO L290 TraceCheckUtils]: 76: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,909 INFO L290 TraceCheckUtils]: 77: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,909 INFO L290 TraceCheckUtils]: 78: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,909 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,909 INFO L272 TraceCheckUtils]: 80: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,909 INFO L290 TraceCheckUtils]: 81: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,909 INFO L290 TraceCheckUtils]: 82: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,909 INFO L290 TraceCheckUtils]: 83: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,910 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,910 INFO L272 TraceCheckUtils]: 85: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,910 INFO L290 TraceCheckUtils]: 86: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,910 INFO L290 TraceCheckUtils]: 87: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,910 INFO L290 TraceCheckUtils]: 88: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,910 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,911 INFO L290 TraceCheckUtils]: 90: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,911 INFO L272 TraceCheckUtils]: 91: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,911 INFO L290 TraceCheckUtils]: 92: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,911 INFO L290 TraceCheckUtils]: 93: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,911 INFO L290 TraceCheckUtils]: 94: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,914 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {18499#true} {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,918 INFO L290 TraceCheckUtils]: 96: Hoare triple {18537#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18793#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,919 INFO L290 TraceCheckUtils]: 97: Hoare triple {18793#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18793#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,919 INFO L290 TraceCheckUtils]: 98: Hoare triple {18793#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {18793#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:30:27,919 INFO L272 TraceCheckUtils]: 99: Hoare triple {18793#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,920 INFO L290 TraceCheckUtils]: 100: Hoare triple {18499#true} ~cond := #in~cond; {18806#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:30:27,920 INFO L290 TraceCheckUtils]: 101: Hoare triple {18806#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:30:27,920 INFO L290 TraceCheckUtils]: 102: Hoare triple {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:30:27,921 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} {18793#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:30:27,921 INFO L272 TraceCheckUtils]: 104: Hoare triple {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,921 INFO L290 TraceCheckUtils]: 105: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,921 INFO L290 TraceCheckUtils]: 106: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,921 INFO L290 TraceCheckUtils]: 107: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,923 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {18499#true} {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #85#return; {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:30:27,923 INFO L272 TraceCheckUtils]: 109: Hoare triple {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:27,923 INFO L290 TraceCheckUtils]: 110: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:27,923 INFO L290 TraceCheckUtils]: 111: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:27,923 INFO L290 TraceCheckUtils]: 112: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:27,924 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {18499#true} {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #87#return; {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:30:27,924 INFO L290 TraceCheckUtils]: 114: Hoare triple {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !(~r~0 >= 2 * ~b~0); {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:30:27,926 INFO L290 TraceCheckUtils]: 115: Hoare triple {18817#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {18854#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:30:27,927 INFO L290 TraceCheckUtils]: 116: Hoare triple {18854#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18854#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:30:27,927 INFO L290 TraceCheckUtils]: 117: Hoare triple {18854#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} assume !(#t~post6 < 5);havoc #t~post6; {18854#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:30:27,928 INFO L272 TraceCheckUtils]: 118: Hoare triple {18854#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18864#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:30:27,928 INFO L290 TraceCheckUtils]: 119: Hoare triple {18864#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18868#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:30:27,928 INFO L290 TraceCheckUtils]: 120: Hoare triple {18868#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18500#false} is VALID [2022-04-08 11:30:27,928 INFO L290 TraceCheckUtils]: 121: Hoare triple {18500#false} assume !false; {18500#false} is VALID [2022-04-08 11:30:27,929 INFO L134 CoverageAnalysis]: Checked inductivity of 622 backedges. 93 proven. 9 refuted. 0 times theorem prover too weak. 520 trivial. 0 not checked. [2022-04-08 11:30:27,929 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:30:32,623 INFO L290 TraceCheckUtils]: 121: Hoare triple {18500#false} assume !false; {18500#false} is VALID [2022-04-08 11:30:32,624 INFO L290 TraceCheckUtils]: 120: Hoare triple {18868#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18500#false} is VALID [2022-04-08 11:30:32,624 INFO L290 TraceCheckUtils]: 119: Hoare triple {18864#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18868#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:30:32,637 INFO L272 TraceCheckUtils]: 118: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18864#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:30:32,638 INFO L290 TraceCheckUtils]: 117: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(#t~post6 < 5);havoc #t~post6; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,639 INFO L290 TraceCheckUtils]: 116: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,662 INFO L290 TraceCheckUtils]: 115: Hoare triple {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,663 INFO L290 TraceCheckUtils]: 114: Hoare triple {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:30:32,663 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {18499#true} {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:30:32,663 INFO L290 TraceCheckUtils]: 112: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,663 INFO L290 TraceCheckUtils]: 111: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,663 INFO L290 TraceCheckUtils]: 110: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,663 INFO L272 TraceCheckUtils]: 109: Hoare triple {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,664 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {18499#true} {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #85#return; {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:30:32,664 INFO L290 TraceCheckUtils]: 107: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,664 INFO L290 TraceCheckUtils]: 106: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,664 INFO L290 TraceCheckUtils]: 105: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,664 INFO L272 TraceCheckUtils]: 104: Hoare triple {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,665 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18894#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:30:32,665 INFO L290 TraceCheckUtils]: 102: Hoare triple {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:30:32,666 INFO L290 TraceCheckUtils]: 101: Hoare triple {18940#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18810#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:30:32,666 INFO L290 TraceCheckUtils]: 100: Hoare triple {18499#true} ~cond := #in~cond; {18940#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:30:32,666 INFO L272 TraceCheckUtils]: 99: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,666 INFO L290 TraceCheckUtils]: 98: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 5);havoc #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,667 INFO L290 TraceCheckUtils]: 97: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,667 INFO L290 TraceCheckUtils]: 96: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,667 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #89#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,667 INFO L290 TraceCheckUtils]: 94: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,668 INFO L290 TraceCheckUtils]: 93: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,668 INFO L290 TraceCheckUtils]: 92: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,668 INFO L272 TraceCheckUtils]: 91: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,668 INFO L290 TraceCheckUtils]: 90: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,668 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #87#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,668 INFO L290 TraceCheckUtils]: 88: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,668 INFO L290 TraceCheckUtils]: 87: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,669 INFO L290 TraceCheckUtils]: 86: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,669 INFO L272 TraceCheckUtils]: 85: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,669 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #85#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,669 INFO L290 TraceCheckUtils]: 83: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,669 INFO L290 TraceCheckUtils]: 82: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,669 INFO L290 TraceCheckUtils]: 81: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,669 INFO L272 TraceCheckUtils]: 80: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,670 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,670 INFO L290 TraceCheckUtils]: 78: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,670 INFO L290 TraceCheckUtils]: 77: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,670 INFO L290 TraceCheckUtils]: 76: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,670 INFO L272 TraceCheckUtils]: 75: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,670 INFO L290 TraceCheckUtils]: 74: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 5);havoc #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,671 INFO L290 TraceCheckUtils]: 73: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,671 INFO L290 TraceCheckUtils]: 72: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,671 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #89#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,671 INFO L290 TraceCheckUtils]: 70: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,671 INFO L290 TraceCheckUtils]: 69: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,671 INFO L290 TraceCheckUtils]: 68: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,672 INFO L272 TraceCheckUtils]: 67: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,672 INFO L290 TraceCheckUtils]: 66: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,672 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #87#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,672 INFO L290 TraceCheckUtils]: 64: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,672 INFO L290 TraceCheckUtils]: 63: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,672 INFO L290 TraceCheckUtils]: 62: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,673 INFO L272 TraceCheckUtils]: 61: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,673 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #85#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,673 INFO L290 TraceCheckUtils]: 59: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,673 INFO L290 TraceCheckUtils]: 58: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,673 INFO L290 TraceCheckUtils]: 57: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,673 INFO L272 TraceCheckUtils]: 56: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,674 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,674 INFO L290 TraceCheckUtils]: 54: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,674 INFO L290 TraceCheckUtils]: 53: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,674 INFO L290 TraceCheckUtils]: 52: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,674 INFO L272 TraceCheckUtils]: 51: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,674 INFO L290 TraceCheckUtils]: 50: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 5);havoc #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,674 INFO L290 TraceCheckUtils]: 49: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,675 INFO L290 TraceCheckUtils]: 48: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,675 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #89#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,675 INFO L290 TraceCheckUtils]: 46: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,675 INFO L290 TraceCheckUtils]: 45: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,675 INFO L290 TraceCheckUtils]: 44: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,676 INFO L272 TraceCheckUtils]: 43: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,676 INFO L290 TraceCheckUtils]: 42: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,676 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #87#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,676 INFO L290 TraceCheckUtils]: 40: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,676 INFO L290 TraceCheckUtils]: 39: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,676 INFO L290 TraceCheckUtils]: 38: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,676 INFO L272 TraceCheckUtils]: 37: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,677 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #85#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,677 INFO L290 TraceCheckUtils]: 35: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,677 INFO L290 TraceCheckUtils]: 34: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,677 INFO L290 TraceCheckUtils]: 33: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,678 INFO L272 TraceCheckUtils]: 32: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,678 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,678 INFO L290 TraceCheckUtils]: 30: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,678 INFO L290 TraceCheckUtils]: 29: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,679 INFO L290 TraceCheckUtils]: 28: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,679 INFO L272 TraceCheckUtils]: 27: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,679 INFO L290 TraceCheckUtils]: 26: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 5);havoc #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,679 INFO L290 TraceCheckUtils]: 25: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,679 INFO L290 TraceCheckUtils]: 24: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,680 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,680 INFO L290 TraceCheckUtils]: 22: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,680 INFO L290 TraceCheckUtils]: 21: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,680 INFO L290 TraceCheckUtils]: 20: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,680 INFO L272 TraceCheckUtils]: 19: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,681 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18499#true} {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,681 INFO L290 TraceCheckUtils]: 17: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,681 INFO L290 TraceCheckUtils]: 16: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,681 INFO L290 TraceCheckUtils]: 15: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,681 INFO L272 TraceCheckUtils]: 14: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,681 INFO L290 TraceCheckUtils]: 13: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 5);havoc #t~post6; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,681 INFO L290 TraceCheckUtils]: 12: Hoare triple {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,682 INFO L290 TraceCheckUtils]: 11: Hoare triple {18499#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {18884#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:30:32,682 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18499#true} {18499#true} #77#return; {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L290 TraceCheckUtils]: 9: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L290 TraceCheckUtils]: 8: Hoare triple {18499#true} assume !(0 == ~cond); {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L290 TraceCheckUtils]: 7: Hoare triple {18499#true} ~cond := #in~cond; {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L272 TraceCheckUtils]: 6: Hoare triple {18499#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L290 TraceCheckUtils]: 5: Hoare triple {18499#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L272 TraceCheckUtils]: 4: Hoare triple {18499#true} call #t~ret8 := main(); {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18499#true} {18499#true} #93#return; {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {18499#true} assume true; {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {18499#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18499#true} is VALID [2022-04-08 11:30:32,682 INFO L272 TraceCheckUtils]: 0: Hoare triple {18499#true} call ULTIMATE.init(); {18499#true} is VALID [2022-04-08 11:30:32,683 INFO L134 CoverageAnalysis]: Checked inductivity of 622 backedges. 75 proven. 16 refuted. 0 times theorem prover too weak. 531 trivial. 0 not checked. [2022-04-08 11:30:32,683 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:30:32,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [472478258] [2022-04-08 11:30:32,683 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:30:32,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1120598022] [2022-04-08 11:30:32,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1120598022] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:30:32,684 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:30:32,684 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 13 [2022-04-08 11:30:32,684 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:30:32,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1214248153] [2022-04-08 11:30:32,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1214248153] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:30:32,684 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:30:32,684 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 11:30:32,684 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [742149050] [2022-04-08 11:30:32,684 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:30:32,685 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 122 [2022-04-08 11:30:32,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:30:32,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:30:32,739 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:30:32,739 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 11:30:32,739 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:30:32,739 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 11:30:32,739 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=118, Unknown=0, NotChecked=0, Total=156 [2022-04-08 11:30:32,740 INFO L87 Difference]: Start difference. First operand 206 states and 252 transitions. Second operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:30:35,055 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:30:35,055 INFO L93 Difference]: Finished difference Result 240 states and 299 transitions. [2022-04-08 11:30:35,055 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 11:30:35,055 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 122 [2022-04-08 11:30:35,055 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:30:35,056 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:30:35,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-08 11:30:35,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:30:35,058 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-08 11:30:35,058 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 110 transitions. [2022-04-08 11:30:35,268 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:30:35,272 INFO L225 Difference]: With dead ends: 240 [2022-04-08 11:30:35,272 INFO L226 Difference]: Without dead ends: 237 [2022-04-08 11:30:35,272 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 245 GetRequests, 230 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2022-04-08 11:30:35,273 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 32 mSDsluCounter, 161 mSDsCounter, 0 mSdLazyCounter, 311 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 328 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 311 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 11:30:35,273 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 199 Invalid, 328 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 311 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-08 11:30:35,273 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 237 states. [2022-04-08 11:30:35,703 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 237 to 234. [2022-04-08 11:30:35,704 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:30:35,704 INFO L82 GeneralOperation]: Start isEquivalent. First operand 237 states. Second operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:30:35,704 INFO L74 IsIncluded]: Start isIncluded. First operand 237 states. Second operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:30:35,704 INFO L87 Difference]: Start difference. First operand 237 states. Second operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:30:35,708 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:30:35,709 INFO L93 Difference]: Finished difference Result 237 states and 294 transitions. [2022-04-08 11:30:35,709 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 294 transitions. [2022-04-08 11:30:35,709 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:30:35,709 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:30:35,711 INFO L74 IsIncluded]: Start isIncluded. First operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) Second operand 237 states. [2022-04-08 11:30:35,711 INFO L87 Difference]: Start difference. First operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) Second operand 237 states. [2022-04-08 11:30:35,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:30:35,715 INFO L93 Difference]: Finished difference Result 237 states and 294 transitions. [2022-04-08 11:30:35,716 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 294 transitions. [2022-04-08 11:30:35,716 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:30:35,716 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:30:35,716 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:30:35,716 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:30:35,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:30:35,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 234 states to 234 states and 291 transitions. [2022-04-08 11:30:35,723 INFO L78 Accepts]: Start accepts. Automaton has 234 states and 291 transitions. Word has length 122 [2022-04-08 11:30:35,723 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:30:35,723 INFO L478 AbstractCegarLoop]: Abstraction has 234 states and 291 transitions. [2022-04-08 11:30:35,723 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:30:35,723 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 234 states and 291 transitions. [2022-04-08 11:30:36,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 291 edges. 291 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:30:36,266 INFO L276 IsEmpty]: Start isEmpty. Operand 234 states and 291 transitions. [2022-04-08 11:30:36,266 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 131 [2022-04-08 11:30:36,266 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:30:36,266 INFO L499 BasicCegarLoop]: trace histogram [18, 17, 17, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:30:36,291 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-08 11:30:36,467 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:30:36,467 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:30:36,467 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:30:36,467 INFO L85 PathProgramCache]: Analyzing trace with hash -877539457, now seen corresponding path program 5 times [2022-04-08 11:30:36,467 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:30:36,467 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1540548394] [2022-04-08 11:31:06,973 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:31:06,973 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:31:06,973 INFO L85 PathProgramCache]: Analyzing trace with hash -877539457, now seen corresponding path program 6 times [2022-04-08 11:31:06,973 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:31:06,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1468712301] [2022-04-08 11:31:06,973 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:31:06,974 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:31:06,992 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:31:06,993 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1572986649] [2022-04-08 11:31:06,993 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 11:31:06,993 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:31:06,993 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:31:06,994 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:31:06,995 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-08 11:31:07,067 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 11:31:07,067 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:31:07,068 INFO L263 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 11:31:07,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:31:07,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:31:07,389 INFO L272 TraceCheckUtils]: 0: Hoare triple {20669#true} call ULTIMATE.init(); {20669#true} is VALID [2022-04-08 11:31:07,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {20669#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {20669#true} is VALID [2022-04-08 11:31:07,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,389 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20669#true} {20669#true} #93#return; {20669#true} is VALID [2022-04-08 11:31:07,389 INFO L272 TraceCheckUtils]: 4: Hoare triple {20669#true} call #t~ret8 := main(); {20669#true} is VALID [2022-04-08 11:31:07,389 INFO L290 TraceCheckUtils]: 5: Hoare triple {20669#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L272 TraceCheckUtils]: 6: Hoare triple {20669#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 7: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20669#true} {20669#true} #77#return; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {20669#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 12: Hoare triple {20669#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 13: Hoare triple {20669#true} assume !!(#t~post6 < 5);havoc #t~post6; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L272 TraceCheckUtils]: 14: Hoare triple {20669#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 15: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 16: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 17: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {20669#true} {20669#true} #79#return; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L272 TraceCheckUtils]: 19: Hoare triple {20669#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 20: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 21: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 22: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20669#true} {20669#true} #81#return; {20669#true} is VALID [2022-04-08 11:31:07,390 INFO L290 TraceCheckUtils]: 24: Hoare triple {20669#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 25: Hoare triple {20669#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 26: Hoare triple {20669#true} assume !!(#t~post7 < 5);havoc #t~post7; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L272 TraceCheckUtils]: 27: Hoare triple {20669#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 28: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 29: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 30: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {20669#true} {20669#true} #83#return; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L272 TraceCheckUtils]: 32: Hoare triple {20669#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 33: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 34: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 35: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {20669#true} {20669#true} #85#return; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L272 TraceCheckUtils]: 37: Hoare triple {20669#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 38: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 39: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 40: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {20669#true} {20669#true} #87#return; {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L290 TraceCheckUtils]: 42: Hoare triple {20669#true} assume !!(~r~0 >= 2 * ~b~0); {20669#true} is VALID [2022-04-08 11:31:07,391 INFO L272 TraceCheckUtils]: 43: Hoare triple {20669#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 44: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 45: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 46: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20669#true} {20669#true} #89#return; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 48: Hoare triple {20669#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 49: Hoare triple {20669#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 50: Hoare triple {20669#true} assume !!(#t~post7 < 5);havoc #t~post7; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L272 TraceCheckUtils]: 51: Hoare triple {20669#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 52: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 53: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 54: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {20669#true} {20669#true} #83#return; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L272 TraceCheckUtils]: 56: Hoare triple {20669#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 57: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 58: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 59: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {20669#true} {20669#true} #85#return; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L272 TraceCheckUtils]: 61: Hoare triple {20669#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 62: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,392 INFO L290 TraceCheckUtils]: 63: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 64: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {20669#true} {20669#true} #87#return; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 66: Hoare triple {20669#true} assume !!(~r~0 >= 2 * ~b~0); {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L272 TraceCheckUtils]: 67: Hoare triple {20669#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 68: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 69: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 70: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {20669#true} {20669#true} #89#return; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 72: Hoare triple {20669#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 73: Hoare triple {20669#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 74: Hoare triple {20669#true} assume !!(#t~post7 < 5);havoc #t~post7; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L272 TraceCheckUtils]: 75: Hoare triple {20669#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 76: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 77: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 78: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20669#true} {20669#true} #83#return; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L272 TraceCheckUtils]: 80: Hoare triple {20669#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 81: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,393 INFO L290 TraceCheckUtils]: 82: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 83: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {20669#true} {20669#true} #85#return; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L272 TraceCheckUtils]: 85: Hoare triple {20669#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 86: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 87: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 88: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {20669#true} {20669#true} #87#return; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 90: Hoare triple {20669#true} assume !(~r~0 >= 2 * ~b~0); {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 91: Hoare triple {20669#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 92: Hoare triple {20669#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 93: Hoare triple {20669#true} assume !!(#t~post6 < 5);havoc #t~post6; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L272 TraceCheckUtils]: 94: Hoare triple {20669#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 95: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 96: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 97: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {20669#true} {20669#true} #79#return; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L272 TraceCheckUtils]: 99: Hoare triple {20669#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 100: Hoare triple {20669#true} ~cond := #in~cond; {20669#true} is VALID [2022-04-08 11:31:07,394 INFO L290 TraceCheckUtils]: 101: Hoare triple {20669#true} assume !(0 == ~cond); {20669#true} is VALID [2022-04-08 11:31:07,395 INFO L290 TraceCheckUtils]: 102: Hoare triple {20669#true} assume true; {20669#true} is VALID [2022-04-08 11:31:07,395 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {20669#true} {20669#true} #81#return; {20669#true} is VALID [2022-04-08 11:31:07,395 INFO L290 TraceCheckUtils]: 104: Hoare triple {20669#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {20669#true} is VALID [2022-04-08 11:31:07,395 INFO L290 TraceCheckUtils]: 105: Hoare triple {20669#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20989#(<= (+ |main_#t~post7| 1) ~counter~0)} is VALID [2022-04-08 11:31:07,396 INFO L290 TraceCheckUtils]: 106: Hoare triple {20989#(<= (+ |main_#t~post7| 1) ~counter~0)} assume !(#t~post7 < 5);havoc #t~post7; {20993#(<= 6 ~counter~0)} is VALID [2022-04-08 11:31:07,396 INFO L290 TraceCheckUtils]: 107: Hoare triple {20993#(<= 6 ~counter~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {20993#(<= 6 ~counter~0)} is VALID [2022-04-08 11:31:07,397 INFO L290 TraceCheckUtils]: 108: Hoare triple {20993#(<= 6 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21000#(<= 6 |main_#t~post6|)} is VALID [2022-04-08 11:31:07,397 INFO L290 TraceCheckUtils]: 109: Hoare triple {21000#(<= 6 |main_#t~post6|)} assume !!(#t~post6 < 5);havoc #t~post6; {20670#false} is VALID [2022-04-08 11:31:07,397 INFO L272 TraceCheckUtils]: 110: Hoare triple {20670#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20670#false} is VALID [2022-04-08 11:31:07,397 INFO L290 TraceCheckUtils]: 111: Hoare triple {20670#false} ~cond := #in~cond; {20670#false} is VALID [2022-04-08 11:31:07,397 INFO L290 TraceCheckUtils]: 112: Hoare triple {20670#false} assume !(0 == ~cond); {20670#false} is VALID [2022-04-08 11:31:07,397 INFO L290 TraceCheckUtils]: 113: Hoare triple {20670#false} assume true; {20670#false} is VALID [2022-04-08 11:31:07,397 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {20670#false} {20670#false} #79#return; {20670#false} is VALID [2022-04-08 11:31:07,397 INFO L272 TraceCheckUtils]: 115: Hoare triple {20670#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20670#false} is VALID [2022-04-08 11:31:07,397 INFO L290 TraceCheckUtils]: 116: Hoare triple {20670#false} ~cond := #in~cond; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 117: Hoare triple {20670#false} assume !(0 == ~cond); {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 118: Hoare triple {20670#false} assume true; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {20670#false} {20670#false} #81#return; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 120: Hoare triple {20670#false} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 121: Hoare triple {20670#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 122: Hoare triple {20670#false} assume !(#t~post7 < 5);havoc #t~post7; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 123: Hoare triple {20670#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 124: Hoare triple {20670#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 125: Hoare triple {20670#false} assume !(#t~post6 < 5);havoc #t~post6; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L272 TraceCheckUtils]: 126: Hoare triple {20670#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 127: Hoare triple {20670#false} ~cond := #in~cond; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 128: Hoare triple {20670#false} assume 0 == ~cond; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L290 TraceCheckUtils]: 129: Hoare triple {20670#false} assume !false; {20670#false} is VALID [2022-04-08 11:31:07,398 INFO L134 CoverageAnalysis]: Checked inductivity of 636 backedges. 180 proven. 0 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2022-04-08 11:31:07,399 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:31:07,399 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:31:07,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1468712301] [2022-04-08 11:31:07,399 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:31:07,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1572986649] [2022-04-08 11:31:07,399 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1572986649] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:31:07,399 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:31:07,399 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:31:07,399 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:31:07,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1540548394] [2022-04-08 11:31:07,400 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1540548394] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:31:07,409 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:31:07,409 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:31:07,409 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [723624163] [2022-04-08 11:31:07,409 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:31:07,410 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 130 [2022-04-08 11:31:07,410 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:31:07,410 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:07,454 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:07,454 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:31:07,454 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:07,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:31:07,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:31:07,455 INFO L87 Difference]: Start difference. First operand 234 states and 291 transitions. Second operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:08,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:08,092 INFO L93 Difference]: Finished difference Result 316 states and 400 transitions. [2022-04-08 11:31:08,092 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:31:08,093 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 130 [2022-04-08 11:31:08,093 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:31:08,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:08,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-08 11:31:08,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:08,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-08 11:31:08,097 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-08 11:31:08,151 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:08,155 INFO L225 Difference]: With dead ends: 316 [2022-04-08 11:31:08,155 INFO L226 Difference]: Without dead ends: 219 [2022-04-08 11:31:08,155 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 130 GetRequests, 126 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:31:08,156 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 6 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:31:08,156 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 160 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:31:08,156 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-08 11:31:08,449 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 211. [2022-04-08 11:31:08,450 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:31:08,451 INFO L82 GeneralOperation]: Start isEquivalent. First operand 219 states. Second operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:08,451 INFO L74 IsIncluded]: Start isIncluded. First operand 219 states. Second operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:08,452 INFO L87 Difference]: Start difference. First operand 219 states. Second operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:08,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:08,474 INFO L93 Difference]: Finished difference Result 219 states and 258 transitions. [2022-04-08 11:31:08,474 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 258 transitions. [2022-04-08 11:31:08,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:08,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:08,475 INFO L74 IsIncluded]: Start isIncluded. First operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) Second operand 219 states. [2022-04-08 11:31:08,475 INFO L87 Difference]: Start difference. First operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) Second operand 219 states. [2022-04-08 11:31:08,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:08,479 INFO L93 Difference]: Finished difference Result 219 states and 258 transitions. [2022-04-08 11:31:08,479 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 258 transitions. [2022-04-08 11:31:08,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:08,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:08,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:31:08,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:31:08,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:08,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 211 states to 211 states and 251 transitions. [2022-04-08 11:31:08,483 INFO L78 Accepts]: Start accepts. Automaton has 211 states and 251 transitions. Word has length 130 [2022-04-08 11:31:08,483 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:31:08,484 INFO L478 AbstractCegarLoop]: Abstraction has 211 states and 251 transitions. [2022-04-08 11:31:08,484 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:08,484 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 211 states and 251 transitions. [2022-04-08 11:31:08,906 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 251 edges. 251 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:08,906 INFO L276 IsEmpty]: Start isEmpty. Operand 211 states and 251 transitions. [2022-04-08 11:31:08,907 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 139 [2022-04-08 11:31:08,907 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:31:08,907 INFO L499 BasicCegarLoop]: trace histogram [20, 19, 19, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 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] [2022-04-08 11:31:08,941 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-08 11:31:09,111 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:31:09,111 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:31:09,112 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:31:09,112 INFO L85 PathProgramCache]: Analyzing trace with hash 518951120, now seen corresponding path program 7 times [2022-04-08 11:31:09,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:09,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1469971558] [2022-04-08 11:31:40,318 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:31:40,319 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:31:40,319 INFO L85 PathProgramCache]: Analyzing trace with hash 518951120, now seen corresponding path program 8 times [2022-04-08 11:31:40,319 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:31:40,319 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2117705898] [2022-04-08 11:31:40,319 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:31:40,319 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:31:40,336 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:31:40,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [583457878] [2022-04-08 11:31:40,336 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:31:40,336 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:31:40,337 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:31:40,337 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:31:40,338 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-08 11:31:40,511 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:31:40,511 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:31:40,513 INFO L263 TraceCheckSpWp]: Trace formula consists of 326 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 11:31:40,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:31:40,534 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:31:41,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {22557#true} call ULTIMATE.init(); {22557#true} is VALID [2022-04-08 11:31:41,182 INFO L290 TraceCheckUtils]: 1: Hoare triple {22557#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {22565#(<= 0 ~counter~0)} assume true; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,183 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22565#(<= 0 ~counter~0)} {22557#true} #93#return; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,183 INFO L272 TraceCheckUtils]: 4: Hoare triple {22565#(<= 0 ~counter~0)} call #t~ret8 := main(); {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {22565#(<= 0 ~counter~0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,184 INFO L272 TraceCheckUtils]: 6: Hoare triple {22565#(<= 0 ~counter~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,184 INFO L290 TraceCheckUtils]: 7: Hoare triple {22565#(<= 0 ~counter~0)} ~cond := #in~cond; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {22565#(<= 0 ~counter~0)} assume !(0 == ~cond); {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,184 INFO L290 TraceCheckUtils]: 9: Hoare triple {22565#(<= 0 ~counter~0)} assume true; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,185 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22565#(<= 0 ~counter~0)} {22565#(<= 0 ~counter~0)} #77#return; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,185 INFO L290 TraceCheckUtils]: 11: Hoare triple {22565#(<= 0 ~counter~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,186 INFO L290 TraceCheckUtils]: 12: Hoare triple {22565#(<= 0 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,186 INFO L290 TraceCheckUtils]: 13: Hoare triple {22599#(<= 1 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,187 INFO L272 TraceCheckUtils]: 14: Hoare triple {22599#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,187 INFO L290 TraceCheckUtils]: 15: Hoare triple {22599#(<= 1 ~counter~0)} ~cond := #in~cond; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,187 INFO L290 TraceCheckUtils]: 16: Hoare triple {22599#(<= 1 ~counter~0)} assume !(0 == ~cond); {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,187 INFO L290 TraceCheckUtils]: 17: Hoare triple {22599#(<= 1 ~counter~0)} assume true; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,188 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22599#(<= 1 ~counter~0)} {22599#(<= 1 ~counter~0)} #79#return; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,188 INFO L272 TraceCheckUtils]: 19: Hoare triple {22599#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,189 INFO L290 TraceCheckUtils]: 20: Hoare triple {22599#(<= 1 ~counter~0)} ~cond := #in~cond; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,189 INFO L290 TraceCheckUtils]: 21: Hoare triple {22599#(<= 1 ~counter~0)} assume !(0 == ~cond); {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,189 INFO L290 TraceCheckUtils]: 22: Hoare triple {22599#(<= 1 ~counter~0)} assume true; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,189 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22599#(<= 1 ~counter~0)} {22599#(<= 1 ~counter~0)} #81#return; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,190 INFO L290 TraceCheckUtils]: 24: Hoare triple {22599#(<= 1 ~counter~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,191 INFO L290 TraceCheckUtils]: 25: Hoare triple {22599#(<= 1 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,191 INFO L290 TraceCheckUtils]: 26: Hoare triple {22639#(<= 2 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,191 INFO L272 TraceCheckUtils]: 27: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,191 INFO L290 TraceCheckUtils]: 28: Hoare triple {22639#(<= 2 ~counter~0)} ~cond := #in~cond; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,192 INFO L290 TraceCheckUtils]: 29: Hoare triple {22639#(<= 2 ~counter~0)} assume !(0 == ~cond); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,192 INFO L290 TraceCheckUtils]: 30: Hoare triple {22639#(<= 2 ~counter~0)} assume true; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,192 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {22639#(<= 2 ~counter~0)} {22639#(<= 2 ~counter~0)} #83#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,193 INFO L272 TraceCheckUtils]: 32: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,193 INFO L290 TraceCheckUtils]: 33: Hoare triple {22639#(<= 2 ~counter~0)} ~cond := #in~cond; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,193 INFO L290 TraceCheckUtils]: 34: Hoare triple {22639#(<= 2 ~counter~0)} assume !(0 == ~cond); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,194 INFO L290 TraceCheckUtils]: 35: Hoare triple {22639#(<= 2 ~counter~0)} assume true; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,194 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22639#(<= 2 ~counter~0)} {22639#(<= 2 ~counter~0)} #85#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,194 INFO L272 TraceCheckUtils]: 37: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,195 INFO L290 TraceCheckUtils]: 38: Hoare triple {22639#(<= 2 ~counter~0)} ~cond := #in~cond; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,195 INFO L290 TraceCheckUtils]: 39: Hoare triple {22639#(<= 2 ~counter~0)} assume !(0 == ~cond); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,195 INFO L290 TraceCheckUtils]: 40: Hoare triple {22639#(<= 2 ~counter~0)} assume true; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,196 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22639#(<= 2 ~counter~0)} {22639#(<= 2 ~counter~0)} #87#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,196 INFO L290 TraceCheckUtils]: 42: Hoare triple {22639#(<= 2 ~counter~0)} assume !!(~r~0 >= 2 * ~b~0); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,196 INFO L272 TraceCheckUtils]: 43: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,197 INFO L290 TraceCheckUtils]: 44: Hoare triple {22639#(<= 2 ~counter~0)} ~cond := #in~cond; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,197 INFO L290 TraceCheckUtils]: 45: Hoare triple {22639#(<= 2 ~counter~0)} assume !(0 == ~cond); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,197 INFO L290 TraceCheckUtils]: 46: Hoare triple {22639#(<= 2 ~counter~0)} assume true; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,197 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22639#(<= 2 ~counter~0)} {22639#(<= 2 ~counter~0)} #89#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,198 INFO L290 TraceCheckUtils]: 48: Hoare triple {22639#(<= 2 ~counter~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,199 INFO L290 TraceCheckUtils]: 49: Hoare triple {22639#(<= 2 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,199 INFO L290 TraceCheckUtils]: 50: Hoare triple {22712#(<= 3 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,199 INFO L272 TraceCheckUtils]: 51: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,200 INFO L290 TraceCheckUtils]: 52: Hoare triple {22712#(<= 3 ~counter~0)} ~cond := #in~cond; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,200 INFO L290 TraceCheckUtils]: 53: Hoare triple {22712#(<= 3 ~counter~0)} assume !(0 == ~cond); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,200 INFO L290 TraceCheckUtils]: 54: Hoare triple {22712#(<= 3 ~counter~0)} assume true; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,201 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22712#(<= 3 ~counter~0)} {22712#(<= 3 ~counter~0)} #83#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,201 INFO L272 TraceCheckUtils]: 56: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,201 INFO L290 TraceCheckUtils]: 57: Hoare triple {22712#(<= 3 ~counter~0)} ~cond := #in~cond; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,202 INFO L290 TraceCheckUtils]: 58: Hoare triple {22712#(<= 3 ~counter~0)} assume !(0 == ~cond); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,202 INFO L290 TraceCheckUtils]: 59: Hoare triple {22712#(<= 3 ~counter~0)} assume true; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,202 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22712#(<= 3 ~counter~0)} {22712#(<= 3 ~counter~0)} #85#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,203 INFO L272 TraceCheckUtils]: 61: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,203 INFO L290 TraceCheckUtils]: 62: Hoare triple {22712#(<= 3 ~counter~0)} ~cond := #in~cond; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,203 INFO L290 TraceCheckUtils]: 63: Hoare triple {22712#(<= 3 ~counter~0)} assume !(0 == ~cond); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,203 INFO L290 TraceCheckUtils]: 64: Hoare triple {22712#(<= 3 ~counter~0)} assume true; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,204 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {22712#(<= 3 ~counter~0)} {22712#(<= 3 ~counter~0)} #87#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,204 INFO L290 TraceCheckUtils]: 66: Hoare triple {22712#(<= 3 ~counter~0)} assume !!(~r~0 >= 2 * ~b~0); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,205 INFO L272 TraceCheckUtils]: 67: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,205 INFO L290 TraceCheckUtils]: 68: Hoare triple {22712#(<= 3 ~counter~0)} ~cond := #in~cond; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,205 INFO L290 TraceCheckUtils]: 69: Hoare triple {22712#(<= 3 ~counter~0)} assume !(0 == ~cond); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,205 INFO L290 TraceCheckUtils]: 70: Hoare triple {22712#(<= 3 ~counter~0)} assume true; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,206 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {22712#(<= 3 ~counter~0)} {22712#(<= 3 ~counter~0)} #89#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,206 INFO L290 TraceCheckUtils]: 72: Hoare triple {22712#(<= 3 ~counter~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,207 INFO L290 TraceCheckUtils]: 73: Hoare triple {22712#(<= 3 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,207 INFO L290 TraceCheckUtils]: 74: Hoare triple {22785#(<= 4 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,208 INFO L272 TraceCheckUtils]: 75: Hoare triple {22785#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,208 INFO L290 TraceCheckUtils]: 76: Hoare triple {22785#(<= 4 ~counter~0)} ~cond := #in~cond; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,208 INFO L290 TraceCheckUtils]: 77: Hoare triple {22785#(<= 4 ~counter~0)} assume !(0 == ~cond); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,209 INFO L290 TraceCheckUtils]: 78: Hoare triple {22785#(<= 4 ~counter~0)} assume true; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,209 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {22785#(<= 4 ~counter~0)} {22785#(<= 4 ~counter~0)} #83#return; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,209 INFO L272 TraceCheckUtils]: 80: Hoare triple {22785#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,210 INFO L290 TraceCheckUtils]: 81: Hoare triple {22785#(<= 4 ~counter~0)} ~cond := #in~cond; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,210 INFO L290 TraceCheckUtils]: 82: Hoare triple {22785#(<= 4 ~counter~0)} assume !(0 == ~cond); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,210 INFO L290 TraceCheckUtils]: 83: Hoare triple {22785#(<= 4 ~counter~0)} assume true; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,211 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22785#(<= 4 ~counter~0)} {22785#(<= 4 ~counter~0)} #85#return; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,211 INFO L272 TraceCheckUtils]: 85: Hoare triple {22785#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,211 INFO L290 TraceCheckUtils]: 86: Hoare triple {22785#(<= 4 ~counter~0)} ~cond := #in~cond; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,212 INFO L290 TraceCheckUtils]: 87: Hoare triple {22785#(<= 4 ~counter~0)} assume !(0 == ~cond); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,212 INFO L290 TraceCheckUtils]: 88: Hoare triple {22785#(<= 4 ~counter~0)} assume true; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,212 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {22785#(<= 4 ~counter~0)} {22785#(<= 4 ~counter~0)} #87#return; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,212 INFO L290 TraceCheckUtils]: 90: Hoare triple {22785#(<= 4 ~counter~0)} assume !(~r~0 >= 2 * ~b~0); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,213 INFO L290 TraceCheckUtils]: 91: Hoare triple {22785#(<= 4 ~counter~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,214 INFO L290 TraceCheckUtils]: 92: Hoare triple {22785#(<= 4 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,214 INFO L290 TraceCheckUtils]: 93: Hoare triple {22843#(<= 5 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,214 INFO L272 TraceCheckUtils]: 94: Hoare triple {22843#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,217 INFO L290 TraceCheckUtils]: 95: Hoare triple {22843#(<= 5 ~counter~0)} ~cond := #in~cond; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,217 INFO L290 TraceCheckUtils]: 96: Hoare triple {22843#(<= 5 ~counter~0)} assume !(0 == ~cond); {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,217 INFO L290 TraceCheckUtils]: 97: Hoare triple {22843#(<= 5 ~counter~0)} assume true; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,218 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {22843#(<= 5 ~counter~0)} {22843#(<= 5 ~counter~0)} #79#return; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,218 INFO L272 TraceCheckUtils]: 99: Hoare triple {22843#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,218 INFO L290 TraceCheckUtils]: 100: Hoare triple {22843#(<= 5 ~counter~0)} ~cond := #in~cond; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,219 INFO L290 TraceCheckUtils]: 101: Hoare triple {22843#(<= 5 ~counter~0)} assume !(0 == ~cond); {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,219 INFO L290 TraceCheckUtils]: 102: Hoare triple {22843#(<= 5 ~counter~0)} assume true; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,219 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {22843#(<= 5 ~counter~0)} {22843#(<= 5 ~counter~0)} #81#return; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,220 INFO L290 TraceCheckUtils]: 104: Hoare triple {22843#(<= 5 ~counter~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,220 INFO L290 TraceCheckUtils]: 105: Hoare triple {22843#(<= 5 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22883#(<= 5 |main_#t~post7|)} is VALID [2022-04-08 11:31:41,220 INFO L290 TraceCheckUtils]: 106: Hoare triple {22883#(<= 5 |main_#t~post7|)} assume !!(#t~post7 < 5);havoc #t~post7; {22558#false} is VALID [2022-04-08 11:31:41,220 INFO L272 TraceCheckUtils]: 107: Hoare triple {22558#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22558#false} is VALID [2022-04-08 11:31:41,220 INFO L290 TraceCheckUtils]: 108: Hoare triple {22558#false} ~cond := #in~cond; {22558#false} is VALID [2022-04-08 11:31:41,221 INFO L290 TraceCheckUtils]: 109: Hoare triple {22558#false} assume !(0 == ~cond); {22558#false} is VALID [2022-04-08 11:31:41,221 INFO L290 TraceCheckUtils]: 110: Hoare triple {22558#false} assume true; {22558#false} is VALID [2022-04-08 11:31:41,221 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {22558#false} {22558#false} #83#return; {22558#false} is VALID [2022-04-08 11:31:41,221 INFO L272 TraceCheckUtils]: 112: Hoare triple {22558#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22558#false} is VALID [2022-04-08 11:31:41,221 INFO L290 TraceCheckUtils]: 113: Hoare triple {22558#false} ~cond := #in~cond; {22558#false} is VALID [2022-04-08 11:31:41,221 INFO L290 TraceCheckUtils]: 114: Hoare triple {22558#false} assume !(0 == ~cond); {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 115: Hoare triple {22558#false} assume true; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {22558#false} {22558#false} #85#return; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L272 TraceCheckUtils]: 117: Hoare triple {22558#false} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 118: Hoare triple {22558#false} ~cond := #in~cond; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 119: Hoare triple {22558#false} assume !(0 == ~cond); {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 120: Hoare triple {22558#false} assume true; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {22558#false} {22558#false} #87#return; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 122: Hoare triple {22558#false} assume !!(~r~0 >= 2 * ~b~0); {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L272 TraceCheckUtils]: 123: Hoare triple {22558#false} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 124: Hoare triple {22558#false} ~cond := #in~cond; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 125: Hoare triple {22558#false} assume !(0 == ~cond); {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 126: Hoare triple {22558#false} assume true; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22558#false} {22558#false} #89#return; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 128: Hoare triple {22558#false} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22558#false} is VALID [2022-04-08 11:31:41,222 INFO L290 TraceCheckUtils]: 129: Hoare triple {22558#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L290 TraceCheckUtils]: 130: Hoare triple {22558#false} assume !(#t~post7 < 5);havoc #t~post7; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L290 TraceCheckUtils]: 131: Hoare triple {22558#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L290 TraceCheckUtils]: 132: Hoare triple {22558#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L290 TraceCheckUtils]: 133: Hoare triple {22558#false} assume !(#t~post6 < 5);havoc #t~post6; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L272 TraceCheckUtils]: 134: Hoare triple {22558#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L290 TraceCheckUtils]: 135: Hoare triple {22558#false} ~cond := #in~cond; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L290 TraceCheckUtils]: 136: Hoare triple {22558#false} assume 0 == ~cond; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L290 TraceCheckUtils]: 137: Hoare triple {22558#false} assume !false; {22558#false} is VALID [2022-04-08 11:31:41,223 INFO L134 CoverageAnalysis]: Checked inductivity of 782 backedges. 679 proven. 3 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-08 11:31:41,223 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:31:41,766 INFO L290 TraceCheckUtils]: 137: Hoare triple {22558#false} assume !false; {22558#false} is VALID [2022-04-08 11:31:41,766 INFO L290 TraceCheckUtils]: 136: Hoare triple {22558#false} assume 0 == ~cond; {22558#false} is VALID [2022-04-08 11:31:41,766 INFO L290 TraceCheckUtils]: 135: Hoare triple {22558#false} ~cond := #in~cond; {22558#false} is VALID [2022-04-08 11:31:41,766 INFO L272 TraceCheckUtils]: 134: Hoare triple {22558#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22558#false} is VALID [2022-04-08 11:31:41,766 INFO L290 TraceCheckUtils]: 133: Hoare triple {22558#false} assume !(#t~post6 < 5);havoc #t~post6; {22558#false} is VALID [2022-04-08 11:31:41,766 INFO L290 TraceCheckUtils]: 132: Hoare triple {22558#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22558#false} is VALID [2022-04-08 11:31:41,766 INFO L290 TraceCheckUtils]: 131: Hoare triple {22558#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {22558#false} is VALID [2022-04-08 11:31:41,766 INFO L290 TraceCheckUtils]: 130: Hoare triple {22558#false} assume !(#t~post7 < 5);havoc #t~post7; {22558#false} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 129: Hoare triple {22558#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22558#false} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 128: Hoare triple {22558#false} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22558#false} is VALID [2022-04-08 11:31:41,767 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22557#true} {22558#false} #89#return; {22558#false} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 126: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 125: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 124: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L272 TraceCheckUtils]: 123: Hoare triple {22558#false} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 122: Hoare triple {22558#false} assume !!(~r~0 >= 2 * ~b~0); {22558#false} is VALID [2022-04-08 11:31:41,767 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {22557#true} {22558#false} #87#return; {22558#false} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 120: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 119: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 118: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L272 TraceCheckUtils]: 117: Hoare triple {22558#false} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {22557#true} {22558#false} #85#return; {22558#false} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 115: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 114: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L290 TraceCheckUtils]: 113: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,767 INFO L272 TraceCheckUtils]: 112: Hoare triple {22558#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,768 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {22557#true} {22558#false} #83#return; {22558#false} is VALID [2022-04-08 11:31:41,768 INFO L290 TraceCheckUtils]: 110: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,768 INFO L290 TraceCheckUtils]: 109: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,768 INFO L290 TraceCheckUtils]: 108: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,768 INFO L272 TraceCheckUtils]: 107: Hoare triple {22558#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,768 INFO L290 TraceCheckUtils]: 106: Hoare triple {22883#(<= 5 |main_#t~post7|)} assume !!(#t~post7 < 5);havoc #t~post7; {22558#false} is VALID [2022-04-08 11:31:41,768 INFO L290 TraceCheckUtils]: 105: Hoare triple {22843#(<= 5 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22883#(<= 5 |main_#t~post7|)} is VALID [2022-04-08 11:31:41,768 INFO L290 TraceCheckUtils]: 104: Hoare triple {22843#(<= 5 ~counter~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,769 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {22557#true} {22843#(<= 5 ~counter~0)} #81#return; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,769 INFO L290 TraceCheckUtils]: 102: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,769 INFO L290 TraceCheckUtils]: 101: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,769 INFO L290 TraceCheckUtils]: 100: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,769 INFO L272 TraceCheckUtils]: 99: Hoare triple {22843#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,769 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {22557#true} {22843#(<= 5 ~counter~0)} #79#return; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,769 INFO L290 TraceCheckUtils]: 97: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,769 INFO L290 TraceCheckUtils]: 96: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,769 INFO L290 TraceCheckUtils]: 95: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,769 INFO L272 TraceCheckUtils]: 94: Hoare triple {22843#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,770 INFO L290 TraceCheckUtils]: 93: Hoare triple {22843#(<= 5 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,770 INFO L290 TraceCheckUtils]: 92: Hoare triple {22785#(<= 4 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22843#(<= 5 ~counter~0)} is VALID [2022-04-08 11:31:41,770 INFO L290 TraceCheckUtils]: 91: Hoare triple {22785#(<= 4 ~counter~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,771 INFO L290 TraceCheckUtils]: 90: Hoare triple {22785#(<= 4 ~counter~0)} assume !(~r~0 >= 2 * ~b~0); {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,771 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {22557#true} {22785#(<= 4 ~counter~0)} #87#return; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,771 INFO L290 TraceCheckUtils]: 88: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,771 INFO L290 TraceCheckUtils]: 87: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,771 INFO L290 TraceCheckUtils]: 86: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,771 INFO L272 TraceCheckUtils]: 85: Hoare triple {22785#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,771 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22557#true} {22785#(<= 4 ~counter~0)} #85#return; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,771 INFO L290 TraceCheckUtils]: 83: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L290 TraceCheckUtils]: 82: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L290 TraceCheckUtils]: 81: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L272 TraceCheckUtils]: 80: Hoare triple {22785#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {22557#true} {22785#(<= 4 ~counter~0)} #83#return; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,772 INFO L290 TraceCheckUtils]: 78: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L290 TraceCheckUtils]: 77: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L290 TraceCheckUtils]: 76: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L272 TraceCheckUtils]: 75: Hoare triple {22785#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,772 INFO L290 TraceCheckUtils]: 74: Hoare triple {22785#(<= 4 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,773 INFO L290 TraceCheckUtils]: 73: Hoare triple {22712#(<= 3 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22785#(<= 4 ~counter~0)} is VALID [2022-04-08 11:31:41,773 INFO L290 TraceCheckUtils]: 72: Hoare triple {22712#(<= 3 ~counter~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,773 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {22557#true} {22712#(<= 3 ~counter~0)} #89#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,773 INFO L290 TraceCheckUtils]: 70: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,773 INFO L290 TraceCheckUtils]: 69: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,773 INFO L290 TraceCheckUtils]: 68: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,773 INFO L272 TraceCheckUtils]: 67: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,773 INFO L290 TraceCheckUtils]: 66: Hoare triple {22712#(<= 3 ~counter~0)} assume !!(~r~0 >= 2 * ~b~0); {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,774 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {22557#true} {22712#(<= 3 ~counter~0)} #87#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,774 INFO L290 TraceCheckUtils]: 64: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,774 INFO L290 TraceCheckUtils]: 63: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,774 INFO L290 TraceCheckUtils]: 62: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,774 INFO L272 TraceCheckUtils]: 61: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,774 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22557#true} {22712#(<= 3 ~counter~0)} #85#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,774 INFO L290 TraceCheckUtils]: 59: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,774 INFO L290 TraceCheckUtils]: 58: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,774 INFO L290 TraceCheckUtils]: 57: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,774 INFO L272 TraceCheckUtils]: 56: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,775 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22557#true} {22712#(<= 3 ~counter~0)} #83#return; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,775 INFO L290 TraceCheckUtils]: 54: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,775 INFO L290 TraceCheckUtils]: 53: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,775 INFO L290 TraceCheckUtils]: 52: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,775 INFO L272 TraceCheckUtils]: 51: Hoare triple {22712#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,775 INFO L290 TraceCheckUtils]: 50: Hoare triple {22712#(<= 3 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,775 INFO L290 TraceCheckUtils]: 49: Hoare triple {22639#(<= 2 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22712#(<= 3 ~counter~0)} is VALID [2022-04-08 11:31:41,776 INFO L290 TraceCheckUtils]: 48: Hoare triple {22639#(<= 2 ~counter~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,776 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22557#true} {22639#(<= 2 ~counter~0)} #89#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,776 INFO L290 TraceCheckUtils]: 46: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,776 INFO L290 TraceCheckUtils]: 45: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,776 INFO L290 TraceCheckUtils]: 44: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,776 INFO L272 TraceCheckUtils]: 43: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,776 INFO L290 TraceCheckUtils]: 42: Hoare triple {22639#(<= 2 ~counter~0)} assume !!(~r~0 >= 2 * ~b~0); {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,777 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22557#true} {22639#(<= 2 ~counter~0)} #87#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,777 INFO L290 TraceCheckUtils]: 40: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,777 INFO L290 TraceCheckUtils]: 39: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,777 INFO L290 TraceCheckUtils]: 38: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,777 INFO L272 TraceCheckUtils]: 37: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,777 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22557#true} {22639#(<= 2 ~counter~0)} #85#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,777 INFO L290 TraceCheckUtils]: 35: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,777 INFO L290 TraceCheckUtils]: 34: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,777 INFO L290 TraceCheckUtils]: 33: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,777 INFO L272 TraceCheckUtils]: 32: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,778 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {22557#true} {22639#(<= 2 ~counter~0)} #83#return; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,778 INFO L290 TraceCheckUtils]: 30: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,778 INFO L290 TraceCheckUtils]: 29: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,778 INFO L290 TraceCheckUtils]: 28: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,778 INFO L272 TraceCheckUtils]: 27: Hoare triple {22639#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,778 INFO L290 TraceCheckUtils]: 26: Hoare triple {22639#(<= 2 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,778 INFO L290 TraceCheckUtils]: 25: Hoare triple {22599#(<= 1 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22639#(<= 2 ~counter~0)} is VALID [2022-04-08 11:31:41,779 INFO L290 TraceCheckUtils]: 24: Hoare triple {22599#(<= 1 ~counter~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,779 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22557#true} {22599#(<= 1 ~counter~0)} #81#return; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,779 INFO L290 TraceCheckUtils]: 22: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,779 INFO L290 TraceCheckUtils]: 21: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,779 INFO L290 TraceCheckUtils]: 20: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,779 INFO L272 TraceCheckUtils]: 19: Hoare triple {22599#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,779 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22557#true} {22599#(<= 1 ~counter~0)} #79#return; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,779 INFO L290 TraceCheckUtils]: 17: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,779 INFO L290 TraceCheckUtils]: 16: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,780 INFO L290 TraceCheckUtils]: 15: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,780 INFO L272 TraceCheckUtils]: 14: Hoare triple {22599#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,780 INFO L290 TraceCheckUtils]: 13: Hoare triple {22599#(<= 1 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,780 INFO L290 TraceCheckUtils]: 12: Hoare triple {22565#(<= 0 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22599#(<= 1 ~counter~0)} is VALID [2022-04-08 11:31:41,780 INFO L290 TraceCheckUtils]: 11: Hoare triple {22565#(<= 0 ~counter~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,780 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22557#true} {22565#(<= 0 ~counter~0)} #77#return; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,781 INFO L290 TraceCheckUtils]: 9: Hoare triple {22557#true} assume true; {22557#true} is VALID [2022-04-08 11:31:41,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {22557#true} assume !(0 == ~cond); {22557#true} is VALID [2022-04-08 11:31:41,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {22557#true} ~cond := #in~cond; {22557#true} is VALID [2022-04-08 11:31:41,781 INFO L272 TraceCheckUtils]: 6: Hoare triple {22565#(<= 0 ~counter~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22557#true} is VALID [2022-04-08 11:31:41,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {22565#(<= 0 ~counter~0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {22565#(<= 0 ~counter~0)} call #t~ret8 := main(); {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,781 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22565#(<= 0 ~counter~0)} {22557#true} #93#return; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {22565#(<= 0 ~counter~0)} assume true; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,782 INFO L290 TraceCheckUtils]: 1: Hoare triple {22557#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {22565#(<= 0 ~counter~0)} is VALID [2022-04-08 11:31:41,782 INFO L272 TraceCheckUtils]: 0: Hoare triple {22557#true} call ULTIMATE.init(); {22557#true} is VALID [2022-04-08 11:31:41,782 INFO L134 CoverageAnalysis]: Checked inductivity of 782 backedges. 95 proven. 3 refuted. 0 times theorem prover too weak. 684 trivial. 0 not checked. [2022-04-08 11:31:41,782 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:31:41,782 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2117705898] [2022-04-08 11:31:41,782 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:31:41,782 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [583457878] [2022-04-08 11:31:41,783 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [583457878] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:31:41,783 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:31:41,783 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 9 [2022-04-08 11:31:41,783 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:31:41,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1469971558] [2022-04-08 11:31:41,783 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1469971558] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:31:41,783 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:31:41,784 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 11:31:41,784 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1017896799] [2022-04-08 11:31:41,784 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:31:41,784 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 6.0) internal successors, (54), 8 states have internal predecessors, (54), 8 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) Word has length 138 [2022-04-08 11:31:41,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:31:41,784 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 6.0) internal successors, (54), 8 states have internal predecessors, (54), 8 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:31:41,884 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:41,885 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 11:31:41,885 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:41,885 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 11:31:41,885 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:31:41,885 INFO L87 Difference]: Start difference. First operand 211 states and 251 transitions. Second operand has 9 states, 9 states have (on average 6.0) internal successors, (54), 8 states have internal predecessors, (54), 8 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:31:42,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:42,544 INFO L93 Difference]: Finished difference Result 262 states and 303 transitions. [2022-04-08 11:31:42,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 11:31:42,544 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 6.0) internal successors, (54), 8 states have internal predecessors, (54), 8 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) Word has length 138 [2022-04-08 11:31:42,544 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:31:42,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 6.0) internal successors, (54), 8 states have internal predecessors, (54), 8 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:31:42,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 131 transitions. [2022-04-08 11:31:42,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 6.0) internal successors, (54), 8 states have internal predecessors, (54), 8 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:31:42,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 131 transitions. [2022-04-08 11:31:42,548 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 131 transitions. [2022-04-08 11:31:42,618 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:42,620 INFO L225 Difference]: With dead ends: 262 [2022-04-08 11:31:42,620 INFO L226 Difference]: Without dead ends: 139 [2022-04-08 11:31:42,621 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 276 GetRequests, 267 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=51, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:31:42,621 INFO L913 BasicCegarLoop]: 91 mSDtfsCounter, 44 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 81 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 228 SdHoareTripleChecker+Invalid, 126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 81 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:31:42,621 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 228 Invalid, 126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 81 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:31:42,621 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2022-04-08 11:31:42,783 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 139. [2022-04-08 11:31:42,783 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:31:42,783 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand has 139 states, 94 states have (on average 1.0) internal successors, (94), 94 states have internal predecessors, (94), 23 states have call successors, (23), 23 states have call predecessors, (23), 21 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:31:42,783 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand has 139 states, 94 states have (on average 1.0) internal successors, (94), 94 states have internal predecessors, (94), 23 states have call successors, (23), 23 states have call predecessors, (23), 21 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:31:42,784 INFO L87 Difference]: Start difference. First operand 139 states. Second operand has 139 states, 94 states have (on average 1.0) internal successors, (94), 94 states have internal predecessors, (94), 23 states have call successors, (23), 23 states have call predecessors, (23), 21 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:31:42,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:42,786 INFO L93 Difference]: Finished difference Result 139 states and 138 transitions. [2022-04-08 11:31:42,786 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 138 transitions. [2022-04-08 11:31:42,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:42,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:42,799 INFO L74 IsIncluded]: Start isIncluded. First operand has 139 states, 94 states have (on average 1.0) internal successors, (94), 94 states have internal predecessors, (94), 23 states have call successors, (23), 23 states have call predecessors, (23), 21 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 139 states. [2022-04-08 11:31:42,800 INFO L87 Difference]: Start difference. First operand has 139 states, 94 states have (on average 1.0) internal successors, (94), 94 states have internal predecessors, (94), 23 states have call successors, (23), 23 states have call predecessors, (23), 21 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 139 states. [2022-04-08 11:31:42,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:42,802 INFO L93 Difference]: Finished difference Result 139 states and 138 transitions. [2022-04-08 11:31:42,802 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 138 transitions. [2022-04-08 11:31:42,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:42,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:42,802 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:31:42,802 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:31:42,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 139 states, 94 states have (on average 1.0) internal successors, (94), 94 states have internal predecessors, (94), 23 states have call successors, (23), 23 states have call predecessors, (23), 21 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 11:31:42,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 138 transitions. [2022-04-08 11:31:42,805 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 138 transitions. Word has length 138 [2022-04-08 11:31:42,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:31:42,805 INFO L478 AbstractCegarLoop]: Abstraction has 139 states and 138 transitions. [2022-04-08 11:31:42,805 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 6.0) internal successors, (54), 8 states have internal predecessors, (54), 8 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:31:42,805 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 139 states and 138 transitions. [2022-04-08 11:31:42,983 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:42,983 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 138 transitions. [2022-04-08 11:31:42,983 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 139 [2022-04-08 11:31:42,983 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:31:42,984 INFO L499 BasicCegarLoop]: trace histogram [20, 19, 19, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 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] [2022-04-08 11:31:43,017 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-08 11:31:43,184 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-08 11:31:43,184 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:31:43,184 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:31:43,184 INFO L85 PathProgramCache]: Analyzing trace with hash -2135555120, now seen corresponding path program 9 times [2022-04-08 11:31:43,185 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:43,185 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [149271095] [2022-04-08 11:32:23,001 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:32:23,001 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:32:23,001 INFO L85 PathProgramCache]: Analyzing trace with hash -2135555120, now seen corresponding path program 10 times [2022-04-08 11:32:23,001 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:32:23,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1753827001] [2022-04-08 11:32:23,002 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:32:23,002 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:32:23,044 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:32:23,044 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2099257130] [2022-04-08 11:32:23,044 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:32:23,044 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:32:23,044 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:32:23,046 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:32:23,046 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-08 11:32:23,117 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:32:23,117 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:32:23,119 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 46 conjunts are in the unsatisfiable core [2022-04-08 11:32:23,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:32:23,139 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:33:17,099 INFO L272 TraceCheckUtils]: 0: Hoare triple {24475#true} call ULTIMATE.init(); {24475#true} is VALID [2022-04-08 11:33:17,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {24475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24475#true} is VALID [2022-04-08 11:33:17,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24475#true} {24475#true} #93#return; {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L272 TraceCheckUtils]: 4: Hoare triple {24475#true} call #t~ret8 := main(); {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L290 TraceCheckUtils]: 5: Hoare triple {24475#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L272 TraceCheckUtils]: 6: Hoare triple {24475#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L290 TraceCheckUtils]: 7: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L290 TraceCheckUtils]: 8: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L290 TraceCheckUtils]: 9: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24475#true} {24475#true} #77#return; {24475#true} is VALID [2022-04-08 11:33:17,100 INFO L290 TraceCheckUtils]: 11: Hoare triple {24475#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,101 INFO L290 TraceCheckUtils]: 12: Hoare triple {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,101 INFO L290 TraceCheckUtils]: 13: Hoare triple {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,101 INFO L272 TraceCheckUtils]: 14: Hoare triple {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,101 INFO L290 TraceCheckUtils]: 17: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,102 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {24475#true} {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,102 INFO L272 TraceCheckUtils]: 19: Hoare triple {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,102 INFO L290 TraceCheckUtils]: 21: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,102 INFO L290 TraceCheckUtils]: 22: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,102 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {24475#true} {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,103 INFO L290 TraceCheckUtils]: 24: Hoare triple {24513#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {24553#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,106 INFO L290 TraceCheckUtils]: 25: Hoare triple {24553#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24553#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,107 INFO L290 TraceCheckUtils]: 26: Hoare triple {24553#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {24553#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,107 INFO L272 TraceCheckUtils]: 27: Hoare triple {24553#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,107 INFO L290 TraceCheckUtils]: 28: Hoare triple {24475#true} ~cond := #in~cond; {24566#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:33:17,107 INFO L290 TraceCheckUtils]: 29: Hoare triple {24566#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:33:17,108 INFO L290 TraceCheckUtils]: 30: Hoare triple {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:33:17,108 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} {24553#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:33:17,108 INFO L272 TraceCheckUtils]: 32: Hoare triple {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,108 INFO L290 TraceCheckUtils]: 33: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,108 INFO L290 TraceCheckUtils]: 34: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,109 INFO L290 TraceCheckUtils]: 35: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,109 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24475#true} {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #85#return; {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:33:17,109 INFO L272 TraceCheckUtils]: 37: Hoare triple {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,109 INFO L290 TraceCheckUtils]: 38: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,109 INFO L290 TraceCheckUtils]: 39: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,109 INFO L290 TraceCheckUtils]: 40: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,110 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24475#true} {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #87#return; {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:33:17,110 INFO L290 TraceCheckUtils]: 42: Hoare triple {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !!(~r~0 >= 2 * ~b~0); {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:33:17,110 INFO L272 TraceCheckUtils]: 43: Hoare triple {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,110 INFO L290 TraceCheckUtils]: 44: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,110 INFO L290 TraceCheckUtils]: 45: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,110 INFO L290 TraceCheckUtils]: 46: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,111 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {24475#true} {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #89#return; {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:33:17,115 INFO L290 TraceCheckUtils]: 48: Hoare triple {24577#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,115 INFO L290 TraceCheckUtils]: 49: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,116 INFO L290 TraceCheckUtils]: 50: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,116 INFO L272 TraceCheckUtils]: 51: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,116 INFO L290 TraceCheckUtils]: 52: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,116 INFO L290 TraceCheckUtils]: 53: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,116 INFO L290 TraceCheckUtils]: 54: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,117 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {24475#true} {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} #83#return; {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,117 INFO L272 TraceCheckUtils]: 56: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,117 INFO L290 TraceCheckUtils]: 57: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,117 INFO L290 TraceCheckUtils]: 58: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,133 INFO L290 TraceCheckUtils]: 59: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,136 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {24475#true} {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} #85#return; {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,137 INFO L272 TraceCheckUtils]: 61: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,137 INFO L290 TraceCheckUtils]: 62: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,137 INFO L290 TraceCheckUtils]: 63: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,137 INFO L290 TraceCheckUtils]: 64: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,137 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {24475#true} {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} #87#return; {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,138 INFO L290 TraceCheckUtils]: 66: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,138 INFO L272 TraceCheckUtils]: 67: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,138 INFO L290 TraceCheckUtils]: 68: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,138 INFO L290 TraceCheckUtils]: 69: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,138 INFO L290 TraceCheckUtils]: 70: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,138 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {24475#true} {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} #89#return; {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,148 INFO L290 TraceCheckUtils]: 72: Hoare triple {24629#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= (* (div (- main_~a~0) (- 2)) main_~y~0) main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,149 INFO L290 TraceCheckUtils]: 73: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,150 INFO L290 TraceCheckUtils]: 74: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,150 INFO L272 TraceCheckUtils]: 75: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,150 INFO L290 TraceCheckUtils]: 76: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,150 INFO L290 TraceCheckUtils]: 77: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,150 INFO L290 TraceCheckUtils]: 78: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,150 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {24475#true} {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} #83#return; {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,150 INFO L272 TraceCheckUtils]: 80: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,150 INFO L290 TraceCheckUtils]: 81: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,150 INFO L290 TraceCheckUtils]: 82: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,151 INFO L290 TraceCheckUtils]: 83: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,151 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {24475#true} {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} #85#return; {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,151 INFO L272 TraceCheckUtils]: 85: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,151 INFO L290 TraceCheckUtils]: 86: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,151 INFO L290 TraceCheckUtils]: 87: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,151 INFO L290 TraceCheckUtils]: 88: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,152 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {24475#true} {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} #87#return; {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,152 INFO L290 TraceCheckUtils]: 90: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,152 INFO L272 TraceCheckUtils]: 91: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,152 INFO L290 TraceCheckUtils]: 92: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,153 INFO L290 TraceCheckUtils]: 93: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,153 INFO L290 TraceCheckUtils]: 94: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,153 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {24475#true} {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} #89#return; {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} is VALID [2022-04-08 11:33:17,162 INFO L290 TraceCheckUtils]: 96: Hoare triple {24702#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= main_~y~0 (* (div (- (div (- main_~a~0) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} is VALID [2022-04-08 11:33:17,163 INFO L290 TraceCheckUtils]: 97: Hoare triple {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} is VALID [2022-04-08 11:33:17,164 INFO L290 TraceCheckUtils]: 98: Hoare triple {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} assume !!(#t~post7 < 5);havoc #t~post7; {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} is VALID [2022-04-08 11:33:17,164 INFO L272 TraceCheckUtils]: 99: Hoare triple {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,164 INFO L290 TraceCheckUtils]: 100: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,164 INFO L290 TraceCheckUtils]: 101: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,164 INFO L290 TraceCheckUtils]: 102: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,164 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {24475#true} {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} #83#return; {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} is VALID [2022-04-08 11:33:17,164 INFO L272 TraceCheckUtils]: 104: Hoare triple {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,164 INFO L290 TraceCheckUtils]: 105: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,165 INFO L290 TraceCheckUtils]: 106: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,165 INFO L290 TraceCheckUtils]: 107: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,165 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {24475#true} {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} #85#return; {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} is VALID [2022-04-08 11:33:17,165 INFO L272 TraceCheckUtils]: 109: Hoare triple {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,165 INFO L290 TraceCheckUtils]: 110: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,165 INFO L290 TraceCheckUtils]: 111: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,165 INFO L290 TraceCheckUtils]: 112: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,166 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {24475#true} {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} #87#return; {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} is VALID [2022-04-08 11:33:17,166 INFO L290 TraceCheckUtils]: 114: Hoare triple {24775#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} assume !(~r~0 >= 2 * ~b~0); {24830#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} is VALID [2022-04-08 11:33:17,174 INFO L290 TraceCheckUtils]: 115: Hoare triple {24830#(and (= (* main_~y~0 8) main_~b~0) (= (mod main_~a~0 2) 0) (= (mod (div (- (div main_~a~0 2)) (- 2)) 2) 0) (= main_~x~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= (mod (div main_~a~0 2) 2) 0) (= main_~y~0 (* main_~y~0 (div (- (div (- (div main_~a~0 2)) (- 2))) (- 2)))) (= main_~q~0 0) (<= (div (* (- 1) (div (* (- 1) (div main_~a~0 2)) (- 2))) (- 2)) 1))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} is VALID [2022-04-08 11:33:17,175 INFO L290 TraceCheckUtils]: 116: Hoare triple {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} is VALID [2022-04-08 11:33:17,175 INFO L290 TraceCheckUtils]: 117: Hoare triple {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} is VALID [2022-04-08 11:33:17,175 INFO L272 TraceCheckUtils]: 118: Hoare triple {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,176 INFO L290 TraceCheckUtils]: 119: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:17,176 INFO L290 TraceCheckUtils]: 120: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:17,176 INFO L290 TraceCheckUtils]: 121: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:17,176 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {24475#true} {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} #79#return; {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} is VALID [2022-04-08 11:33:17,176 INFO L272 TraceCheckUtils]: 123: Hoare triple {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:17,177 INFO L290 TraceCheckUtils]: 124: Hoare triple {24475#true} ~cond := #in~cond; {24566#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:33:17,177 INFO L290 TraceCheckUtils]: 125: Hoare triple {24566#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:33:17,177 INFO L290 TraceCheckUtils]: 126: Hoare triple {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:33:17,178 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} #81#return; {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} is VALID [2022-04-08 11:33:17,178 INFO L290 TraceCheckUtils]: 128: Hoare triple {24834#(and (<= (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (= (mod (div main_~q~0 2) 2) 0) (= main_~y~0 (* (div (- (div (- (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod main_~q~0 2) 0) (not (<= (* main_~y~0 8) main_~r~0)))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {24874#(and (= main_~a~0 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div main_~q~0 2) 2) 0) (= (mod main_~q~0 2) 0) (< main_~r~0 (* main_~y~0 8)))} is VALID [2022-04-08 11:33:17,179 INFO L290 TraceCheckUtils]: 129: Hoare triple {24874#(and (= main_~a~0 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div main_~q~0 2) 2) 0) (= (mod main_~q~0 2) 0) (< main_~r~0 (* main_~y~0 8)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24874#(and (= main_~a~0 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div main_~q~0 2) 2) 0) (= (mod main_~q~0 2) 0) (< main_~r~0 (* main_~y~0 8)))} is VALID [2022-04-08 11:33:17,179 INFO L290 TraceCheckUtils]: 130: Hoare triple {24874#(and (= main_~a~0 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div main_~q~0 2) 2) 0) (= (mod main_~q~0 2) 0) (< main_~r~0 (* main_~y~0 8)))} assume !(#t~post7 < 5);havoc #t~post7; {24874#(and (= main_~a~0 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div main_~q~0 2) 2) 0) (= (mod main_~q~0 2) 0) (< main_~r~0 (* main_~y~0 8)))} is VALID [2022-04-08 11:33:17,186 INFO L290 TraceCheckUtils]: 131: Hoare triple {24874#(and (= main_~a~0 1) (= (mod (div (- (div main_~q~0 2)) (- 2)) 2) 0) (= main_~x~0 (+ (* main_~y~0 8) main_~r~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div main_~q~0 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div main_~q~0 2) 2) 0) (= (mod main_~q~0 2) 0) (< main_~r~0 (* main_~y~0 8)))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {24884#(and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) (<= 0 main_~r~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div (+ (- 1) main_~q~0) 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- (div (+ (- 1) main_~q~0) 2)) (- 2)) 2) 0) (= (mod (div (+ (- 1) main_~q~0) 2) 2) 0) (= (mod (+ main_~q~0 1) 2) 0))} is VALID [2022-04-08 11:33:17,187 INFO L290 TraceCheckUtils]: 132: Hoare triple {24884#(and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) (<= 0 main_~r~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div (+ (- 1) main_~q~0) 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- (div (+ (- 1) main_~q~0) 2)) (- 2)) 2) 0) (= (mod (div (+ (- 1) main_~q~0) 2) 2) 0) (= (mod (+ main_~q~0 1) 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24884#(and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) (<= 0 main_~r~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div (+ (- 1) main_~q~0) 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- (div (+ (- 1) main_~q~0) 2)) (- 2)) 2) 0) (= (mod (div (+ (- 1) main_~q~0) 2) 2) 0) (= (mod (+ main_~q~0 1) 2) 0))} is VALID [2022-04-08 11:33:17,187 INFO L290 TraceCheckUtils]: 133: Hoare triple {24884#(and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) (<= 0 main_~r~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div (+ (- 1) main_~q~0) 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- (div (+ (- 1) main_~q~0) 2)) (- 2)) 2) 0) (= (mod (div (+ (- 1) main_~q~0) 2) 2) 0) (= (mod (+ main_~q~0 1) 2) 0))} assume !(#t~post6 < 5);havoc #t~post6; {24884#(and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) (<= 0 main_~r~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div (+ (- 1) main_~q~0) 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- (div (+ (- 1) main_~q~0) 2)) (- 2)) 2) 0) (= (mod (div (+ (- 1) main_~q~0) 2) 2) 0) (= (mod (+ main_~q~0 1) 2) 0))} is VALID [2022-04-08 11:33:17,192 INFO L272 TraceCheckUtils]: 134: Hoare triple {24884#(and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) (<= 0 main_~r~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) (div (+ (- 1) main_~q~0) 2)) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- (div (+ (- 1) main_~q~0) 2)) (- 2)) 2) 0) (= (mod (div (+ (- 1) main_~q~0) 2) 2) 0) (= (mod (+ main_~q~0 1) 2) 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24894#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:33:17,193 INFO L290 TraceCheckUtils]: 135: Hoare triple {24894#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {24898#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:33:17,193 INFO L290 TraceCheckUtils]: 136: Hoare triple {24898#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24476#false} is VALID [2022-04-08 11:33:17,193 INFO L290 TraceCheckUtils]: 137: Hoare triple {24476#false} assume !false; {24476#false} is VALID [2022-04-08 11:33:17,194 INFO L134 CoverageAnalysis]: Checked inductivity of 782 backedges. 93 proven. 107 refuted. 0 times theorem prover too weak. 582 trivial. 0 not checked. [2022-04-08 11:33:17,194 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:33:28,285 INFO L290 TraceCheckUtils]: 137: Hoare triple {24476#false} assume !false; {24476#false} is VALID [2022-04-08 11:33:28,285 INFO L290 TraceCheckUtils]: 136: Hoare triple {24898#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24476#false} is VALID [2022-04-08 11:33:28,286 INFO L290 TraceCheckUtils]: 135: Hoare triple {24894#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {24898#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:33:28,286 INFO L272 TraceCheckUtils]: 134: Hoare triple {24914#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24894#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:33:28,287 INFO L290 TraceCheckUtils]: 133: Hoare triple {24914#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(#t~post6 < 5);havoc #t~post6; {24914#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:33:28,287 INFO L290 TraceCheckUtils]: 132: Hoare triple {24914#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24914#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:33:28,295 INFO L290 TraceCheckUtils]: 131: Hoare triple {24924#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {24914#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:33:28,295 INFO L290 TraceCheckUtils]: 130: Hoare triple {24924#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(#t~post7 < 5);havoc #t~post7; {24924#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:33:28,296 INFO L290 TraceCheckUtils]: 129: Hoare triple {24924#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24924#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:33:28,296 INFO L290 TraceCheckUtils]: 128: Hoare triple {24934#(or (not (<= main_~y~0 main_~r~0)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {24924#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:33:28,297 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} {24475#true} #81#return; {24934#(or (not (<= main_~y~0 main_~r~0)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-08 11:33:28,297 INFO L290 TraceCheckUtils]: 126: Hoare triple {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:33:28,297 INFO L290 TraceCheckUtils]: 125: Hoare triple {24947#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {24570#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 124: Hoare triple {24475#true} ~cond := #in~cond; {24947#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:33:28,298 INFO L272 TraceCheckUtils]: 123: Hoare triple {24475#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {24475#true} {24475#true} #79#return; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 121: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 120: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 119: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L272 TraceCheckUtils]: 118: Hoare triple {24475#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 117: Hoare triple {24475#true} assume !!(#t~post6 < 5);havoc #t~post6; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 116: Hoare triple {24475#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 115: Hoare triple {24475#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 114: Hoare triple {24475#true} assume !(~r~0 >= 2 * ~b~0); {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {24475#true} {24475#true} #87#return; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 112: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 111: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,298 INFO L290 TraceCheckUtils]: 110: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L272 TraceCheckUtils]: 109: Hoare triple {24475#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {24475#true} {24475#true} #85#return; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 107: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 106: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 105: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L272 TraceCheckUtils]: 104: Hoare triple {24475#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {24475#true} {24475#true} #83#return; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 102: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 101: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 100: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L272 TraceCheckUtils]: 99: Hoare triple {24475#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 98: Hoare triple {24475#true} assume !!(#t~post7 < 5);havoc #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 97: Hoare triple {24475#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 96: Hoare triple {24475#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {24475#true} {24475#true} #89#return; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 94: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 93: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L290 TraceCheckUtils]: 92: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,299 INFO L272 TraceCheckUtils]: 91: Hoare triple {24475#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 90: Hoare triple {24475#true} assume !!(~r~0 >= 2 * ~b~0); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {24475#true} {24475#true} #87#return; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 88: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 87: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 86: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L272 TraceCheckUtils]: 85: Hoare triple {24475#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {24475#true} {24475#true} #85#return; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 83: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 82: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 81: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L272 TraceCheckUtils]: 80: Hoare triple {24475#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {24475#true} {24475#true} #83#return; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 78: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 77: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 76: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L272 TraceCheckUtils]: 75: Hoare triple {24475#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 74: Hoare triple {24475#true} assume !!(#t~post7 < 5);havoc #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 73: Hoare triple {24475#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,300 INFO L290 TraceCheckUtils]: 72: Hoare triple {24475#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {24475#true} {24475#true} #89#return; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 70: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 69: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 68: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L272 TraceCheckUtils]: 67: Hoare triple {24475#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 66: Hoare triple {24475#true} assume !!(~r~0 >= 2 * ~b~0); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {24475#true} {24475#true} #87#return; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 64: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 63: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 62: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L272 TraceCheckUtils]: 61: Hoare triple {24475#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {24475#true} {24475#true} #85#return; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 59: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 58: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 57: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L272 TraceCheckUtils]: 56: Hoare triple {24475#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {24475#true} {24475#true} #83#return; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 54: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 53: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,301 INFO L290 TraceCheckUtils]: 52: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,302 INFO L272 TraceCheckUtils]: 51: Hoare triple {24475#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,302 INFO L290 TraceCheckUtils]: 50: Hoare triple {24475#true} assume !!(#t~post7 < 5);havoc #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,302 INFO L290 TraceCheckUtils]: 49: Hoare triple {24475#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,302 INFO L290 TraceCheckUtils]: 48: Hoare triple {24475#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {24475#true} is VALID [2022-04-08 11:33:28,302 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {24475#true} {24475#true} #89#return; {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L290 TraceCheckUtils]: 46: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L290 TraceCheckUtils]: 45: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L290 TraceCheckUtils]: 44: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L272 TraceCheckUtils]: 43: Hoare triple {24475#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L290 TraceCheckUtils]: 42: Hoare triple {24475#true} assume !!(~r~0 >= 2 * ~b~0); {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24475#true} {24475#true} #87#return; {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L290 TraceCheckUtils]: 40: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,311 INFO L290 TraceCheckUtils]: 39: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 38: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L272 TraceCheckUtils]: 37: Hoare triple {24475#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24475#true} {24475#true} #85#return; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 35: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 34: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 33: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L272 TraceCheckUtils]: 32: Hoare triple {24475#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24475#true} {24475#true} #83#return; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 30: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 29: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 28: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L272 TraceCheckUtils]: 27: Hoare triple {24475#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 26: Hoare triple {24475#true} assume !!(#t~post7 < 5);havoc #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 25: Hoare triple {24475#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 24: Hoare triple {24475#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {24475#true} {24475#true} #81#return; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 22: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,312 INFO L290 TraceCheckUtils]: 21: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 20: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L272 TraceCheckUtils]: 19: Hoare triple {24475#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {24475#true} {24475#true} #79#return; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 17: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 16: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 15: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L272 TraceCheckUtils]: 14: Hoare triple {24475#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 13: Hoare triple {24475#true} assume !!(#t~post6 < 5);havoc #t~post6; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 12: Hoare triple {24475#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 11: Hoare triple {24475#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24475#true} {24475#true} #77#return; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 9: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 8: Hoare triple {24475#true} assume !(0 == ~cond); {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 7: Hoare triple {24475#true} ~cond := #in~cond; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L272 TraceCheckUtils]: 6: Hoare triple {24475#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 5: Hoare triple {24475#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L272 TraceCheckUtils]: 4: Hoare triple {24475#true} call #t~ret8 := main(); {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24475#true} {24475#true} #93#return; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 2: Hoare triple {24475#true} assume true; {24475#true} is VALID [2022-04-08 11:33:28,313 INFO L290 TraceCheckUtils]: 1: Hoare triple {24475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24475#true} is VALID [2022-04-08 11:33:28,314 INFO L272 TraceCheckUtils]: 0: Hoare triple {24475#true} call ULTIMATE.init(); {24475#true} is VALID [2022-04-08 11:33:28,314 INFO L134 CoverageAnalysis]: Checked inductivity of 782 backedges. 105 proven. 1 refuted. 0 times theorem prover too weak. 676 trivial. 0 not checked. [2022-04-08 11:33:28,314 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:33:28,314 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1753827001] [2022-04-08 11:33:28,314 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:33:28,314 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2099257130] [2022-04-08 11:33:28,314 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2099257130] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:33:28,314 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:33:28,314 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 9] total 20 [2022-04-08 11:33:28,315 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:33:28,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [149271095] [2022-04-08 11:33:28,315 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [149271095] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:33:28,315 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:33:28,315 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 11:33:28,315 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1532372650] [2022-04-08 11:33:28,315 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:33:28,315 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.6875) internal successors, (43), 15 states have internal predecessors, (43), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) Word has length 138 [2022-04-08 11:33:28,315 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:33:28,316 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.6875) internal successors, (43), 15 states have internal predecessors, (43), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:33:28,497 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:33:28,497 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 11:33:28,497 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:33:28,497 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 11:33:28,497 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=303, Unknown=0, NotChecked=0, Total=380 [2022-04-08 11:33:28,497 INFO L87 Difference]: Start difference. First operand 139 states and 138 transitions. Second operand has 16 states, 16 states have (on average 2.6875) internal successors, (43), 15 states have internal predecessors, (43), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:33:35,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:33:35,159 INFO L93 Difference]: Finished difference Result 139 states and 138 transitions. [2022-04-08 11:33:35,159 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 11:33:35,159 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.6875) internal successors, (43), 15 states have internal predecessors, (43), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) Word has length 138 [2022-04-08 11:33:35,159 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:33:35,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.6875) internal successors, (43), 15 states have internal predecessors, (43), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:33:35,161 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 86 transitions. [2022-04-08 11:33:35,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.6875) internal successors, (43), 15 states have internal predecessors, (43), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:33:35,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 86 transitions. [2022-04-08 11:33:35,162 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 86 transitions. [2022-04-08 11:33:35,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:33:35,376 INFO L225 Difference]: With dead ends: 139 [2022-04-08 11:33:35,376 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 11:33:35,377 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 277 GetRequests, 255 SyntacticMatches, 2 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 120 ImplicationChecksByTransitivity, 1.3s TimeCoverageRelationStatistics Valid=90, Invalid=372, Unknown=0, NotChecked=0, Total=462 [2022-04-08 11:33:35,377 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 26 mSDsluCounter, 265 mSDsCounter, 0 mSdLazyCounter, 518 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 316 SdHoareTripleChecker+Invalid, 558 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 518 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-08 11:33:35,377 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 316 Invalid, 558 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 518 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-08 11:33:35,378 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 11:33:35,378 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 11:33:35,378 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:33:35,378 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:33:35,378 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:33:35,378 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:33:35,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:33:35,378 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:33:35,378 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:33:35,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:33:35,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:33:35,378 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 11:33:35,378 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 11:33:35,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:33:35,378 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:33:35,378 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:33:35,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:33:35,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:33:35,379 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:33:35,379 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:33:35,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:33:35,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 11:33:35,379 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 138 [2022-04-08 11:33:35,379 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:33:35,379 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 11:33:35,379 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.6875) internal successors, (43), 15 states have internal predecessors, (43), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:33:35,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-08 11:33:35,379 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:33:35,379 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:33:35,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:33:35,381 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 11:33:35,402 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-08 11:33:35,591 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-08 11:33:35,593 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 11:34:00,796 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-08 11:34:00,797 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-08 11:34:00,797 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-08 11:34:00,797 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-08 11:34:00,797 INFO L878 garLoopResultBuilder]: At program point L12(line 12) the Hoare annotation is: (or (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) (not (<= 0 ~counter~0)) (not (<= ~counter~0 0))) [2022-04-08 11:34:00,797 INFO L878 garLoopResultBuilder]: At program point L12-2(lines 11 13) the Hoare annotation is: (or (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) (not (<= 0 ~counter~0)) (not (<= ~counter~0 0))) [2022-04-08 11:34:00,797 INFO L878 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 11 13) the Hoare annotation is: (or (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) (not (<= 0 ~counter~0)) (not (<= ~counter~0 0))) [2022-04-08 11:34:00,798 INFO L878 garLoopResultBuilder]: At program point L37-4(lines 37 61) the Hoare annotation is: (let ((.cse5 (<= 0 main_~r~0)) (.cse2 (= (mod (+ main_~q~0 1) 2) 0)) (.cse4 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)) (.cse6 (<= 1 main_~y~0)) (.cse3 (= main_~b~0 (* main_~a~0 main_~y~0)))) (or (let ((.cse1 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (let ((.cse0 (* 2 .cse1))) (and (= main_~x~0 (+ main_~y~0 main_~r~0 .cse0)) (= (* main_~y~0 2) .cse1) (< main_~x~0 (* 4 .cse1)) (<= (+ main_~y~0 .cse0) main_~x~0) .cse2 .cse3))) (and .cse4 .cse5 (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0) .cse3) (and (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse6 .cse3) (not (<= |old(~counter~0)| 0)) (and (= main_~x~0 main_~r~0) (= main_~q~0 0)) (let ((.cse7 (div (+ (- 1) main_~q~0) 2))) (and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) .cse5 (<= 6 ~counter~0) (= main_~y~0 (* (div (* (- 1) (div (* (- 1) .cse7) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- .cse7) (- 2)) 2) 0) (= (mod .cse7 2) 0) .cse2 .cse3)) (and .cse4 (= (mod main_~q~0 2) 0) .cse6 .cse3) (not (<= 0 |old(~counter~0)|)))) [2022-04-08 11:34:00,798 INFO L885 garLoopResultBuilder]: At program point mainEXIT(lines 23 65) the Hoare annotation is: true [2022-04-08 11:34:00,798 INFO L878 garLoopResultBuilder]: At program point L54(line 54) the Hoare annotation is: (let ((.cse6 (* main_~a~0 main_~y~0))) (let ((.cse0 (= main_~x~0 main_~r~0)) (.cse1 (<= (* 2 .cse6) main_~r~0)) (.cse2 (<= 1 main_~r~0)) (.cse3 (= main_~q~0 0)) (.cse4 (<= 1 main_~y~0)) (.cse5 (= main_~b~0 .cse6))) (or (and .cse0 .cse1 (= main_~b~0 (* main_~y~0 4)) .cse2 .cse3 (<= 4 ~counter~0) .cse4 .cse5) (not (<= |old(~counter~0)| 0)) (and (<= 2 ~counter~0) .cse0 .cse1 (= main_~b~0 main_~y~0) .cse3 .cse4 .cse5 (<= ~counter~0 2)) (and .cse0 (<= ~counter~0 3) .cse1 .cse3 (= main_~a~0 2) .cse4 .cse5 (<= 3 ~counter~0)) (not (<= 0 |old(~counter~0)|)) (and (= (mod main_~a~0 2) 0) .cse0 .cse1 .cse2 .cse3 (<= 5 ~counter~0) .cse4 .cse5)))) [2022-04-08 11:34:00,798 INFO L878 garLoopResultBuilder]: At program point L54-1(line 54) the Hoare annotation is: (let ((.cse7 (* main_~a~0 main_~y~0))) (let ((.cse6 (= (mod main_~a~0 2) 0)) (.cse0 (= main_~x~0 main_~r~0)) (.cse1 (<= (* 2 .cse7) main_~r~0)) (.cse2 (<= 1 main_~r~0)) (.cse3 (= main_~q~0 0)) (.cse4 (<= 1 main_~y~0)) (.cse5 (= main_~b~0 .cse7))) (or (and (<= 2 ~counter~0) .cse0 .cse1 .cse2 (= main_~b~0 main_~y~0) .cse3 .cse4 .cse5 (<= ~counter~0 2)) (not (<= |old(~counter~0)| 0)) (and .cse0 (<= ~counter~0 3) .cse1 .cse2 .cse3 (= main_~a~0 2) .cse4 .cse5 (<= 3 ~counter~0)) (and .cse6 .cse0 .cse1 (= main_~b~0 (* main_~y~0 4)) .cse2 .cse3 (<= 4 ~counter~0) .cse4 .cse5) (not (<= 0 |old(~counter~0)|)) (and .cse6 .cse0 .cse1 .cse2 .cse3 (<= 5 ~counter~0) .cse4 .cse5)))) [2022-04-08 11:34:00,798 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (let ((.cse0 (= main_~b~0 main_~y~0)) (.cse3 (= main_~x~0 main_~r~0)) (.cse4 (<= 1 main_~r~0)) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse1 (= main_~b~0 (* main_~a~0 main_~y~0)))) (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) .cse0 (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)) .cse1) (not (<= |old(~counter~0)| 0)) (let ((.cse2 (div main_~a~0 2))) (and (= (mod main_~a~0 2) 0) (= (mod (div (- .cse2) (- 2)) 2) 0) .cse3 (= (mod .cse2 2) 0) .cse4 (= main_~y~0 (* main_~y~0 (div (* (- 1) (div (* (- 1) .cse2) (- 2))) (- 2)))) .cse5 (<= 5 ~counter~0) .cse6 .cse1)) (and (<= 2 ~counter~0) .cse3 .cse4 .cse0 .cse5 .cse6 .cse1 (<= ~counter~0 2)) (and .cse3 (<= ~counter~0 4) .cse4 .cse5 (<= 4 ~counter~0) .cse6 .cse1 (= main_~a~0 4)) (and .cse3 (<= ~counter~0 3) .cse4 .cse5 (= main_~a~0 2) .cse6 .cse1 (<= 3 ~counter~0)) (not (<= 0 |old(~counter~0)|)))) [2022-04-08 11:34:00,798 INFO L878 garLoopResultBuilder]: At program point L46-1(lines 46 58) the Hoare annotation is: (let ((.cse13 (* main_~y~0 4)) (.cse8 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)) (.cse15 (div (* (- 1) main_~q~0) (- 2))) (.cse4 (<= 1 main_~r~0)) (.cse6 (<= 1 main_~y~0)) (.cse7 (= main_~b~0 (* main_~a~0 main_~y~0)))) (let ((.cse0 (= (mod main_~a~0 2) 0)) (.cse1 (= main_~x~0 main_~r~0)) (.cse5 (= main_~q~0 0)) (.cse10 (<= main_~y~0 main_~r~0)) (.cse2 (<= (+ |main_#t~post7| 1) ~counter~0)) (.cse3 (<= 5 |main_#t~post7|)) (.cse11 (= main_~b~0 main_~y~0)) (.cse14 (or (and (= main_~x~0 (+ main_~r~0 .cse13)) .cse4 (= main_~q~0 4) .cse6 .cse7) (and .cse8 (<= 1 .cse15) .cse4 .cse6 (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0) .cse7)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6 .cse7) (let ((.cse9 (* main_~y~0 8))) (and .cse8 (= main_~x~0 (+ .cse9 main_~r~0)) .cse10 .cse2 .cse3 .cse11 .cse7 (< main_~r~0 .cse9))) (and (<= 2 ~counter~0) .cse1 .cse2 .cse4 .cse11 .cse5 .cse6 .cse7 (<= ~counter~0 2)) (let ((.cse12 (div main_~a~0 2))) (and .cse0 (= (mod (div (- .cse12) (- 2)) 2) 0) .cse1 .cse2 (= (mod .cse12 2) 0) .cse4 (= main_~y~0 (* main_~y~0 (div (* (- 1) (div (* (- 1) .cse12) (- 2))) (- 2)))) .cse5 (<= 5 ~counter~0) .cse6 .cse7)) (not (<= |old(~counter~0)| 0)) (and (not (<= .cse13 main_~x~0)) .cse10 .cse11 (= (mod main_~q~0 2) 0) (<= |main_#t~post7| 4) .cse14) (and .cse1 (<= ~counter~0 3) .cse4 .cse5 (= main_~a~0 2) .cse6 .cse7 (<= |main_#t~post7| 2) (<= 3 ~counter~0)) (and .cse1 (<= ~counter~0 4) .cse2 .cse4 .cse5 (<= 4 ~counter~0) .cse6 .cse7 (= main_~a~0 4)) (and .cse10 .cse2 .cse3 (= (* main_~y~0 .cse15) (* main_~y~0 2)) .cse11 .cse14 (< (* main_~r~0 2) main_~x~0)) (not (<= 0 |old(~counter~0)|))))) [2022-04-08 11:34:00,798 INFO L885 garLoopResultBuilder]: At program point mainFINAL(lines 23 65) the Hoare annotation is: true [2022-04-08 11:34:00,798 INFO L878 garLoopResultBuilder]: At program point L46-3(lines 46 58) the Hoare annotation is: (let ((.cse11 (* main_~y~0 4)) (.cse7 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)) (.cse13 (div (* (- 1) main_~q~0) (- 2))) (.cse2 (<= 1 main_~r~0)) (.cse5 (<= 1 main_~y~0)) (.cse6 (= main_~b~0 (* main_~a~0 main_~y~0)))) (let ((.cse9 (<= main_~y~0 main_~r~0)) (.cse12 (or (and (= main_~x~0 (+ main_~r~0 .cse11)) .cse2 (= main_~q~0 4) .cse5 .cse6) (and .cse7 (<= 1 .cse13) .cse2 .cse5 (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0) .cse6))) (.cse4 (<= 5 ~counter~0)) (.cse10 (= main_~b~0 main_~y~0)) (.cse0 (= (mod main_~a~0 2) 0)) (.cse1 (= main_~x~0 main_~r~0)) (.cse3 (= main_~q~0 0))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6) (and (<= 2 ~counter~0) .cse1 .cse2 .cse3 (= main_~a~0 2) .cse5 .cse6 (<= ~counter~0 2)) (and .cse1 (<= ~counter~0 3) .cse2 .cse3 .cse5 .cse6 (= main_~a~0 4) (<= 3 ~counter~0)) (let ((.cse8 (* main_~y~0 8))) (and .cse7 (= main_~x~0 (+ .cse8 main_~r~0)) .cse9 .cse10 .cse4 .cse6 (< main_~r~0 .cse8))) (not (<= |old(~counter~0)| 0)) (and (not (<= .cse11 main_~x~0)) (<= ~counter~0 4) .cse9 .cse10 (= (mod main_~q~0 2) 0) .cse12) (and .cse9 (= (* main_~y~0 .cse13) (* main_~y~0 2)) .cse10 .cse12 .cse4 (< (* main_~r~0 2) main_~x~0)) (and .cse1 (<= ~counter~0 1) (<= 1 ~counter~0) .cse2 .cse10 .cse3 .cse5 .cse6) (let ((.cse14 (div main_~a~0 2))) (and .cse0 (= (mod (div (- .cse14) (- 2)) 2) 0) .cse1 (= (mod .cse14 2) 0) .cse2 (= main_~y~0 (* main_~y~0 (div (* (- 1) (div (* (- 1) .cse14) (- 2))) (- 2)))) .cse3 (<= 4 ~counter~0) .cse5 .cse6)) (not (<= 0 |old(~counter~0)|))))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L46-4(lines 46 58) the Hoare annotation is: (let ((.cse19 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) (.cse14 (* main_~y~0 2)) (.cse16 (* main_~b~0 2)) (.cse1 (= main_~x~0 main_~r~0)) (.cse3 (<= 1 main_~r~0)) (.cse5 (<= 1 main_~y~0)) (.cse6 (= main_~b~0 (* main_~a~0 main_~y~0)))) (let ((.cse13 (or (and .cse1 .cse3 .cse5 .cse6 (= main_~a~0 4)) (and .cse1 (<= ~counter~0 3) .cse3 (= main_~a~0 2) .cse5 .cse6))) (.cse0 (= (mod main_~a~0 2) 0)) (.cse8 (not (<= .cse16 main_~r~0))) (.cse15 (div main_~a~0 2)) (.cse4 (= main_~q~0 0)) (.cse7 (<= main_~y~0 main_~r~0)) (.cse2 (<= 6 ~counter~0)) (.cse9 (= .cse19 .cse14)) (.cse10 (= main_~b~0 main_~y~0)) (.cse11 (= (mod main_~q~0 2) 0)) (.cse12 (= main_~x~0 (+ (* 2 .cse19) main_~r~0)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse6) (and .cse7 .cse8 .cse9 .cse10 .cse11 .cse12 .cse6) (and .cse13 (<= ~counter~0 4) .cse8 .cse4 (<= 4 ~counter~0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) .cse7 .cse8 .cse10 (= main_~x~0 (+ main_~r~0 .cse14)) .cse6) (and .cse13 .cse8 (<= .cse15 1) .cse4) (and .cse0 (= (mod (div (- .cse15) (- 2)) 2) 0) .cse1 .cse8 (= (mod .cse15 2) 0) .cse3 .cse4 (<= 5 ~counter~0) (<= (div (* (- 1) (div (* (- 1) .cse15) (- 2))) (- 2)) 1) .cse5 .cse6) (not (<= |old(~counter~0)| 0)) (and .cse1 (< main_~r~0 .cse16) .cse3 .cse10 .cse4 .cse6 (<= ~counter~0 2)) (let ((.cse17 (div main_~q~0 2)) (.cse18 (* main_~y~0 8))) (and (= (mod (div (- .cse17) (- 2)) 2) 0) (= main_~x~0 (+ .cse18 main_~r~0)) .cse7 .cse2 .cse3 .cse10 (= main_~y~0 (* (div (* (- 1) (div (* (- 1) .cse17) (- 2))) (- 2)) main_~y~0)) (= (mod .cse17 2) 0) .cse11 .cse5 .cse6 (< main_~r~0 .cse18))) (and .cse7 .cse2 .cse9 .cse10 .cse11 .cse12 .cse6 (< (* main_~r~0 2) main_~x~0)) (not (<= 0 |old(~counter~0)|))))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (let ((.cse2 (* main_~y~0 4)) (.cse8 (<= 1 main_~y~0)) (.cse3 (= main_~b~0 (* main_~a~0 main_~y~0)))) (let ((.cse5 (* main_~y~0 2)) (.cse4 (* (- 1) main_~q~0)) (.cse9 (< main_~r~0 main_~y~0)) (.cse1 (= main_~b~0 main_~y~0)) (.cse0 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)) (.cse6 (<= 5 ~counter~0)) (.cse7 (or (and (= main_~x~0 (+ main_~r~0 .cse2)) (= main_~q~0 4) .cse8 .cse3) (and (<= 1 (div (* (- 1) main_~a~0) (- 2))) (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) (<= (div (* (- 1) main_~b~0) (- 2)) main_~y~0) .cse8 .cse3)))) (or (and .cse0 (<= 0 main_~r~0) .cse1 (< main_~x~0 .cse2) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0) .cse3) (and (not (<= main_~x~0 (* main_~r~0 2))) (= (* main_~y~0 (div .cse4 (- 2))) .cse5) .cse6 .cse7) (not (<= |old(~counter~0)| 0)) (and (= main_~x~0 main_~r~0) (= main_~b~0 0) (<= ~counter~0 1) (<= 1 ~counter~0) (= main_~q~0 0) .cse8 .cse3) (let ((.cse11 (* (div (+ .cse4 1) (- 2)) main_~y~0))) (let ((.cse10 (* 2 .cse11))) (and .cse9 (= main_~x~0 (+ main_~y~0 main_~r~0 .cse10)) (= .cse5 .cse11) .cse1 (<= (+ main_~y~0 .cse10) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) .cse3))) (and .cse9 .cse1 (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse8 .cse3) (let ((.cse12 (* main_~y~0 8))) (and .cse0 (= main_~x~0 (+ .cse12 main_~r~0)) .cse6 .cse8 .cse3 (not (<= .cse12 main_~r~0)))) (and (not (<= .cse2 main_~x~0)) (<= ~counter~0 4) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) .cse7) (not (<= 0 |old(~counter~0)|))))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L38-1(line 38) the Hoare annotation is: (let ((.cse9 (* (- 1) main_~q~0))) (let ((.cse4 (* main_~y~0 4)) (.cse10 (div .cse9 (- 2))) (.cse2 (<= 1 main_~y~0)) (.cse3 (= main_~b~0 (* main_~a~0 main_~y~0)))) (let ((.cse0 (< main_~r~0 main_~y~0)) (.cse5 (* main_~y~0 2)) (.cse6 (or (and (= main_~x~0 (+ main_~r~0 .cse4)) (= main_~q~0 4) .cse2 .cse3) (and (<= 1 .cse10) (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) (= (mod main_~q~0 2) 0) .cse2 (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0) .cse3))) (.cse11 (<= 5 ~counter~0)) (.cse12 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)) (.cse1 (<= main_~b~0 main_~y~0))) (or (and .cse0 .cse1 (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse2 .cse3) (and (not (<= .cse4 main_~x~0)) (<= ~counter~0 4) (= main_~x~0 (+ main_~r~0 .cse5)) .cse6) (not (<= |old(~counter~0)| 0)) (let ((.cse8 (* (div (+ .cse9 1) (- 2)) main_~y~0))) (let ((.cse7 (* 2 .cse8))) (and .cse0 (= main_~x~0 (+ main_~y~0 main_~r~0 .cse7)) (= .cse5 .cse8) .cse1 (<= (+ main_~y~0 .cse7) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) .cse3))) (and (not (<= main_~x~0 (* main_~r~0 2))) (= (* main_~y~0 .cse10) .cse5) .cse6 .cse11) (let ((.cse13 (* main_~y~0 8))) (and .cse12 (= main_~x~0 (+ .cse13 main_~r~0)) .cse11 .cse2 .cse3 (not (<= .cse13 main_~r~0)))) (and .cse12 (<= 0 main_~r~0) .cse1 (< main_~x~0 .cse4) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0) .cse3) (and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= ~counter~0 1) (<= 1 ~counter~0) (= main_~q~0 0) .cse2 .cse3) (not (<= 0 |old(~counter~0)|)))))) [2022-04-08 11:34:00,799 INFO L885 garLoopResultBuilder]: At program point L63(line 63) the Hoare annotation is: true [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L30(line 30) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (<= 0 ~counter~0) (<= ~counter~0 0)) (not (<= 0 |old(~counter~0)|))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point mainENTRY(lines 23 65) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (<= 0 ~counter~0) (<= ~counter~0 0)) (not (<= 0 |old(~counter~0)|))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L30-1(line 30) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (<= 0 ~counter~0) (<= ~counter~0 0) (<= 1 main_~y~0)) (not (<= 0 |old(~counter~0)|))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L49(lines 46 58) the Hoare annotation is: (let ((.cse0 (= main_~b~0 main_~y~0)) (.cse3 (= main_~x~0 main_~r~0)) (.cse4 (<= 1 main_~r~0)) (.cse5 (= main_~q~0 0)) (.cse6 (<= 1 main_~y~0)) (.cse1 (= main_~b~0 (* main_~a~0 main_~y~0)))) (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) .cse0 (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)) .cse1) (not (<= |old(~counter~0)| 0)) (let ((.cse2 (div main_~a~0 2))) (and (= (mod main_~a~0 2) 0) (= (mod (div (- .cse2) (- 2)) 2) 0) .cse3 (= (mod .cse2 2) 0) .cse4 (= main_~y~0 (* main_~y~0 (div (* (- 1) (div (* (- 1) .cse2) (- 2))) (- 2)))) .cse5 (<= 5 ~counter~0) .cse6 .cse1)) (and (<= 2 ~counter~0) .cse3 .cse4 .cse0 .cse5 .cse6 .cse1 (<= ~counter~0 2)) (and .cse3 (<= ~counter~0 4) .cse4 .cse5 (<= 4 ~counter~0) .cse6 .cse1 (= main_~a~0 4)) (and .cse3 (<= ~counter~0 3) .cse4 .cse5 (= main_~a~0 2) .cse6 .cse1 (<= 3 ~counter~0)) (not (<= 0 |old(~counter~0)|)))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L47(line 47) the Hoare annotation is: (let ((.cse6 (= main_~b~0 main_~y~0)) (.cse1 (= main_~x~0 main_~r~0)) (.cse2 (<= 1 main_~r~0)) (.cse3 (= main_~q~0 0)) (.cse4 (<= 1 main_~y~0)) (.cse5 (= main_~b~0 (* main_~a~0 main_~y~0)))) (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (div main_~a~0 2))) (and (= (mod main_~a~0 2) 0) (= (mod (div (- .cse0) (- 2)) 2) 0) .cse1 (= (mod .cse0 2) 0) .cse2 (= main_~y~0 (* main_~y~0 (div (* (- 1) (div (* (- 1) .cse0) (- 2))) (- 2)))) .cse3 (<= 5 ~counter~0) .cse4 .cse5)) (and (not (<= (* main_~y~0 4) main_~x~0)) (<= 1 (div (* (- 1) main_~q~0) (- 2))) (<= main_~y~0 main_~r~0) .cse6 (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) .cse5) (and (<= 2 ~counter~0) .cse1 .cse2 .cse6 .cse3 .cse4 .cse5 (<= ~counter~0 2)) (and .cse1 (<= ~counter~0 4) .cse2 .cse3 (<= 4 ~counter~0) .cse4 .cse5 (= main_~a~0 4)) (and .cse1 (<= ~counter~0 3) .cse2 .cse3 (= main_~a~0 2) .cse4 .cse5 (<= 3 ~counter~0)) (not (<= 0 |old(~counter~0)|)))) [2022-04-08 11:34:00,799 INFO L878 garLoopResultBuilder]: At program point L47-1(line 47) the Hoare annotation is: (let ((.cse6 (= main_~b~0 main_~y~0)) (.cse1 (= main_~x~0 main_~r~0)) (.cse2 (<= 1 main_~r~0)) (.cse3 (= main_~q~0 0)) (.cse4 (<= 1 main_~y~0)) (.cse5 (= main_~b~0 (* main_~a~0 main_~y~0)))) (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (div main_~a~0 2))) (and (= (mod main_~a~0 2) 0) (= (mod (div (- .cse0) (- 2)) 2) 0) .cse1 (= (mod .cse0 2) 0) .cse2 (= main_~y~0 (* main_~y~0 (div (* (- 1) (div (* (- 1) .cse0) (- 2))) (- 2)))) .cse3 (<= 5 ~counter~0) .cse4 .cse5)) (and (not (<= (* main_~y~0 4) main_~x~0)) (<= 1 (div (* (- 1) main_~q~0) (- 2))) (<= main_~y~0 main_~r~0) .cse6 (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) .cse5) (and (<= 2 ~counter~0) .cse1 .cse2 .cse6 .cse3 .cse4 .cse5 (<= ~counter~0 2)) (and .cse1 (<= ~counter~0 4) .cse2 .cse3 (<= 4 ~counter~0) .cse4 .cse5 (= main_~a~0 4)) (and .cse1 (<= ~counter~0 3) .cse2 .cse3 (= main_~a~0 2) .cse4 .cse5 (<= 3 ~counter~0)) (not (<= 0 |old(~counter~0)|)))) [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point L39(lines 37 61) the Hoare annotation is: (let ((.cse9 (* (- 1) main_~q~0))) (let ((.cse4 (* main_~y~0 4)) (.cse10 (div .cse9 (- 2))) (.cse2 (<= 1 main_~y~0)) (.cse3 (= main_~b~0 (* main_~a~0 main_~y~0)))) (let ((.cse0 (< main_~r~0 main_~y~0)) (.cse5 (* main_~y~0 2)) (.cse6 (or (and (= main_~x~0 (+ main_~r~0 .cse4)) (= main_~q~0 4) .cse2 .cse3) (and (<= 1 .cse10) (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) (= (mod main_~q~0 2) 0) .cse2 (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0) .cse3))) (.cse11 (<= 5 ~counter~0)) (.cse12 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)) (.cse1 (<= main_~b~0 main_~y~0))) (or (and .cse0 .cse1 (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse2 .cse3) (and (not (<= .cse4 main_~x~0)) (<= ~counter~0 4) (= main_~x~0 (+ main_~r~0 .cse5)) .cse6) (not (<= |old(~counter~0)| 0)) (let ((.cse8 (* (div (+ .cse9 1) (- 2)) main_~y~0))) (let ((.cse7 (* 2 .cse8))) (and .cse0 (= main_~x~0 (+ main_~y~0 main_~r~0 .cse7)) (= .cse5 .cse8) .cse1 (<= (+ main_~y~0 .cse7) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) .cse3))) (and (not (<= main_~x~0 (* main_~r~0 2))) (= (* main_~y~0 .cse10) .cse5) .cse6 .cse11) (let ((.cse13 (* main_~y~0 8))) (and .cse12 (= main_~x~0 (+ .cse13 main_~r~0)) .cse11 .cse2 .cse3 (not (<= .cse13 main_~r~0)))) (and .cse12 (<= 0 main_~r~0) .cse1 (< main_~x~0 .cse4) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0) .cse3) (and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= ~counter~0 1) (<= 1 ~counter~0) (= main_~q~0 0) .cse2 .cse3) (not (<= 0 |old(~counter~0)|)))))) [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point L37-1(lines 37 61) the Hoare annotation is: (let ((.cse11 (* (- 1) main_~q~0))) (let ((.cse20 (* (div (+ .cse11 1) (- 2)) main_~y~0))) (let ((.cse12 (* main_~y~0 2)) (.cse21 (* 2 .cse20)) (.cse1 (* main_~y~0 4)) (.cse14 (<= 1 main_~y~0)) (.cse8 (= main_~b~0 (* main_~a~0 main_~y~0)))) (let ((.cse4 (<= 0 main_~r~0)) (.cse0 (or (and (= main_~x~0 (+ main_~r~0 .cse1)) (= main_~q~0 4) .cse14 .cse8) (and (<= 1 (div (* (- 1) main_~a~0) (- 2))) (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) (<= (div (* (- 1) main_~b~0) (- 2)) main_~y~0) (<= |main_#t~post6| 3) .cse14 .cse8))) (.cse2 (= (mod main_~q~0 2) 0)) (.cse15 (< main_~r~0 main_~y~0)) (.cse9 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)) (.cse13 (<= 5 ~counter~0)) (.cse16 (= main_~x~0 (+ main_~y~0 main_~r~0 .cse21))) (.cse17 (= .cse12 .cse20)) (.cse3 (<= 6 |main_#t~post6|)) (.cse5 (<= 6 ~counter~0)) (.cse10 (= main_~b~0 main_~y~0)) (.cse18 (<= (+ main_~y~0 .cse21) main_~x~0)) (.cse7 (= (mod (+ main_~q~0 1) 2) 0))) (or (and .cse0 (not (<= .cse1 main_~x~0)) (<= ~counter~0 4) (<= (div main_~q~0 2) 1) .cse2) (let ((.cse6 (div (+ (- 1) main_~q~0) 2))) (and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) .cse3 .cse4 .cse5 (= main_~y~0 (* (div (* (- 1) (div (* (- 1) .cse6) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- .cse6) (- 2)) 2) 0) (= (mod .cse6 2) 0) .cse7 .cse8)) (and .cse9 .cse4 .cse10 (< main_~x~0 .cse1) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0) .cse8) (and (not (<= main_~x~0 (* main_~r~0 2))) .cse0 (= (* main_~y~0 (div .cse11 (- 2))) .cse12) .cse13) (and .cse9 .cse3 .cse5 .cse2 .cse14 .cse8) (not (<= |old(~counter~0)| 0)) (and .cse15 .cse10 (= main_~x~0 (+ main_~y~0 main_~r~0)) (<= |main_#t~post6| 2) (= main_~q~0 1) .cse14 .cse8) (and .cse15 .cse16 .cse17 .cse10 .cse18 .cse7 .cse8) (and (= main_~x~0 main_~r~0) (= main_~b~0 0) (<= ~counter~0 1) (<= 1 ~counter~0) (<= |main_#t~post6| 0) (= main_~q~0 0) .cse14 .cse8) (let ((.cse19 (* main_~y~0 8))) (and .cse9 (= main_~x~0 (+ .cse19 main_~r~0)) .cse13 .cse14 .cse8 (not (<= .cse19 main_~r~0)))) (and .cse16 .cse17 .cse3 .cse5 (< main_~x~0 (* 4 .cse20)) .cse10 .cse18 .cse7 .cse8) (not (<= 0 |old(~counter~0)|))))))) [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point L37-3(lines 37 61) the Hoare annotation is: (let ((.cse3 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (let ((.cse10 (* main_~y~0 4)) (.cse12 (<= 1 main_~y~0)) (.cse7 (= main_~b~0 (* main_~a~0 main_~y~0))) (.cse17 (* 2 .cse3))) (let ((.cse11 (< main_~r~0 main_~y~0)) (.cse0 (= main_~x~0 (+ main_~y~0 main_~r~0 .cse17))) (.cse1 (= (* main_~y~0 2) .cse3)) (.cse4 (= main_~b~0 main_~y~0)) (.cse5 (<= (+ main_~y~0 .cse17) main_~x~0)) (.cse13 (= (mod main_~q~0 2) 0)) (.cse14 (or (and (= main_~x~0 (+ main_~r~0 .cse10)) (= main_~q~0 4) .cse12 .cse7) (and (<= ~counter~0 3) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) (<= (div (* (- 1) main_~b~0) (- 2)) main_~y~0) .cse12 .cse7))) (.cse9 (<= 0 main_~r~0)) (.cse2 (<= 6 ~counter~0)) (.cse6 (= (mod (+ main_~q~0 1) 2) 0)) (.cse8 (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0))) (or (and .cse0 .cse1 .cse2 (< main_~x~0 (* 4 .cse3)) .cse4 .cse5 .cse6 .cse7) (and .cse8 .cse9 .cse4 (< main_~x~0 .cse10) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0) .cse7) (and .cse11 .cse4 (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse12 .cse7 (<= ~counter~0 2)) (and .cse8 .cse2 .cse13 .cse12 .cse7) (not (<= |old(~counter~0)| 0)) (and .cse11 .cse0 .cse1 .cse4 .cse5 .cse6 .cse7) (and (not (<= main_~x~0 (* main_~r~0 2))) (<= ~counter~0 4) (<= 4 ~counter~0) .cse14) (and (not (<= .cse10 main_~x~0)) (<= (div main_~q~0 2) 1) .cse13 .cse14) (and (= main_~x~0 main_~r~0) (= main_~b~0 0) (<= 0 ~counter~0) (<= ~counter~0 0) (= main_~q~0 0) .cse12 .cse7) (let ((.cse15 (div (+ (- 1) main_~q~0) 2))) (and (= main_~x~0 (+ (* main_~y~0 9) main_~r~0)) (< main_~r~0 (* 7 main_~y~0)) .cse9 .cse2 (= main_~y~0 (* (div (* (- 1) (div (* (- 1) .cse15) (- 2))) (- 2)) main_~y~0)) (= (mod (div (- .cse15) (- 2)) 2) 0) (= (mod .cse15 2) 0) .cse6 .cse7)) (let ((.cse16 (* main_~y~0 8))) (and .cse8 (= main_~x~0 (+ .cse16 main_~r~0)) (<= 5 ~counter~0) .cse12 .cse7 (not (<= .cse16 main_~r~0)))) (not (<= 0 |old(~counter~0)|)))))) [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: (and (<= 0 ~counter~0) (<= ~counter~0 0)) [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: (and (<= 0 ~counter~0) (<= ~counter~0 0)) [2022-04-08 11:34:00,800 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: (and (<= 0 ~counter~0) (<= ~counter~0 0)) [2022-04-08 11:34:00,800 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 11:34:00,800 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point L16(lines 16 17) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-08 11:34:00,800 INFO L878 garLoopResultBuilder]: At program point L15(lines 15 18) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (= |__VERIFIER_assert_#in~cond| 0)) [2022-04-08 11:34:00,800 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-08 11:34:00,801 INFO L878 garLoopResultBuilder]: At program point L15-2(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (= |__VERIFIER_assert_#in~cond| 0)) [2022-04-08 11:34:00,801 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (= |__VERIFIER_assert_#in~cond| 0)) [2022-04-08 11:34:00,801 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-08 11:34:00,805 INFO L719 BasicCegarLoop]: Path program histogram: [10, 6, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2022-04-08 11:34:00,806 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 11:34:00,808 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 11:34:00,829 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 11:34:01,289 INFO L163 areAnnotationChecker]: CFG has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 11:34:01,335 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 11:34:01 BoogieIcfgContainer [2022-04-08 11:34:01,335 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 11:34:01,336 INFO L158 Benchmark]: Toolchain (without parser) took 694711.28ms. Allocated memory was 172.0MB in the beginning and 215.0MB in the end (delta: 43.0MB). Free memory was 123.8MB in the beginning and 115.9MB in the end (delta: 8.0MB). Peak memory consumption was 105.4MB. Max. memory is 8.0GB. [2022-04-08 11:34:01,336 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 172.0MB. Free memory was 140.1MB in the beginning and 140.0MB in the end (delta: 79.9kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 11:34:01,336 INFO L158 Benchmark]: CACSL2BoogieTranslator took 307.39ms. Allocated memory is still 172.0MB. Free memory was 123.7MB in the beginning and 150.7MB in the end (delta: -27.1MB). Peak memory consumption was 12.8MB. Max. memory is 8.0GB. [2022-04-08 11:34:01,336 INFO L158 Benchmark]: Boogie Preprocessor took 66.41ms. Allocated memory is still 172.0MB. Free memory was 150.7MB in the beginning and 149.3MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 11:34:01,339 INFO L158 Benchmark]: RCFGBuilder took 410.62ms. Allocated memory is still 172.0MB. Free memory was 149.3MB in the beginning and 136.7MB in the end (delta: 12.6MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-08 11:34:01,339 INFO L158 Benchmark]: TraceAbstraction took 693901.23ms. Allocated memory was 172.0MB in the beginning and 215.0MB in the end (delta: 43.0MB). Free memory was 136.0MB in the beginning and 115.9MB in the end (delta: 20.2MB). Peak memory consumption was 117.8MB. Max. memory is 8.0GB. [2022-04-08 11:34:01,340 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11ms. Allocated memory is still 172.0MB. Free memory was 140.1MB in the beginning and 140.0MB in the end (delta: 79.9kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 307.39ms. Allocated memory is still 172.0MB. Free memory was 123.7MB in the beginning and 150.7MB in the end (delta: -27.1MB). Peak memory consumption was 12.8MB. Max. memory is 8.0GB. * Boogie Preprocessor took 66.41ms. Allocated memory is still 172.0MB. Free memory was 150.7MB in the beginning and 149.3MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 8.0GB. * RCFGBuilder took 410.62ms. Allocated memory is still 172.0MB. Free memory was 149.3MB in the beginning and 136.7MB in the end (delta: 12.6MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * TraceAbstraction took 693901.23ms. Allocated memory was 172.0MB in the beginning and 215.0MB in the end (delta: 43.0MB). Free memory was 136.0MB in the beginning and 115.9MB in the end (delta: 20.2MB). Peak memory consumption was 117.8MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 41 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 693.3s, OverallIterations: 22, TraceHistogramMax: 20, PathProgramHistogramMax: 10, EmptinessCheckTime: 0.0s, AutomataDifference: 39.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 25.2s, InitialAbstractionConstructionTime: 0.1s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 610 SdHoareTripleChecker+Valid, 12.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 507 mSDsluCounter, 4197 SdHoareTripleChecker+Invalid, 12.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 17 IncrementalHoareTripleChecker+Unchecked, 3116 mSDsCounter, 361 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 4377 IncrementalHoareTripleChecker+Invalid, 4755 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 361 mSolverCounterUnsat, 1081 mSDtfsCounter, 4377 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 2665 GetRequests, 2437 SyntacticMatches, 20 SemanticMatches, 208 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 712 ImplicationChecksByTransitivity, 5.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=234occurred in iteration=19, InterpolantAutomatonStates: 185, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 3.7s AutomataMinimizationTime, 22 MinimizatonAttempts, 85 StatesRemovedByMinimization, 14 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 38 LocationsWithAnnotation, 1196 PreInvPairs, 1460 NumberOfFragments, 4622 HoareAnnotationTreeSize, 1196 FomulaSimplifications, 1364 FormulaSimplificationTreeSizeReduction, 1.2s HoareSimplificationTime, 38 FomulaSimplificationsInter, 37728 FormulaSimplificationTreeSizeReductionInter, 23.7s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, 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 - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 46]: Loop Invariant Derived loop invariant: ((((((((((((((a % 2 == 0 && x == r) && 1 <= r) && q == 0) && 5 <= counter) && 1 <= y) && b == a * y) || (((((((2 <= counter && x == r) && 1 <= r) && q == 0) && a == 2) && 1 <= y) && b == a * y) && counter <= 2)) || (((((((x == r && counter <= 3) && 1 <= r) && q == 0) && 1 <= y) && b == a * y) && a == 4) && 3 <= counter)) || ((((((q * y + r == x && x == y * 8 + r) && y <= r) && b == y) && 5 <= counter) && b == a * y) && r < y * 8)) || !(\old(counter) <= 0)) || (((((!(y * 4 <= x) && counter <= 4) && y <= r) && b == y) && q % 2 == 0) && (((((x == r + y * 4 && 1 <= r) && q == 4) && 1 <= y) && b == a * y) || (((((q * y + r == x && 1 <= -1 * q / -2) && 1 <= r) && 1 <= y) && (r + -1 * x) / -2 <= y) && b == a * y)))) || (((((y <= r && y * (-1 * q / -2) == y * 2) && b == y) && (((((x == r + y * 4 && 1 <= r) && q == 4) && 1 <= y) && b == a * y) || (((((q * y + r == x && 1 <= -1 * q / -2) && 1 <= r) && 1 <= y) && (r + -1 * x) / -2 <= y) && b == a * y))) && 5 <= counter) && r * 2 < x)) || (((((((x == r && counter <= 1) && 1 <= counter) && 1 <= r) && b == y) && q == 0) && 1 <= y) && b == a * y)) || (((((((((a % 2 == 0 && -(a / 2) / -2 % 2 == 0) && x == r) && a / 2 % 2 == 0) && 1 <= r) && y == y * (-1 * (-1 * (a / 2) / -2) / -2)) && q == 0) && 4 <= counter) && 1 <= y) && b == a * y)) || !(0 <= \old(counter)) - InvariantResult [Line: 37]: Loop Invariant Derived loop invariant: (((((((((((((((((x == y + r + 2 * ((-1 * q + 1) / -2 * y) && y * 2 == (-1 * q + 1) / -2 * y) && 6 <= counter) && x < 4 * ((-1 * q + 1) / -2 * y)) && b == y) && y + 2 * ((-1 * q + 1) / -2 * y) <= x) && (q + 1) % 2 == 0) && b == a * y) || (((((q * y + r == x && 0 <= r) && b == y) && x < y * 4) && r + y * 3 == x) && b == a * y)) || ((((((r < y && b == y) && x == y + r) && q == 1) && 1 <= y) && b == a * y) && counter <= 2)) || ((((q * y + r == x && 6 <= counter) && q % 2 == 0) && 1 <= y) && b == a * y)) || !(\old(counter) <= 0)) || ((((((r < y && x == y + r + 2 * ((-1 * q + 1) / -2 * y)) && y * 2 == (-1 * q + 1) / -2 * y) && b == y) && y + 2 * ((-1 * q + 1) / -2 * y) <= x) && (q + 1) % 2 == 0) && b == a * y)) || (((!(x <= r * 2) && counter <= 4) && 4 <= counter) && ((((x == r + y * 4 && q == 4) && 1 <= y) && b == a * y) || ((((((counter <= 3 && 1 <= -1 * a / -2) && x == b + r) && a == q) && -1 * b / -2 <= y) && 1 <= y) && b == a * y)))) || (((!(y * 4 <= x) && q / 2 <= 1) && q % 2 == 0) && ((((x == r + y * 4 && q == 4) && 1 <= y) && b == a * y) || ((((((counter <= 3 && 1 <= -1 * a / -2) && x == b + r) && a == q) && -1 * b / -2 <= y) && 1 <= y) && b == a * y)))) || ((((((x == r && b == 0) && 0 <= counter) && counter <= 0) && q == 0) && 1 <= y) && b == a * y)) || ((((((((x == y * 9 + r && r < 7 * y) && 0 <= r) && 6 <= counter) && y == -1 * (-1 * ((-1 + q) / 2) / -2) / -2 * y) && -((-1 + q) / 2) / -2 % 2 == 0) && (-1 + q) / 2 % 2 == 0) && (q + 1) % 2 == 0) && b == a * y)) || (((((q * y + r == x && x == y * 8 + r) && 5 <= counter) && 1 <= y) && b == a * y) && !(y * 8 <= r))) || !(0 <= \old(counter)) - ProcedureContractResult [Line: 11]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: ((!(\old(cond) == 0) && cond == \old(cond)) || !(0 <= counter)) || !(counter <= 0) - ProcedureContractResult [Line: 23]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 14]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: \old(cond) == cond || \old(cond) == 0 RESULT: Ultimate proved your program to be correct! [2022-04-08 11:34:01,578 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forcibly destroying the process [2022-04-08 11:34:01,619 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 137 Received shutdown request...