/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/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench/egcd3-ll.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 07:18:49,999 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 07:18:50,000 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 07:18:50,035 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 07:18:50,035 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 07:18:50,036 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 07:18:50,038 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 07:18:50,040 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 07:18:50,041 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 07:18:50,045 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 07:18:50,045 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 07:18:50,047 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 07:18:50,047 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 07:18:50,048 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 07:18:50,049 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 07:18:50,051 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 07:18:50,052 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 07:18:50,052 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 07:18:50,054 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 07:18:50,056 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 07:18:50,057 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 07:18:50,058 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 07:18:50,058 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 07:18:50,059 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 07:18:50,060 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 07:18:50,064 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 07:18:50,065 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 07:18:50,065 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 07:18:50,066 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 07:18:50,066 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 07:18:50,067 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 07:18:50,067 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 07:18:50,068 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 07:18:50,068 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 07:18:50,069 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 07:18:50,069 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 07:18:50,069 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 07:18:50,070 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 07:18:50,070 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 07:18:50,070 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 07:18:50,070 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 07:18:50,072 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 07:18:50,072 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 07:18:50,081 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 07:18:50,081 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 07:18:50,082 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 07:18:50,082 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 07:18:50,082 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 07:18:50,082 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 07:18:50,082 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 07:18:50,082 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 07:18:50,082 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 07:18:50,083 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 07:18:50,083 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 07:18:50,083 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 07:18:50,083 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 07:18:50,083 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 07:18:50,083 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 07:18:50,084 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 07:18:50,084 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 07:18:50,084 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-15 07:18:50,299 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 07:18:50,314 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 07:18:50,316 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 07:18:50,316 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 07:18:50,317 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 07:18:50,318 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-15 07:18:50,374 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e93080e88/a80a6681034f41f98508e1495900389b/FLAG440fc9121 [2022-04-15 07:18:50,744 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 07:18:50,744 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-15 07:18:50,750 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e93080e88/a80a6681034f41f98508e1495900389b/FLAG440fc9121 [2022-04-15 07:18:50,762 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e93080e88/a80a6681034f41f98508e1495900389b [2022-04-15 07:18:50,764 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 07:18:50,765 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 07:18:50,767 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 07:18:50,767 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 07:18:50,770 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 07:18:50,771 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 07:18:50" (1/1) ... [2022-04-15 07:18:50,772 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5baeb3cc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:50, skipping insertion in model container [2022-04-15 07:18:50,772 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 07:18:50" (1/1) ... [2022-04-15 07:18:50,776 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 07:18:50,788 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 07:18:50,950 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/egcd3-ll.c[490,503] [2022-04-15 07:18:50,979 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 07:18:50,984 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 07:18:50,998 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/egcd3-ll.c[490,503] [2022-04-15 07:18:51,017 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 07:18:51,027 INFO L208 MainTranslator]: Completed translation [2022-04-15 07:18:51,027 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51 WrapperNode [2022-04-15 07:18:51,028 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 07:18:51,028 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 07:18:51,028 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 07:18:51,028 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 07:18:51,036 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,036 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,042 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,042 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,056 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,062 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,063 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,066 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 07:18:51,067 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 07:18:51,067 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 07:18:51,067 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 07:18:51,067 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (1/1) ... [2022-04-15 07:18:51,072 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 07:18:51,079 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:18:51,088 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-15 07:18:51,104 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-15 07:18:51,121 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 07:18:51,121 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 07:18:51,121 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 07:18:51,121 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 07:18:51,122 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 07:18:51,122 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 07:18:51,122 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 07:18:51,123 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 07:18:51,123 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 07:18:51,123 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 07:18:51,123 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 07:18:51,167 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 07:18:51,168 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 07:18:51,350 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 07:18:51,355 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 07:18:51,355 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-15 07:18:51,356 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 07:18:51 BoogieIcfgContainer [2022-04-15 07:18:51,356 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 07:18:51,357 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 07:18:51,357 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 07:18:51,360 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 07:18:51,360 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 07:18:50" (1/3) ... [2022-04-15 07:18:51,360 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5e73d00e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 07:18:51, skipping insertion in model container [2022-04-15 07:18:51,360 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 07:18:51" (2/3) ... [2022-04-15 07:18:51,360 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5e73d00e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 07:18:51, skipping insertion in model container [2022-04-15 07:18:51,361 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 07:18:51" (3/3) ... [2022-04-15 07:18:51,361 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll.c [2022-04-15 07:18:51,364 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 07:18:51,365 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 07:18:51,425 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 07:18:51,429 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-15 07:18:51,429 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 07:18:51,448 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 07:18:51,453 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-15 07:18:51,453 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:18:51,454 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 07:18:51,455 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:18:51,461 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:18:51,461 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 1 times [2022-04-15 07:18:51,467 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:51,468 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [525293479] [2022-04-15 07:18:51,477 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:18:51,477 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 2 times [2022-04-15 07:18:51,479 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:18:51,480 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [508858278] [2022-04-15 07:18:51,480 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:18:51,480 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:18:51,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:51,642 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 07:18:51,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:51,671 INFO L290 TraceCheckUtils]: 0: Hoare triple {53#(and (= |#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(11, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-15 07:18:51,671 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 07:18:51,671 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-15 07:18:51,672 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 07:18:51,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:51,695 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 07:18:51,696 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 07:18:51,696 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 07:18:51,696 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-15 07:18:51,696 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-15 07:18:51,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:51,706 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 07:18:51,707 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 07:18:51,707 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 07:18:51,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-15 07:18:51,709 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {53#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 07:18:51,710 INFO L290 TraceCheckUtils]: 1: Hoare triple {53#(and (= |#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(11, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-15 07:18:51,710 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 07:18:51,711 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-15 07:18:51,711 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret6 := main(); {40#true} is VALID [2022-04-15 07:18:51,711 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {40#true} is VALID [2022-04-15 07:18:51,711 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-15 07:18:51,712 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 07:18:51,713 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 07:18:51,713 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 07:18:51,713 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-15 07:18:51,713 INFO L272 TraceCheckUtils]: 11: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-15 07:18:51,714 INFO L290 TraceCheckUtils]: 12: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 07:18:51,714 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 07:18:51,714 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 07:18:51,714 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-15 07:18:51,714 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {41#false} is VALID [2022-04-15 07:18:51,715 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume false; {41#false} is VALID [2022-04-15 07:18:51,715 INFO L272 TraceCheckUtils]: 18: Hoare triple {41#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {41#false} is VALID [2022-04-15 07:18:51,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-15 07:18:51,715 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-15 07:18:51,715 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-15 07:18:51,716 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 07:18:51,716 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:18:51,716 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [508858278] [2022-04-15 07:18:51,718 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [508858278] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:51,718 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:51,718 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 07:18:51,720 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:18:51,720 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [525293479] [2022-04-15 07:18:51,721 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [525293479] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:51,721 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:51,721 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 07:18:51,721 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [659953276] [2022-04-15 07:18:51,722 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:18:51,727 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-15 07:18:51,728 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:18:51,730 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:51,768 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:51,768 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 07:18:51,768 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:51,781 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 07:18:51,782 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 07:18:51,784 INFO L87 Difference]: Start difference. First operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:51,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:51,949 INFO L93 Difference]: Finished difference Result 67 states and 103 transitions. [2022-04-15 07:18:51,949 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 07:18:51,950 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-15 07:18:51,950 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:18:51,951 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:51,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-15 07:18:51,969 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:51,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-15 07:18:51,972 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 103 transitions. [2022-04-15 07:18:52,111 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-15 07:18:52,121 INFO L225 Difference]: With dead ends: 67 [2022-04-15 07:18:52,121 INFO L226 Difference]: Without dead ends: 32 [2022-04-15 07:18:52,124 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 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-15 07:18:52,134 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 23 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 17 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 07:18:52,135 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 40 Invalid, 17 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 07:18:52,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-15 07:18:52,155 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-15 07:18:52,155 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:18:52,156 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 07:18:52,156 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 07:18:52,157 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 07:18:52,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:52,160 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-15 07:18:52,160 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-15 07:18:52,161 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:52,161 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:52,161 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 32 states. [2022-04-15 07:18:52,162 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 32 states. [2022-04-15 07:18:52,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:52,164 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-15 07:18:52,164 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-15 07:18:52,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:52,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:52,165 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:18:52,165 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:18:52,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 07:18:52,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 39 transitions. [2022-04-15 07:18:52,168 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 39 transitions. Word has length 22 [2022-04-15 07:18:52,168 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:18:52,169 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 39 transitions. [2022-04-15 07:18:52,169 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:52,169 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 39 transitions. [2022-04-15 07:18:52,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:52,207 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-15 07:18:52,207 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 07:18:52,207 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:18:52,207 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 07:18:52,207 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 07:18:52,208 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:18:52,208 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:18:52,208 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 1 times [2022-04-15 07:18:52,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:52,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2139522131] [2022-04-15 07:18:52,209 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:18:52,209 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 2 times [2022-04-15 07:18:52,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:18:52,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1258450150] [2022-04-15 07:18:52,209 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:18:52,210 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:18:52,224 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:18:52,225 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1087040073] [2022-04-15 07:18:52,225 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:18:52,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:18:52,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:18:52,226 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-15 07:18:52,227 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-15 07:18:52,265 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 07:18:52,265 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:18:52,267 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-15 07:18:52,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:52,280 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:18:52,505 INFO L272 TraceCheckUtils]: 0: Hoare triple {318#true} call ULTIMATE.init(); {318#true} is VALID [2022-04-15 07:18:52,505 INFO L290 TraceCheckUtils]: 1: Hoare triple {318#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(11, 2);call #Ultimate.allocInit(12, 3); {318#true} is VALID [2022-04-15 07:18:52,505 INFO L290 TraceCheckUtils]: 2: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-15 07:18:52,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {318#true} {318#true} #105#return; {318#true} is VALID [2022-04-15 07:18:52,506 INFO L272 TraceCheckUtils]: 4: Hoare triple {318#true} call #t~ret6 := main(); {318#true} is VALID [2022-04-15 07:18:52,506 INFO L290 TraceCheckUtils]: 5: Hoare triple {318#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {318#true} is VALID [2022-04-15 07:18:52,506 INFO L272 TraceCheckUtils]: 6: Hoare triple {318#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-15 07:18:52,506 INFO L290 TraceCheckUtils]: 7: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-15 07:18:52,506 INFO L290 TraceCheckUtils]: 8: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-15 07:18:52,507 INFO L290 TraceCheckUtils]: 9: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-15 07:18:52,508 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {318#true} {318#true} #91#return; {318#true} is VALID [2022-04-15 07:18:52,508 INFO L272 TraceCheckUtils]: 11: Hoare triple {318#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-15 07:18:52,508 INFO L290 TraceCheckUtils]: 12: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-15 07:18:52,508 INFO L290 TraceCheckUtils]: 13: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-15 07:18:52,508 INFO L290 TraceCheckUtils]: 14: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-15 07:18:52,513 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {318#true} {318#true} #93#return; {318#true} is VALID [2022-04-15 07:18:52,514 INFO L290 TraceCheckUtils]: 16: Hoare triple {318#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:18:52,514 INFO L290 TraceCheckUtils]: 17: Hoare triple {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:18:52,515 INFO L290 TraceCheckUtils]: 18: Hoare triple {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {378#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:18:52,516 INFO L272 TraceCheckUtils]: 19: Hoare triple {378#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {382#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:18:52,517 INFO L290 TraceCheckUtils]: 20: Hoare triple {382#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {386#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:18:52,517 INFO L290 TraceCheckUtils]: 21: Hoare triple {386#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {319#false} is VALID [2022-04-15 07:18:52,519 INFO L290 TraceCheckUtils]: 22: Hoare triple {319#false} assume !false; {319#false} is VALID [2022-04-15 07:18:52,519 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 07:18:52,519 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 07:18:52,519 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:18:52,519 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1258450150] [2022-04-15 07:18:52,520 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:18:52,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1087040073] [2022-04-15 07:18:52,521 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1087040073] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:52,521 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:52,521 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 07:18:52,522 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:18:52,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2139522131] [2022-04-15 07:18:52,522 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2139522131] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:52,522 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:52,522 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 07:18:52,522 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [97431198] [2022-04-15 07:18:52,522 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:18:52,523 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-15 07:18:52,523 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:18:52,524 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:18:52,545 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:52,545 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 07:18:52,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:52,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 07:18:52,546 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 07:18:52,546 INFO L87 Difference]: Start difference. First operand 32 states and 39 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:18:52,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:52,878 INFO L93 Difference]: Finished difference Result 51 states and 64 transitions. [2022-04-15 07:18:52,878 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 07:18:52,879 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-15 07:18:52,879 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:18:52,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:18:52,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-15 07:18:52,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:18:52,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-15 07:18:52,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-15 07:18:52,926 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:52,927 INFO L225 Difference]: With dead ends: 51 [2022-04-15 07:18:52,927 INFO L226 Difference]: Without dead ends: 48 [2022-04-15 07:18:52,928 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-15 07:18:52,928 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 14 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 07:18:52,929 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 154 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 07:18:52,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-15 07:18:52,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 47. [2022-04-15 07:18:52,939 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:18:52,939 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 07:18:52,940 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 07:18:52,940 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 07:18:52,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:52,942 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-15 07:18:52,942 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-15 07:18:52,943 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:52,943 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:52,943 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 48 states. [2022-04-15 07:18:52,944 INFO L87 Difference]: Start difference. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 48 states. [2022-04-15 07:18:52,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:52,946 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-15 07:18:52,946 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-15 07:18:52,947 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:52,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:52,947 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:18:52,947 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:18:52,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 07:18:52,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 59 transitions. [2022-04-15 07:18:52,949 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 59 transitions. Word has length 23 [2022-04-15 07:18:52,949 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:18:52,950 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 59 transitions. [2022-04-15 07:18:52,950 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:18:52,950 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 59 transitions. [2022-04-15 07:18:53,027 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:53,027 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 59 transitions. [2022-04-15 07:18:53,032 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 07:18:53,032 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:18:53,032 INFO L499 BasicCegarLoop]: trace histogram [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-15 07:18:53,050 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-15 07:18:53,247 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-15 07:18:53,248 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:18:53,248 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:18:53,248 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 1 times [2022-04-15 07:18:53,248 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:53,248 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [259960871] [2022-04-15 07:18:53,249 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:18:53,249 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 2 times [2022-04-15 07:18:53,249 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:18:53,249 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [21885652] [2022-04-15 07:18:53,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:18:53,249 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:18:53,265 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:18:53,266 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [489792091] [2022-04-15 07:18:53,266 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:18:53,266 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:18:53,266 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:18:53,268 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-15 07:18:53,269 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-15 07:18:53,302 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:18:53,302 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:18:53,303 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 07:18:53,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:53,311 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:18:53,456 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-15 07:18:53,456 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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(11, 2);call #Ultimate.allocInit(12, 3); {688#true} is VALID [2022-04-15 07:18:53,456 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-15 07:18:53,456 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-15 07:18:53,456 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-15 07:18:53,457 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {688#true} is VALID [2022-04-15 07:18:53,457 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-15 07:18:53,457 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:18:53,457 INFO L290 TraceCheckUtils]: 8: Hoare triple {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:53,458 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:53,458 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-15 07:18:53,459 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-15 07:18:53,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-15 07:18:53,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-15 07:18:53,459 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-15 07:18:53,459 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-15 07:18:53,460 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-15 07:18:53,460 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-15 07:18:53,461 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-15 07:18:53,461 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-15 07:18:53,461 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-15 07:18:53,462 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {761#(<= 1 main_~b~0)} is VALID [2022-04-15 07:18:53,462 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-15 07:18:53,463 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-15 07:18:53,463 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {689#false} is VALID [2022-04-15 07:18:53,463 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-15 07:18:53,463 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-15 07:18:53,463 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-15 07:18:53,463 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 07:18:53,463 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:18:53,652 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-15 07:18:53,652 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-15 07:18:53,652 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-15 07:18:53,652 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {689#false} is VALID [2022-04-15 07:18:53,653 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-15 07:18:53,653 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-15 07:18:53,653 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {761#(<= 1 main_~b~0)} is VALID [2022-04-15 07:18:53,654 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-15 07:18:53,655 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-15 07:18:53,655 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-15 07:18:53,656 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-15 07:18:53,656 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-15 07:18:53,658 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-15 07:18:53,658 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-15 07:18:53,658 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-15 07:18:53,658 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-15 07:18:53,658 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-15 07:18:53,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-15 07:18:53,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:53,661 INFO L290 TraceCheckUtils]: 8: Hoare triple {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:53,662 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-15 07:18:53,662 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-15 07:18:53,662 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {688#true} is VALID [2022-04-15 07:18:53,662 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-15 07:18:53,662 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-15 07:18:53,662 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-15 07:18:53,663 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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(11, 2);call #Ultimate.allocInit(12, 3); {688#true} is VALID [2022-04-15 07:18:53,663 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-15 07:18:53,663 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 07:18:53,663 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:18:53,663 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [21885652] [2022-04-15 07:18:53,663 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:18:53,663 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [489792091] [2022-04-15 07:18:53,663 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [489792091] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:18:53,664 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:18:53,664 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-15 07:18:53,664 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:18:53,664 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [259960871] [2022-04-15 07:18:53,664 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [259960871] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:53,664 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:53,664 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 07:18:53,664 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [185493493] [2022-04-15 07:18:53,664 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:18:53,665 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-15 07:18:53,665 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:18:53,665 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:53,682 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-15 07:18:53,682 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 07:18:53,682 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:53,682 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 07:18:53,682 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-15 07:18:53,683 INFO L87 Difference]: Start difference. First operand 47 states and 59 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:54,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:54,258 INFO L93 Difference]: Finished difference Result 100 states and 138 transitions. [2022-04-15 07:18:54,258 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 07:18:54,259 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-15 07:18:54,259 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:18:54,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:54,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-15 07:18:54,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:54,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-15 07:18:54,263 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 103 transitions. [2022-04-15 07:18:54,336 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-15 07:18:54,341 INFO L225 Difference]: With dead ends: 100 [2022-04-15 07:18:54,341 INFO L226 Difference]: Without dead ends: 93 [2022-04-15 07:18:54,342 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-15 07:18:54,344 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 71 mSDsluCounter, 169 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 07:18:54,344 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [75 Valid, 216 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 07:18:54,345 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-15 07:18:54,428 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 68. [2022-04-15 07:18:54,428 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:18:54,429 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 07:18:54,431 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 07:18:54,431 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 07:18:54,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:54,441 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-15 07:18:54,441 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-15 07:18:54,442 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:54,442 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:54,442 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 93 states. [2022-04-15 07:18:54,442 INFO L87 Difference]: Start difference. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 93 states. [2022-04-15 07:18:54,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:54,446 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-15 07:18:54,446 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-15 07:18:54,447 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:54,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:54,453 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:18:54,454 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:18:54,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 07:18:54,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 90 transitions. [2022-04-15 07:18:54,459 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 90 transitions. Word has length 28 [2022-04-15 07:18:54,459 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:18:54,459 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 90 transitions. [2022-04-15 07:18:54,460 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:54,460 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 90 transitions. [2022-04-15 07:18:54,546 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:54,546 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 90 transitions. [2022-04-15 07:18:54,546 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-15 07:18:54,546 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:18:54,546 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 07:18:54,568 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-15 07:18:54,763 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-15 07:18:54,763 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:18:54,764 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:18:54,764 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 1 times [2022-04-15 07:18:54,764 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:54,764 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1526705602] [2022-04-15 07:18:54,764 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:18:54,765 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 2 times [2022-04-15 07:18:54,765 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:18:54,765 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1871213315] [2022-04-15 07:18:54,765 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:18:54,765 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:18:54,777 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:18:54,778 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1168277707] [2022-04-15 07:18:54,778 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:18:54,778 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:18:54,778 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:18:54,779 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-15 07:18:54,780 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-15 07:18:54,822 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:18:54,823 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:18:54,828 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-15 07:18:54,835 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:54,836 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:18:55,081 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-15 07:18:55,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#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(11, 2);call #Ultimate.allocInit(12, 3); {1396#true} is VALID [2022-04-15 07:18:55,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-15 07:18:55,081 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-15 07:18:55,081 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-15 07:18:55,082 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {1396#true} is VALID [2022-04-15 07:18:55,082 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-15 07:18:55,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:18:55,095 INFO L290 TraceCheckUtils]: 8: Hoare triple {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:55,095 INFO L290 TraceCheckUtils]: 9: Hoare triple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:55,096 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} {1396#true} #91#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-15 07:18:55,096 INFO L272 TraceCheckUtils]: 11: Hoare triple {1433#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-15 07:18:55,096 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-15 07:18:55,096 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-15 07:18:55,096 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-15 07:18:55,097 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1433#(<= 1 main_~x~0)} #93#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-15 07:18:55,097 INFO L290 TraceCheckUtils]: 16: Hoare triple {1433#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 07:18:55,098 INFO L290 TraceCheckUtils]: 17: Hoare triple {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 07:18:55,098 INFO L290 TraceCheckUtils]: 18: Hoare triple {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:18:55,099 INFO L290 TraceCheckUtils]: 19: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:18:55,099 INFO L290 TraceCheckUtils]: 20: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:18:55,100 INFO L290 TraceCheckUtils]: 21: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 07:18:55,100 INFO L290 TraceCheckUtils]: 22: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 07:18:55,100 INFO L290 TraceCheckUtils]: 23: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 07:18:55,101 INFO L290 TraceCheckUtils]: 24: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 07:18:55,101 INFO L290 TraceCheckUtils]: 25: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 07:18:55,102 INFO L290 TraceCheckUtils]: 26: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 07:18:55,102 INFO L272 TraceCheckUtils]: 27: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:18:55,103 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:18:55,103 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-15 07:18:55,103 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-15 07:18:55,104 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 07:18:55,104 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:18:55,313 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-15 07:18:55,314 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-15 07:18:55,314 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:18:55,315 INFO L272 TraceCheckUtils]: 27: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:18:55,315 INFO L290 TraceCheckUtils]: 26: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:18:55,316 INFO L290 TraceCheckUtils]: 25: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:18:55,316 INFO L290 TraceCheckUtils]: 24: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:18:55,317 INFO L290 TraceCheckUtils]: 23: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:18:55,317 INFO L290 TraceCheckUtils]: 22: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:18:55,318 INFO L290 TraceCheckUtils]: 21: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:18:55,318 INFO L290 TraceCheckUtils]: 20: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:18:55,319 INFO L290 TraceCheckUtils]: 19: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:18:55,319 INFO L290 TraceCheckUtils]: 18: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:18:55,320 INFO L290 TraceCheckUtils]: 17: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:18:55,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {1396#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:18:55,320 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1396#true} #93#return; {1396#true} is VALID [2022-04-15 07:18:55,320 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-15 07:18:55,320 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-15 07:18:55,320 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-15 07:18:55,320 INFO L272 TraceCheckUtils]: 11: Hoare triple {1396#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-15 07:18:55,321 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1396#true} {1396#true} #91#return; {1396#true} is VALID [2022-04-15 07:18:55,321 INFO L290 TraceCheckUtils]: 9: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-15 07:18:55,321 INFO L290 TraceCheckUtils]: 8: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-15 07:18:55,321 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-15 07:18:55,321 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-15 07:18:55,321 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {1396#true} is VALID [2022-04-15 07:18:55,321 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-15 07:18:55,322 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-15 07:18:55,322 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-15 07:18:55,322 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#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(11, 2);call #Ultimate.allocInit(12, 3); {1396#true} is VALID [2022-04-15 07:18:55,322 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-15 07:18:55,322 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 07:18:55,322 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:18:55,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1871213315] [2022-04-15 07:18:55,323 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:18:55,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1168277707] [2022-04-15 07:18:55,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1168277707] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:18:55,323 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:18:55,323 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 6] total 12 [2022-04-15 07:18:55,323 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:18:55,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1526705602] [2022-04-15 07:18:55,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1526705602] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:55,323 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:55,324 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 07:18:55,324 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [245396838] [2022-04-15 07:18:55,324 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:18:55,324 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-15 07:18:55,324 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:18:55,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:55,346 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-15 07:18:55,346 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 07:18:55,346 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:55,347 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 07:18:55,347 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-15 07:18:55,348 INFO L87 Difference]: Start difference. First operand 68 states and 90 transitions. Second operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:56,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:56,162 INFO L93 Difference]: Finished difference Result 115 states and 154 transitions. [2022-04-15 07:18:56,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 07:18:56,162 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-15 07:18:56,163 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:18:56,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:56,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-15 07:18:56,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:56,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-15 07:18:56,166 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 98 transitions. [2022-04-15 07:18:56,247 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-15 07:18:56,249 INFO L225 Difference]: With dead ends: 115 [2022-04-15 07:18:56,249 INFO L226 Difference]: Without dead ends: 113 [2022-04-15 07:18:56,250 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 50 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2022-04-15 07:18:56,250 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 60 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 234 SdHoareTripleChecker+Invalid, 231 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 07:18:56,250 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 234 Invalid, 231 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 07:18:56,251 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-15 07:18:56,347 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 102. [2022-04-15 07:18:56,347 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:18:56,348 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:18:56,348 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:18:56,348 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:18:56,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:56,352 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-15 07:18:56,353 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-15 07:18:56,353 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:56,353 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:56,354 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-15 07:18:56,354 INFO L87 Difference]: Start difference. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-15 07:18:56,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:56,358 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-15 07:18:56,358 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-15 07:18:56,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:56,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:56,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:18:56,358 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:18:56,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:18:56,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 136 transitions. [2022-04-15 07:18:56,362 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 136 transitions. Word has length 31 [2022-04-15 07:18:56,362 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:18:56,362 INFO L478 AbstractCegarLoop]: Abstraction has 102 states and 136 transitions. [2022-04-15 07:18:56,363 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 07:18:56,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 102 states and 136 transitions. [2022-04-15 07:18:56,484 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:56,485 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 136 transitions. [2022-04-15 07:18:56,485 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 07:18:56,485 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:18:56,485 INFO L499 BasicCegarLoop]: trace histogram [3, 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] [2022-04-15 07:18:56,502 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-15 07:18:56,686 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-15 07:18:56,686 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:18:56,687 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:18:56,687 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 1 times [2022-04-15 07:18:56,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:56,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1028793152] [2022-04-15 07:18:56,687 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:18:56,687 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 2 times [2022-04-15 07:18:56,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:18:56,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [310574415] [2022-04-15 07:18:56,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:18:56,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:18:56,702 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:18:56,703 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [961776248] [2022-04-15 07:18:56,703 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:18:56,703 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:18:56,703 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:18:56,705 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-15 07:18:56,706 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-15 07:18:56,768 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:18:56,768 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:18:56,769 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 07:18:56,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:56,783 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:18:56,983 INFO L272 TraceCheckUtils]: 0: Hoare triple {2259#true} call ULTIMATE.init(); {2259#true} is VALID [2022-04-15 07:18:56,983 INFO L290 TraceCheckUtils]: 1: Hoare triple {2259#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(11, 2);call #Ultimate.allocInit(12, 3); {2259#true} is VALID [2022-04-15 07:18:56,983 INFO L290 TraceCheckUtils]: 2: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-15 07:18:56,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2259#true} {2259#true} #105#return; {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {2259#true} call #t~ret6 := main(); {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {2259#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L272 TraceCheckUtils]: 6: Hoare triple {2259#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L290 TraceCheckUtils]: 7: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L290 TraceCheckUtils]: 8: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L290 TraceCheckUtils]: 9: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2259#true} {2259#true} #91#return; {2259#true} is VALID [2022-04-15 07:18:56,984 INFO L272 TraceCheckUtils]: 11: Hoare triple {2259#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-15 07:18:56,985 INFO L290 TraceCheckUtils]: 12: Hoare triple {2259#true} ~cond := #in~cond; {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:18:56,985 INFO L290 TraceCheckUtils]: 13: Hoare triple {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:56,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:18:56,986 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} {2259#true} #93#return; {2311#(<= 1 main_~y~0)} is VALID [2022-04-15 07:18:56,986 INFO L290 TraceCheckUtils]: 16: Hoare triple {2311#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2315#(<= 1 main_~b~0)} is VALID [2022-04-15 07:18:56,987 INFO L290 TraceCheckUtils]: 17: Hoare triple {2315#(<= 1 main_~b~0)} assume !false; {2315#(<= 1 main_~b~0)} is VALID [2022-04-15 07:18:56,987 INFO L290 TraceCheckUtils]: 18: Hoare triple {2315#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:18:56,988 INFO L290 TraceCheckUtils]: 19: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:18:56,988 INFO L290 TraceCheckUtils]: 20: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:18:56,988 INFO L290 TraceCheckUtils]: 21: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:18:56,988 INFO L272 TraceCheckUtils]: 22: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2259#true} is VALID [2022-04-15 07:18:56,989 INFO L290 TraceCheckUtils]: 23: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-15 07:18:56,989 INFO L290 TraceCheckUtils]: 24: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-15 07:18:56,989 INFO L290 TraceCheckUtils]: 25: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-15 07:18:57,000 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:18:57,000 INFO L272 TraceCheckUtils]: 27: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2259#true} is VALID [2022-04-15 07:18:57,000 INFO L290 TraceCheckUtils]: 28: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-15 07:18:57,001 INFO L290 TraceCheckUtils]: 29: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-15 07:18:57,001 INFO L290 TraceCheckUtils]: 30: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-15 07:18:57,001 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:18:57,002 INFO L272 TraceCheckUtils]: 32: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:18:57,003 INFO L290 TraceCheckUtils]: 33: Hoare triple {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2369#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:18:57,003 INFO L290 TraceCheckUtils]: 34: Hoare triple {2369#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2260#false} is VALID [2022-04-15 07:18:57,003 INFO L290 TraceCheckUtils]: 35: Hoare triple {2260#false} assume !false; {2260#false} is VALID [2022-04-15 07:18:57,003 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-15 07:18:57,003 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 07:18:57,003 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:18:57,005 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [310574415] [2022-04-15 07:18:57,005 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:18:57,005 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [961776248] [2022-04-15 07:18:57,005 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [961776248] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:57,005 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:57,005 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 07:18:57,005 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:18:57,006 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1028793152] [2022-04-15 07:18:57,006 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1028793152] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:18:57,006 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:18:57,006 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 07:18:57,006 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [985742139] [2022-04-15 07:18:57,006 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:18:57,006 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-15 07:18:57,006 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:18:57,007 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:18:57,029 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:57,029 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 07:18:57,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:57,029 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 07:18:57,029 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-15 07:18:57,030 INFO L87 Difference]: Start difference. First operand 102 states and 136 transitions. Second operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:18:57,615 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:57,615 INFO L93 Difference]: Finished difference Result 115 states and 153 transitions. [2022-04-15 07:18:57,615 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 07:18:57,615 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-15 07:18:57,616 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:18:57,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:18:57,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-15 07:18:57,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:18:57,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-15 07:18:57,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 78 transitions. [2022-04-15 07:18:57,681 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:57,683 INFO L225 Difference]: With dead ends: 115 [2022-04-15 07:18:57,683 INFO L226 Difference]: Without dead ends: 113 [2022-04-15 07:18:57,684 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 28 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-15 07:18:57,684 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 41 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 07:18:57,684 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [45 Valid, 209 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 149 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 07:18:57,685 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-15 07:18:57,856 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 112. [2022-04-15 07:18:57,856 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:18:57,857 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:18:57,857 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:18:57,858 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:18:57,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:57,861 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-15 07:18:57,861 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-15 07:18:57,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:57,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:57,862 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-15 07:18:57,862 INFO L87 Difference]: Start difference. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-15 07:18:57,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:18:57,865 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-15 07:18:57,865 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-15 07:18:57,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:18:57,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:18:57,866 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:18:57,866 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:18:57,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:18:57,869 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 150 transitions. [2022-04-15 07:18:57,869 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 150 transitions. Word has length 36 [2022-04-15 07:18:57,869 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:18:57,869 INFO L478 AbstractCegarLoop]: Abstraction has 112 states and 150 transitions. [2022-04-15 07:18:57,870 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:18:57,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 150 transitions. [2022-04-15 07:18:58,017 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:18:58,017 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 150 transitions. [2022-04-15 07:18:58,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 07:18:58,017 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:18:58,018 INFO L499 BasicCegarLoop]: trace histogram [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-15 07:18:58,034 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-15 07:18:58,234 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-15 07:18:58,234 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:18:58,235 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:18:58,235 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 1 times [2022-04-15 07:18:58,235 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:18:58,235 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1244139826] [2022-04-15 07:18:58,235 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:18:58,235 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 2 times [2022-04-15 07:18:58,235 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:18:58,235 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1562092116] [2022-04-15 07:18:58,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:18:58,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:18:58,245 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:18:58,245 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [854066081] [2022-04-15 07:18:58,245 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:18:58,245 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:18:58,246 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:18:58,246 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-15 07:18:58,247 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-15 07:18:58,281 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:18:58,281 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:18:58,282 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 07:18:58,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:18:58,292 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:19:05,736 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#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(11, 2);call #Ultimate.allocInit(12, 3); {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-15 07:19:05,737 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-15 07:19:05,738 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-15 07:19:05,738 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:19:05,738 INFO L290 TraceCheckUtils]: 13: Hoare triple {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:19:05,739 INFO L290 TraceCheckUtils]: 14: Hoare triple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:19:05,739 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} {3063#true} #93#return; {3115#(<= 1 main_~y~0)} is VALID [2022-04-15 07:19:05,740 INFO L290 TraceCheckUtils]: 16: Hoare triple {3115#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:19:05,740 INFO L290 TraceCheckUtils]: 17: Hoare triple {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:19:05,741 INFO L290 TraceCheckUtils]: 18: Hoare triple {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:19:05,741 INFO L290 TraceCheckUtils]: 19: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:19:05,742 INFO L290 TraceCheckUtils]: 20: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:19:05,742 INFO L290 TraceCheckUtils]: 21: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:19:05,743 INFO L290 TraceCheckUtils]: 22: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:19:05,743 INFO L290 TraceCheckUtils]: 23: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:19:05,744 INFO L290 TraceCheckUtils]: 24: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:19:05,744 INFO L290 TraceCheckUtils]: 25: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:19:05,745 INFO L290 TraceCheckUtils]: 26: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:19:05,745 INFO L272 TraceCheckUtils]: 27: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3063#true} is VALID [2022-04-15 07:19:05,745 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-15 07:19:05,745 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-15 07:19:05,745 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-15 07:19:05,746 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:19:05,747 INFO L272 TraceCheckUtils]: 32: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:19:05,747 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:19:05,748 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-15 07:19:05,748 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-15 07:19:05,748 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 07:19:05,748 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:20:32,282 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-15 07:20:32,282 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-15 07:20:32,284 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:20:32,285 INFO L272 TraceCheckUtils]: 32: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:20:32,286 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:20:32,286 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-15 07:20:32,286 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-15 07:20:32,286 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-15 07:20:32,286 INFO L272 TraceCheckUtils]: 27: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3063#true} is VALID [2022-04-15 07:20:32,288 INFO L290 TraceCheckUtils]: 26: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:20:32,288 INFO L290 TraceCheckUtils]: 25: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:20:32,288 INFO L290 TraceCheckUtils]: 24: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:20:32,289 INFO L290 TraceCheckUtils]: 23: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:20:32,289 INFO L290 TraceCheckUtils]: 22: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:20:32,493 INFO L290 TraceCheckUtils]: 21: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:20:32,494 INFO L290 TraceCheckUtils]: 20: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !(~c~0 >= ~b~0); {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-15 07:20:32,494 INFO L290 TraceCheckUtils]: 19: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !false; {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-15 07:20:32,495 INFO L290 TraceCheckUtils]: 18: Hoare triple {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-15 07:20:32,495 INFO L290 TraceCheckUtils]: 17: Hoare triple {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:20:32,496 INFO L290 TraceCheckUtils]: 16: Hoare triple {3063#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:20:32,496 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3063#true} {3063#true} #93#return; {3063#true} is VALID [2022-04-15 07:20:32,496 INFO L290 TraceCheckUtils]: 14: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-15 07:20:32,496 INFO L290 TraceCheckUtils]: 13: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-15 07:20:32,496 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-15 07:20:32,496 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-15 07:20:32,496 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-15 07:20:32,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#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(11, 2);call #Ultimate.allocInit(12, 3); {3063#true} is VALID [2022-04-15 07:20:32,497 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-15 07:20:32,498 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 07:20:32,498 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:20:32,498 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1562092116] [2022-04-15 07:20:32,498 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:20:32,498 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [854066081] [2022-04-15 07:20:32,498 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [854066081] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:20:32,498 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:20:32,498 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-15 07:20:32,499 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:20:32,499 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1244139826] [2022-04-15 07:20:32,499 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1244139826] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:20:32,499 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:20:32,499 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 07:20:32,499 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2119649420] [2022-04-15 07:20:32,499 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:20:32,499 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-15 07:20:32,500 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:20:32,500 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 07:20:32,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:32,524 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 07:20:32,524 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:32,525 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 07:20:32,525 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=127, Unknown=0, NotChecked=0, Total=156 [2022-04-15 07:20:32,525 INFO L87 Difference]: Start difference. First operand 112 states and 150 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 07:20:33,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:33,382 INFO L93 Difference]: Finished difference Result 121 states and 158 transitions. [2022-04-15 07:20:33,383 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 07:20:33,383 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-15 07:20:33,383 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:20:33,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 07:20:33,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-15 07:20:33,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 07:20:33,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-15 07:20:33,386 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-15 07:20:33,464 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:33,466 INFO L225 Difference]: With dead ends: 121 [2022-04-15 07:20:33,466 INFO L226 Difference]: Without dead ends: 119 [2022-04-15 07:20:33,466 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=44, Invalid=196, Unknown=0, NotChecked=0, Total=240 [2022-04-15 07:20:33,467 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 51 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 247 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 265 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 247 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 07:20:33,467 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [62 Valid, 230 Invalid, 265 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 247 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 07:20:33,467 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-15 07:20:33,653 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 116. [2022-04-15 07:20:33,654 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:20:33,654 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:20:33,655 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:20:33,655 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:20:33,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:33,659 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-15 07:20:33,659 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-15 07:20:33,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:33,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:33,660 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-15 07:20:33,660 INFO L87 Difference]: Start difference. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-15 07:20:33,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:33,663 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-15 07:20:33,663 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-15 07:20:33,664 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:33,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:33,665 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:20:33,665 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:20:33,665 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 07:20:33,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 153 transitions. [2022-04-15 07:20:33,668 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 153 transitions. Word has length 36 [2022-04-15 07:20:33,669 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:20:33,669 INFO L478 AbstractCegarLoop]: Abstraction has 116 states and 153 transitions. [2022-04-15 07:20:33,669 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 07:20:33,669 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 116 states and 153 transitions. [2022-04-15 07:20:33,835 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:33,835 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 153 transitions. [2022-04-15 07:20:33,836 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 07:20:33,836 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:20:33,836 INFO L499 BasicCegarLoop]: trace histogram [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-15 07:20:33,855 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-15 07:20:34,036 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-15 07:20:34,037 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:20:34,037 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:20:34,037 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 3 times [2022-04-15 07:20:34,037 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:34,037 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1806056470] [2022-04-15 07:20:34,038 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:20:34,038 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 4 times [2022-04-15 07:20:34,038 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:20:34,038 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [597486160] [2022-04-15 07:20:34,038 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:20:34,038 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:20:34,054 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:20:34,054 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [940819795] [2022-04-15 07:20:34,054 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 07:20:34,054 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:20:34,054 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:20:34,055 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-15 07:20:34,056 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-15 07:20:34,105 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 07:20:34,105 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:20:34,106 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 07:20:34,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:20:34,115 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:20:34,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {4009#true} call ULTIMATE.init(); {4009#true} is VALID [2022-04-15 07:20:34,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {4009#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(11, 2);call #Ultimate.allocInit(12, 3); {4009#true} is VALID [2022-04-15 07:20:34,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-15 07:20:34,216 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4009#true} {4009#true} #105#return; {4009#true} is VALID [2022-04-15 07:20:34,216 INFO L272 TraceCheckUtils]: 4: Hoare triple {4009#true} call #t~ret6 := main(); {4009#true} is VALID [2022-04-15 07:20:34,216 INFO L290 TraceCheckUtils]: 5: Hoare triple {4009#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {4009#true} is VALID [2022-04-15 07:20:34,216 INFO L272 TraceCheckUtils]: 6: Hoare triple {4009#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-15 07:20:34,216 INFO L290 TraceCheckUtils]: 7: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 9: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4009#true} {4009#true} #91#return; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L272 TraceCheckUtils]: 11: Hoare triple {4009#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 12: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 13: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4009#true} {4009#true} #93#return; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {4009#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 17: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-15 07:20:34,217 INFO L290 TraceCheckUtils]: 18: Hoare triple {4009#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4009#true} is VALID [2022-04-15 07:20:34,218 INFO L290 TraceCheckUtils]: 19: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-15 07:20:34,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {4009#true} assume !(~c~0 >= ~b~0); {4074#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 07:20:34,220 INFO L290 TraceCheckUtils]: 21: Hoare triple {4074#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 07:20:34,221 INFO L290 TraceCheckUtils]: 22: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !false; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 07:20:34,222 INFO L290 TraceCheckUtils]: 23: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 07:20:34,222 INFO L290 TraceCheckUtils]: 24: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !false; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 25: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 26: Hoare triple {4010#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 27: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 28: Hoare triple {4010#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {4010#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 31: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L272 TraceCheckUtils]: 32: Hoare triple {4010#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 33: Hoare triple {4010#false} ~cond := #in~cond; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 34: Hoare triple {4010#false} assume 0 == ~cond; {4010#false} is VALID [2022-04-15 07:20:34,223 INFO L290 TraceCheckUtils]: 35: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-15 07:20:34,224 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 07:20:34,224 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 07:20:34,224 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:20:34,224 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [597486160] [2022-04-15 07:20:34,224 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:20:34,224 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [940819795] [2022-04-15 07:20:34,224 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [940819795] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:20:34,224 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:20:34,224 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:20:34,224 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:20:34,224 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1806056470] [2022-04-15 07:20:34,225 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1806056470] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:20:34,225 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:20:34,225 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:20:34,225 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [843752499] [2022-04-15 07:20:34,225 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:20:34,225 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 36 [2022-04-15 07:20:34,225 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:20:34,225 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:20:34,245 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:34,245 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 07:20:34,245 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:34,245 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 07:20:34,245 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 07:20:34,246 INFO L87 Difference]: Start difference. First operand 116 states and 153 transitions. Second operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:20:34,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:34,671 INFO L93 Difference]: Finished difference Result 165 states and 227 transitions. [2022-04-15 07:20:34,671 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 07:20:34,672 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 36 [2022-04-15 07:20:34,672 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:20:34,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:20:34,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-15 07:20:34,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:20:34,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-15 07:20:34,674 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 97 transitions. [2022-04-15 07:20:34,747 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:34,749 INFO L225 Difference]: With dead ends: 165 [2022-04-15 07:20:34,749 INFO L226 Difference]: Without dead ends: 127 [2022-04-15 07:20:34,750 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-15 07:20:34,750 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 18 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 07:20:34,750 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 135 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 07:20:34,751 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-04-15 07:20:34,909 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 101. [2022-04-15 07:20:34,909 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:20:34,909 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:20:34,910 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:20:34,910 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:20:34,913 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:34,913 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-15 07:20:34,913 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-15 07:20:34,914 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:34,914 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:34,914 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-15 07:20:34,914 INFO L87 Difference]: Start difference. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-15 07:20:34,918 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:34,918 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-15 07:20:34,918 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-15 07:20:34,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:34,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:34,918 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:20:34,919 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:20:34,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-15 07:20:34,921 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 128 transitions. [2022-04-15 07:20:34,921 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 128 transitions. Word has length 36 [2022-04-15 07:20:34,921 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:20:34,921 INFO L478 AbstractCegarLoop]: Abstraction has 101 states and 128 transitions. [2022-04-15 07:20:34,922 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 07:20:34,922 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 101 states and 128 transitions. [2022-04-15 07:20:35,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:35,062 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 128 transitions. [2022-04-15 07:20:35,062 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-15 07:20:35,062 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:20:35,062 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 07:20:35,081 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-15 07:20:35,263 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-15 07:20:35,263 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:20:35,263 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:20:35,263 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 1 times [2022-04-15 07:20:35,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:35,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [378755730] [2022-04-15 07:20:35,264 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:20:35,264 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 2 times [2022-04-15 07:20:35,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:20:35,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1853209787] [2022-04-15 07:20:35,264 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:20:35,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:20:35,273 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:20:35,273 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2010245762] [2022-04-15 07:20:35,274 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:20:35,274 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:20:35,274 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:20:35,275 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-15 07:20:35,275 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-15 07:20:35,309 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:20:35,310 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:20:35,310 INFO L263 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 07:20:35,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:20:35,319 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:20:35,432 INFO L272 TraceCheckUtils]: 0: Hoare triple {4912#true} call ULTIMATE.init(); {4912#true} is VALID [2022-04-15 07:20:35,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {4912#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(11, 2);call #Ultimate.allocInit(12, 3); {4912#true} is VALID [2022-04-15 07:20:35,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4912#true} {4912#true} #105#return; {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L272 TraceCheckUtils]: 4: Hoare triple {4912#true} call #t~ret6 := main(); {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L290 TraceCheckUtils]: 5: Hoare triple {4912#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L272 TraceCheckUtils]: 6: Hoare triple {4912#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L290 TraceCheckUtils]: 7: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L290 TraceCheckUtils]: 8: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L290 TraceCheckUtils]: 9: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4912#true} {4912#true} #91#return; {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L272 TraceCheckUtils]: 11: Hoare triple {4912#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L290 TraceCheckUtils]: 12: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-15 07:20:35,433 INFO L290 TraceCheckUtils]: 13: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-15 07:20:35,434 INFO L290 TraceCheckUtils]: 14: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-15 07:20:35,434 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4912#true} {4912#true} #93#return; {4912#true} is VALID [2022-04-15 07:20:35,434 INFO L290 TraceCheckUtils]: 16: Hoare triple {4912#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4912#true} is VALID [2022-04-15 07:20:35,434 INFO L290 TraceCheckUtils]: 17: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-15 07:20:35,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {4912#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4912#true} is VALID [2022-04-15 07:20:35,434 INFO L290 TraceCheckUtils]: 19: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-15 07:20:35,434 INFO L290 TraceCheckUtils]: 20: Hoare triple {4912#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 07:20:35,435 INFO L290 TraceCheckUtils]: 21: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 07:20:35,435 INFO L272 TraceCheckUtils]: 22: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4912#true} is VALID [2022-04-15 07:20:35,435 INFO L290 TraceCheckUtils]: 23: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-15 07:20:35,435 INFO L290 TraceCheckUtils]: 24: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-15 07:20:35,435 INFO L290 TraceCheckUtils]: 25: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-15 07:20:35,436 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #95#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 07:20:35,436 INFO L272 TraceCheckUtils]: 27: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4912#true} is VALID [2022-04-15 07:20:35,436 INFO L290 TraceCheckUtils]: 28: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-15 07:20:35,436 INFO L290 TraceCheckUtils]: 29: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-15 07:20:35,436 INFO L290 TraceCheckUtils]: 30: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-15 07:20:35,437 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #97#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 07:20:35,437 INFO L272 TraceCheckUtils]: 32: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4912#true} is VALID [2022-04-15 07:20:35,437 INFO L290 TraceCheckUtils]: 33: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-15 07:20:35,437 INFO L290 TraceCheckUtils]: 34: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-15 07:20:35,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-15 07:20:35,438 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #99#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 07:20:35,439 INFO L272 TraceCheckUtils]: 37: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:20:35,439 INFO L290 TraceCheckUtils]: 38: Hoare triple {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5033#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:20:35,439 INFO L290 TraceCheckUtils]: 39: Hoare triple {5033#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4913#false} is VALID [2022-04-15 07:20:35,440 INFO L290 TraceCheckUtils]: 40: Hoare triple {4913#false} assume !false; {4913#false} is VALID [2022-04-15 07:20:35,440 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 07:20:35,440 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 07:20:35,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:20:35,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1853209787] [2022-04-15 07:20:35,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:20:35,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2010245762] [2022-04-15 07:20:35,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2010245762] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:20:35,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:20:35,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:20:35,441 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:20:35,441 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [378755730] [2022-04-15 07:20:35,441 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [378755730] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:20:35,441 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:20:35,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:20:35,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1916007360] [2022-04-15 07:20:35,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:20:35,441 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-15 07:20:35,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:20:35,441 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 07:20:35,464 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-15 07:20:35,464 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 07:20:35,464 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:35,464 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 07:20:35,464 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 07:20:35,464 INFO L87 Difference]: Start difference. First operand 101 states and 128 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 07:20:35,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:35,896 INFO L93 Difference]: Finished difference Result 151 states and 206 transitions. [2022-04-15 07:20:35,896 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 07:20:35,897 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-15 07:20:35,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:20:35,897 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 07:20:35,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 07:20:35,898 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 07:20:35,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 07:20:35,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-15 07:20:35,941 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:35,944 INFO L225 Difference]: With dead ends: 151 [2022-04-15 07:20:35,944 INFO L226 Difference]: Without dead ends: 149 [2022-04-15 07:20:35,944 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 37 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-15 07:20:35,945 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 07:20:35,945 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 136 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 07:20:35,945 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2022-04-15 07:20:36,157 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 130. [2022-04-15 07:20:36,157 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:20:36,157 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 07:20:36,158 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 07:20:36,158 INFO L87 Difference]: Start difference. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 07:20:36,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:36,162 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-15 07:20:36,162 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-15 07:20:36,163 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:36,163 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:36,163 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-15 07:20:36,165 INFO L87 Difference]: Start difference. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-15 07:20:36,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:36,169 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-15 07:20:36,169 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-15 07:20:36,170 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:36,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:36,170 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:20:36,170 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:20:36,171 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 07:20:36,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 176 transitions. [2022-04-15 07:20:36,175 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 176 transitions. Word has length 41 [2022-04-15 07:20:36,175 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:20:36,175 INFO L478 AbstractCegarLoop]: Abstraction has 130 states and 176 transitions. [2022-04-15 07:20:36,176 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-15 07:20:36,176 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 176 transitions. [2022-04-15 07:20:36,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:36,411 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 176 transitions. [2022-04-15 07:20:36,411 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-15 07:20:36,411 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:20:36,411 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 07:20:36,428 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-15 07:20:36,625 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-15 07:20:36,625 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:20:36,626 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:20:36,626 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 1 times [2022-04-15 07:20:36,626 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:36,626 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1473697059] [2022-04-15 07:20:36,626 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:20:36,626 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 2 times [2022-04-15 07:20:36,626 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:20:36,626 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [817439426] [2022-04-15 07:20:36,627 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:20:36,627 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:20:36,636 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:20:36,636 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1417292606] [2022-04-15 07:20:36,636 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:20:36,637 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:20:36,637 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:20:36,637 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-15 07:20:36,638 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-15 07:20:36,671 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:20:36,671 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:20:36,672 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 07:20:36,681 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:20:36,682 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:20:36,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-15 07:20:36,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#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(11, 2);call #Ultimate.allocInit(12, 3); {5901#true} is VALID [2022-04-15 07:20:36,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:36,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-15 07:20:36,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-15 07:20:36,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {5901#true} is VALID [2022-04-15 07:20:36,907 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:36,908 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:20:36,908 INFO L290 TraceCheckUtils]: 8: Hoare triple {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:20:36,909 INFO L290 TraceCheckUtils]: 9: Hoare triple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:20:36,909 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} {5901#true} #91#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-15 07:20:36,909 INFO L272 TraceCheckUtils]: 11: Hoare triple {5938#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:36,909 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-15 07:20:36,910 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-15 07:20:36,910 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:36,911 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5938#(<= 1 main_~x~0)} #93#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-15 07:20:36,915 INFO L290 TraceCheckUtils]: 16: Hoare triple {5938#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5957#(<= 1 main_~a~0)} is VALID [2022-04-15 07:20:36,917 INFO L290 TraceCheckUtils]: 17: Hoare triple {5957#(<= 1 main_~a~0)} assume !false; {5957#(<= 1 main_~a~0)} is VALID [2022-04-15 07:20:36,917 INFO L290 TraceCheckUtils]: 18: Hoare triple {5957#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5964#(<= 1 main_~c~0)} is VALID [2022-04-15 07:20:36,917 INFO L290 TraceCheckUtils]: 19: Hoare triple {5964#(<= 1 main_~c~0)} assume !false; {5964#(<= 1 main_~c~0)} is VALID [2022-04-15 07:20:36,918 INFO L290 TraceCheckUtils]: 20: Hoare triple {5964#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5964#(<= 1 main_~c~0)} is VALID [2022-04-15 07:20:36,918 INFO L290 TraceCheckUtils]: 21: Hoare triple {5964#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5974#(<= 1 main_~b~0)} is VALID [2022-04-15 07:20:36,918 INFO L290 TraceCheckUtils]: 22: Hoare triple {5974#(<= 1 main_~b~0)} assume !false; {5974#(<= 1 main_~b~0)} is VALID [2022-04-15 07:20:36,919 INFO L290 TraceCheckUtils]: 23: Hoare triple {5974#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:20:36,919 INFO L290 TraceCheckUtils]: 24: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:20:36,920 INFO L290 TraceCheckUtils]: 25: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:20:36,920 INFO L290 TraceCheckUtils]: 26: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:20:36,920 INFO L272 TraceCheckUtils]: 27: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:36,920 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-15 07:20:36,920 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-15 07:20:36,920 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:36,921 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:20:36,921 INFO L272 TraceCheckUtils]: 32: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:36,921 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-15 07:20:36,921 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-15 07:20:36,921 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:36,922 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 07:20:36,923 INFO L272 TraceCheckUtils]: 37: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:20:36,923 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:20:36,923 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-15 07:20:36,923 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-15 07:20:36,924 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 7 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-15 07:20:36,924 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:20:37,109 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-15 07:20:37,110 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-15 07:20:37,110 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:20:37,111 INFO L272 TraceCheckUtils]: 37: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:20:37,112 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:20:37,112 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:37,112 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-15 07:20:37,112 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-15 07:20:37,112 INFO L272 TraceCheckUtils]: 32: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:37,113 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:20:37,113 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:37,113 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-15 07:20:37,113 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-15 07:20:37,113 INFO L272 TraceCheckUtils]: 27: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:37,113 INFO L290 TraceCheckUtils]: 26: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:20:37,114 INFO L290 TraceCheckUtils]: 25: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:20:37,114 INFO L290 TraceCheckUtils]: 24: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:20:37,114 INFO L290 TraceCheckUtils]: 23: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:20:37,114 INFO L290 TraceCheckUtils]: 22: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-15 07:20:37,114 INFO L290 TraceCheckUtils]: 21: Hoare triple {5901#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5901#true} is VALID [2022-04-15 07:20:37,114 INFO L290 TraceCheckUtils]: 20: Hoare triple {5901#true} assume !(~c~0 >= ~b~0); {5901#true} is VALID [2022-04-15 07:20:37,114 INFO L290 TraceCheckUtils]: 19: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 18: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 17: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 16: Hoare triple {5901#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5901#true} #93#return; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L272 TraceCheckUtils]: 11: Hoare triple {5901#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5901#true} {5901#true} #91#return; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 9: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 8: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-15 07:20:37,115 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-15 07:20:37,116 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {5901#true} is VALID [2022-04-15 07:20:37,116 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-15 07:20:37,116 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-15 07:20:37,116 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-15 07:20:37,116 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#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(11, 2);call #Ultimate.allocInit(12, 3); {5901#true} is VALID [2022-04-15 07:20:37,116 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-15 07:20:37,116 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-15 07:20:37,116 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:20:37,116 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [817439426] [2022-04-15 07:20:37,116 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:20:37,116 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1417292606] [2022-04-15 07:20:37,117 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1417292606] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 07:20:37,117 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 07:20:37,117 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [11] total 12 [2022-04-15 07:20:37,117 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:20:37,117 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1473697059] [2022-04-15 07:20:37,117 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1473697059] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:20:37,117 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:20:37,117 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:20:37,117 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1833426221] [2022-04-15 07:20:37,117 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:20:37,118 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 41 [2022-04-15 07:20:37,118 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:20:37,118 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:20:37,143 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:37,143 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 07:20:37,143 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:37,144 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 07:20:37,144 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-04-15 07:20:37,144 INFO L87 Difference]: Start difference. First operand 130 states and 176 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:20:37,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:37,609 INFO L93 Difference]: Finished difference Result 173 states and 245 transitions. [2022-04-15 07:20:37,609 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 07:20:37,609 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 41 [2022-04-15 07:20:37,609 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:20:37,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:20:37,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 07:20:37,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:20:37,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 07:20:37,611 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-15 07:20:37,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:37,662 INFO L225 Difference]: With dead ends: 173 [2022-04-15 07:20:37,662 INFO L226 Difference]: Without dead ends: 171 [2022-04-15 07:20:37,663 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=129, Unknown=0, NotChecked=0, Total=156 [2022-04-15 07:20:37,663 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 8 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 07:20:37,663 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 121 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 07:20:37,664 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-04-15 07:20:38,017 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 167. [2022-04-15 07:20:38,018 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:20:38,018 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-15 07:20:38,018 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-15 07:20:38,019 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-15 07:20:38,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:38,024 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-15 07:20:38,024 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-15 07:20:38,025 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:38,025 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:38,025 INFO L74 IsIncluded]: Start isIncluded. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-15 07:20:38,026 INFO L87 Difference]: Start difference. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-15 07:20:38,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:20:38,031 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-15 07:20:38,031 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-15 07:20:38,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:20:38,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:20:38,032 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:20:38,032 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:20:38,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-15 07:20:38,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 239 transitions. [2022-04-15 07:20:38,036 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 239 transitions. Word has length 41 [2022-04-15 07:20:38,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:20:38,037 INFO L478 AbstractCegarLoop]: Abstraction has 167 states and 239 transitions. [2022-04-15 07:20:38,037 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 07:20:38,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 167 states and 239 transitions. [2022-04-15 07:20:38,352 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:20:38,353 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 239 transitions. [2022-04-15 07:20:38,353 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-15 07:20:38,353 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:20:38,353 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1] [2022-04-15 07:20:38,369 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-15 07:20:38,555 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-15 07:20:38,556 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:20:38,556 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:20:38,556 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 1 times [2022-04-15 07:20:38,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:20:38,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [445892894] [2022-04-15 07:20:38,556 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:20:38,557 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 2 times [2022-04-15 07:20:38,557 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:20:38,557 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [599308753] [2022-04-15 07:20:38,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:20:38,557 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:20:38,568 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:20:38,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [400759690] [2022-04-15 07:20:38,569 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:20:38,569 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:20:38,569 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:20:38,570 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-15 07:20:38,571 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-15 07:20:38,612 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:20:38,612 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:20:38,613 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-15 07:20:38,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:20:38,623 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:20:39,341 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#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(11, 2);call #Ultimate.allocInit(12, 3); {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:20:39,342 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:20:39,343 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-15 07:20:39,343 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:20:39,343 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:20:39,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:20:39,343 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:20:39,343 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-15 07:20:39,343 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,344 INFO L290 TraceCheckUtils]: 18: Hoare triple {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,345 INFO L290 TraceCheckUtils]: 19: Hoare triple {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,345 INFO L290 TraceCheckUtils]: 20: Hoare triple {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,345 INFO L290 TraceCheckUtils]: 21: Hoare triple {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,346 INFO L272 TraceCheckUtils]: 22: Hoare triple {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:20:39,346 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:20:39,346 INFO L290 TraceCheckUtils]: 24: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:20:39,346 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:20:39,348 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,348 INFO L272 TraceCheckUtils]: 27: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:20:39,348 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:20:39,348 INFO L290 TraceCheckUtils]: 29: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:20:39,349 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:20:39,349 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,349 INFO L272 TraceCheckUtils]: 32: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:20:39,350 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:20:39,350 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:20:39,350 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:20:39,350 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,351 INFO L272 TraceCheckUtils]: 37: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:20:39,351 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:20:39,351 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:20:39,351 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:20:39,352 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,352 INFO L290 TraceCheckUtils]: 42: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,353 INFO L290 TraceCheckUtils]: 43: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,353 INFO L290 TraceCheckUtils]: 44: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,353 INFO L290 TraceCheckUtils]: 45: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:20:39,354 INFO L290 TraceCheckUtils]: 46: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 07:20:39,354 INFO L290 TraceCheckUtils]: 47: Hoare triple {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 07:20:39,355 INFO L290 TraceCheckUtils]: 48: Hoare triple {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {7339#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-15 07:20:39,356 INFO L272 TraceCheckUtils]: 49: Hoare triple {7339#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:20:39,356 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:20:39,356 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-15 07:20:39,356 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-15 07:20:39,357 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 07:20:39,357 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:21:11,912 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-15 07:21:11,913 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-15 07:21:11,913 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:21:11,914 INFO L272 TraceCheckUtils]: 49: Hoare triple {7363#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:21:11,914 INFO L290 TraceCheckUtils]: 48: Hoare triple {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {7363#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:11,915 INFO L290 TraceCheckUtils]: 47: Hoare triple {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 07:21:12,241 INFO L290 TraceCheckUtils]: 46: Hoare triple {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 07:21:12,242 INFO L290 TraceCheckUtils]: 45: Hoare triple {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,242 INFO L290 TraceCheckUtils]: 44: Hoare triple {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,272 INFO L290 TraceCheckUtils]: 43: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,273 INFO L290 TraceCheckUtils]: 42: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,273 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #101#return; {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,274 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:21:12,274 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:21:12,274 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:21:12,274 INFO L272 TraceCheckUtils]: 37: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:21:12,275 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #99#return; {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,275 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:21:12,275 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:21:12,275 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:21:12,275 INFO L272 TraceCheckUtils]: 32: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:21:12,276 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7421#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,276 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:12,276 INFO L290 TraceCheckUtils]: 29: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:12,277 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:21:12,277 INFO L272 TraceCheckUtils]: 27: Hoare triple {7421#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:21:12,278 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {7421#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,278 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:12,279 INFO L290 TraceCheckUtils]: 24: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:12,279 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:21:12,279 INFO L272 TraceCheckUtils]: 22: Hoare triple {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:21:12,279 INFO L290 TraceCheckUtils]: 21: Hoare triple {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:21:12,281 INFO L290 TraceCheckUtils]: 19: Hoare triple {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-15 07:21:12,282 INFO L290 TraceCheckUtils]: 18: Hoare triple {7182#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-15 07:21:12,282 INFO L290 TraceCheckUtils]: 17: Hoare triple {7182#true} assume !false; {7182#true} is VALID [2022-04-15 07:21:12,287 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7182#true} is VALID [2022-04-15 07:21:12,287 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-15 07:21:12,287 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:21:12,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:21:12,287 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:21:12,287 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:21:12,287 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#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(11, 2);call #Ultimate.allocInit(12, 3); {7182#true} is VALID [2022-04-15 07:21:12,288 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-15 07:21:12,289 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 07:21:12,289 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:21:12,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [599308753] [2022-04-15 07:21:12,317 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:21:12,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [400759690] [2022-04-15 07:21:12,317 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [400759690] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:21:12,317 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:21:12,317 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-15 07:21:12,318 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:21:12,318 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [445892894] [2022-04-15 07:21:12,318 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [445892894] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:21:12,318 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:21:12,318 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 07:21:12,318 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1290945320] [2022-04-15 07:21:12,318 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:21:12,319 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 53 [2022-04-15 07:21:12,319 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:21:12,319 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 07:21:12,355 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-15 07:21:12,355 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 07:21:12,355 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:12,356 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 07:21:12,356 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-15 07:21:12,356 INFO L87 Difference]: Start difference. First operand 167 states and 239 transitions. Second operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 07:21:14,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:14,421 INFO L93 Difference]: Finished difference Result 230 states and 330 transitions. [2022-04-15 07:21:14,421 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 07:21:14,422 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 53 [2022-04-15 07:21:14,422 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:21:14,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 07:21:14,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-15 07:21:14,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 07:21:14,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-15 07:21:14,425 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 126 transitions. [2022-04-15 07:21:14,550 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:14,554 INFO L225 Difference]: With dead ends: 230 [2022-04-15 07:21:14,554 INFO L226 Difference]: Without dead ends: 227 [2022-04-15 07:21:14,555 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 85 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-15 07:21:14,555 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 49 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 549 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 595 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 549 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-15 07:21:14,555 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 245 Invalid, 595 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 549 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-15 07:21:14,556 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states. [2022-04-15 07:21:14,935 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 224. [2022-04-15 07:21:14,935 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:21:14,935 INFO L82 GeneralOperation]: Start isEquivalent. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:14,936 INFO L74 IsIncluded]: Start isIncluded. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:14,936 INFO L87 Difference]: Start difference. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:14,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:14,942 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-15 07:21:14,942 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-15 07:21:14,943 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:14,943 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:14,944 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-15 07:21:14,944 INFO L87 Difference]: Start difference. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-15 07:21:14,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:14,950 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-15 07:21:14,950 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-15 07:21:14,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:14,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:14,951 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:21:14,951 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:21:14,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:14,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 323 transitions. [2022-04-15 07:21:14,958 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 323 transitions. Word has length 53 [2022-04-15 07:21:14,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:21:14,958 INFO L478 AbstractCegarLoop]: Abstraction has 224 states and 323 transitions. [2022-04-15 07:21:14,959 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 07:21:14,959 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 323 transitions. [2022-04-15 07:21:15,423 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 323 edges. 323 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:15,423 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 323 transitions. [2022-04-15 07:21:15,424 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-15 07:21:15,424 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:21:15,424 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 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] [2022-04-15 07:21:15,441 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-15 07:21:15,632 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-15 07:21:15,632 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:21:15,633 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:21:15,633 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 3 times [2022-04-15 07:21:15,633 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:15,633 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [975314894] [2022-04-15 07:21:15,633 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:21:15,633 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 4 times [2022-04-15 07:21:15,633 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:21:15,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [118312796] [2022-04-15 07:21:15,634 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:21:15,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:21:15,670 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:21:15,670 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [179314599] [2022-04-15 07:21:15,670 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 07:21:15,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:21:15,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:21:15,678 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-15 07:21:15,682 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-15 07:21:15,718 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 07:21:15,718 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:21:15,719 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-15 07:21:15,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:21:15,732 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:21:15,934 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#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(11, 2);call #Ultimate.allocInit(12, 3); {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-15 07:21:15,935 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-15 07:21:15,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 07:21:15,937 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 07:21:15,937 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 07:21:15,937 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 07:21:15,938 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 07:21:15,938 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:15,938 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:15,938 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:15,938 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:15,939 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:15,939 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:15,952 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:15,952 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:15,952 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:15,952 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:15,952 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:15,953 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:15,953 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:15,953 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:15,953 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:15,953 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:15,953 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:15,954 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:15,954 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:15,954 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:15,954 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:15,954 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:15,955 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:15,955 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-15 07:21:15,956 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-15 07:21:15,956 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-15 07:21:15,956 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {9053#(< 0 main_~b~0)} is VALID [2022-04-15 07:21:15,957 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-15 07:21:15,957 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-15 07:21:15,957 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8891#false} is VALID [2022-04-15 07:21:15,957 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-15 07:21:15,957 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-15 07:21:15,957 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-15 07:21:15,957 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 07:21:15,958 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:21:16,167 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-15 07:21:16,167 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-15 07:21:16,167 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-15 07:21:16,167 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8891#false} is VALID [2022-04-15 07:21:16,168 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-15 07:21:16,168 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-15 07:21:16,168 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {9053#(< 0 main_~b~0)} is VALID [2022-04-15 07:21:16,169 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-15 07:21:16,169 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-15 07:21:16,169 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-15 07:21:16,170 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:16,170 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:16,170 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:16,170 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:16,170 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:16,171 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:16,171 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:16,171 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:16,171 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:16,171 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:16,171 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:16,172 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:16,172 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:16,172 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:16,172 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:16,172 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:16,173 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:16,173 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:16,173 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:16,173 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:16,173 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:16,173 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:16,174 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 07:21:16,174 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 07:21:16,174 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 07:21:16,174 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 07:21:16,175 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 07:21:16,175 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 07:21:16,175 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-15 07:21:16,175 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-15 07:21:16,175 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-15 07:21:16,175 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-15 07:21:16,176 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-15 07:21:16,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#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(11, 2);call #Ultimate.allocInit(12, 3); {8890#true} is VALID [2022-04-15 07:21:16,177 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-15 07:21:16,177 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 07:21:16,177 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:21:16,177 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [118312796] [2022-04-15 07:21:16,177 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:21:16,177 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [179314599] [2022-04-15 07:21:16,177 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [179314599] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:21:16,177 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:21:16,177 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-15 07:21:16,178 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:21:16,178 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [975314894] [2022-04-15 07:21:16,178 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [975314894] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:21:16,178 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:21:16,178 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 07:21:16,178 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [386902868] [2022-04-15 07:21:16,178 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:21:16,178 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 58 [2022-04-15 07:21:16,179 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:21:16,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:16,217 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-15 07:21:16,218 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 07:21:16,218 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:16,218 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 07:21:16,218 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-15 07:21:16,218 INFO L87 Difference]: Start difference. First operand 224 states and 323 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:17,991 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:17,991 INFO L93 Difference]: Finished difference Result 335 states and 499 transitions. [2022-04-15 07:21:17,991 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 07:21:17,991 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 58 [2022-04-15 07:21:17,991 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:21:17,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:17,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-15 07:21:17,993 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:17,995 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-15 07:21:17,995 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 153 transitions. [2022-04-15 07:21:18,113 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:18,120 INFO L225 Difference]: With dead ends: 335 [2022-04-15 07:21:18,121 INFO L226 Difference]: Without dead ends: 328 [2022-04-15 07:21:18,121 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 112 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-15 07:21:18,121 INFO L913 BasicCegarLoop]: 82 mSDtfsCounter, 46 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 83 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 283 SdHoareTripleChecker+Invalid, 363 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 83 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 07:21:18,122 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 283 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [83 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 07:21:18,122 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-15 07:21:18,617 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 243. [2022-04-15 07:21:18,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:21:18,617 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:18,618 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:18,618 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:18,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:18,628 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-15 07:21:18,628 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-15 07:21:18,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:18,629 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:18,630 INFO L74 IsIncluded]: Start isIncluded. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-15 07:21:18,630 INFO L87 Difference]: Start difference. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-15 07:21:18,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:18,640 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-15 07:21:18,640 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-15 07:21:18,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:18,641 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:18,641 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:21:18,642 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:21:18,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:18,648 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 243 states to 243 states and 350 transitions. [2022-04-15 07:21:18,648 INFO L78 Accepts]: Start accepts. Automaton has 243 states and 350 transitions. Word has length 58 [2022-04-15 07:21:18,648 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:21:18,649 INFO L478 AbstractCegarLoop]: Abstraction has 243 states and 350 transitions. [2022-04-15 07:21:18,649 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:18,649 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 243 states and 350 transitions. [2022-04-15 07:21:19,193 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 350 edges. 350 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:19,193 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 350 transitions. [2022-04-15 07:21:19,194 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-15 07:21:19,194 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:21:19,194 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 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] [2022-04-15 07:21:19,210 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-15 07:21:19,410 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-15 07:21:19,410 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:21:19,410 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:21:19,411 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 1 times [2022-04-15 07:21:19,411 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:19,411 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [229719556] [2022-04-15 07:21:19,411 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:21:19,411 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 2 times [2022-04-15 07:21:19,411 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:21:19,411 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [383392833] [2022-04-15 07:21:19,411 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:21:19,411 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:21:19,432 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:21:19,432 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [981592089] [2022-04-15 07:21:19,432 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:21:19,432 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:21:19,432 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:21:19,433 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-15 07:21:19,434 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-15 07:21:19,474 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:21:19,474 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:21:19,475 INFO L263 TraceCheckSpWp]: Trace formula consists of 168 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-15 07:21:19,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:21:19,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:21:19,764 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-15 07:21:19,764 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#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(11, 2);call #Ultimate.allocInit(12, 3); {11084#true} is VALID [2022-04-15 07:21:19,764 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,764 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:21:19,766 INFO L290 TraceCheckUtils]: 13: Hoare triple {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:21:19,766 INFO L290 TraceCheckUtils]: 14: Hoare triple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:21:19,766 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} {11084#true} #93#return; {11136#(<= 1 main_~y~0)} is VALID [2022-04-15 07:21:19,767 INFO L290 TraceCheckUtils]: 16: Hoare triple {11136#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11140#(<= 1 main_~b~0)} is VALID [2022-04-15 07:21:19,767 INFO L290 TraceCheckUtils]: 17: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-15 07:21:19,767 INFO L290 TraceCheckUtils]: 18: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11140#(<= 1 main_~b~0)} is VALID [2022-04-15 07:21:19,768 INFO L290 TraceCheckUtils]: 19: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-15 07:21:19,768 INFO L290 TraceCheckUtils]: 20: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,768 INFO L290 TraceCheckUtils]: 21: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !false; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,769 INFO L272 TraceCheckUtils]: 22: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,769 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,769 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,769 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,769 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #95#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,770 INFO L272 TraceCheckUtils]: 27: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,770 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,770 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,770 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,770 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #97#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,771 INFO L272 TraceCheckUtils]: 32: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,771 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,771 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,771 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,771 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #99#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,771 INFO L272 TraceCheckUtils]: 37: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,772 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,772 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,772 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,772 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #101#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,773 INFO L290 TraceCheckUtils]: 42: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,773 INFO L290 TraceCheckUtils]: 43: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !false; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,773 INFO L272 TraceCheckUtils]: 44: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,773 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,773 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,774 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,774 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #95#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,774 INFO L272 TraceCheckUtils]: 49: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,774 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,774 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,775 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,775 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #97#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,775 INFO L272 TraceCheckUtils]: 54: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:19,775 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:19,776 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:19,776 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:19,776 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #99#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 07:21:19,777 INFO L272 TraceCheckUtils]: 59: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:21:19,777 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:21:19,778 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-15 07:21:19,778 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-15 07:21:19,778 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 17 proven. 5 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-15 07:21:19,778 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:21:20,005 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-15 07:21:20,006 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-15 07:21:20,006 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:21:20,007 INFO L272 TraceCheckUtils]: 59: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:21:20,007 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,007 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,007 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,007 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,007 INFO L272 TraceCheckUtils]: 54: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,008 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,008 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,008 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,008 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,008 INFO L272 TraceCheckUtils]: 49: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,009 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,009 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,009 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,009 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,009 INFO L272 TraceCheckUtils]: 44: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,009 INFO L290 TraceCheckUtils]: 43: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,011 INFO L290 TraceCheckUtils]: 42: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,012 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #101#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,012 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,012 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,012 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,012 INFO L272 TraceCheckUtils]: 37: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,013 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,013 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,013 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,013 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,013 INFO L272 TraceCheckUtils]: 32: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,014 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,014 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,014 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,014 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,014 INFO L272 TraceCheckUtils]: 27: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,015 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,015 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,015 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,015 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,015 INFO L272 TraceCheckUtils]: 22: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,023 INFO L290 TraceCheckUtils]: 21: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 20: Hoare triple {11084#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 19: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 18: Hoare triple {11084#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 17: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 16: Hoare triple {11084#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11084#true} {11084#true} #93#return; {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 13: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,024 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#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(11, 2);call #Ultimate.allocInit(12, 3); {11084#true} is VALID [2022-04-15 07:21:20,025 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-15 07:21:20,026 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 93 trivial. 0 not checked. [2022-04-15 07:21:20,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:21:20,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [383392833] [2022-04-15 07:21:20,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:21:20,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [981592089] [2022-04-15 07:21:20,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [981592089] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 07:21:20,026 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 07:21:20,026 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-15 07:21:20,026 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:21:20,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [229719556] [2022-04-15 07:21:20,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [229719556] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:21:20,027 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:21:20,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:21:20,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [889806617] [2022-04-15 07:21:20,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:21:20,027 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 63 [2022-04-15 07:21:20,027 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:21:20,027 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:20,055 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:20,055 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 07:21:20,055 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:20,055 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 07:21:20,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-15 07:21:20,056 INFO L87 Difference]: Start difference. First operand 243 states and 350 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:20,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:20,773 INFO L93 Difference]: Finished difference Result 249 states and 355 transitions. [2022-04-15 07:21:20,774 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 07:21:20,774 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 63 [2022-04-15 07:21:20,774 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:21:20,774 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:20,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-15 07:21:20,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:20,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-15 07:21:20,775 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-15 07:21:20,822 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-15 07:21:20,826 INFO L225 Difference]: With dead ends: 249 [2022-04-15 07:21:20,827 INFO L226 Difference]: Without dead ends: 247 [2022-04-15 07:21:20,827 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 114 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-15 07:21:20,827 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 9 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 119 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 07:21:20,828 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 119 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 07:21:20,828 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states. [2022-04-15 07:21:21,385 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 247. [2022-04-15 07:21:21,386 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:21:21,386 INFO L82 GeneralOperation]: Start isEquivalent. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:21,387 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:21,387 INFO L87 Difference]: Start difference. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:21,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:21,392 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-15 07:21:21,392 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-15 07:21:21,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:21,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:21,394 INFO L74 IsIncluded]: Start isIncluded. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-15 07:21:21,394 INFO L87 Difference]: Start difference. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-15 07:21:21,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:21,400 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-15 07:21:21,400 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-15 07:21:21,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:21,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:21,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:21:21,401 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:21:21,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:21,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 247 states to 247 states and 353 transitions. [2022-04-15 07:21:21,407 INFO L78 Accepts]: Start accepts. Automaton has 247 states and 353 transitions. Word has length 63 [2022-04-15 07:21:21,407 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:21:21,407 INFO L478 AbstractCegarLoop]: Abstraction has 247 states and 353 transitions. [2022-04-15 07:21:21,407 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 07:21:21,407 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 247 states and 353 transitions. [2022-04-15 07:21:22,051 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 353 edges. 353 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:22,051 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-15 07:21:22,051 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-15 07:21:22,052 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:21:22,052 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 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, 1, 1] [2022-04-15 07:21:22,073 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-15 07:21:22,270 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-15 07:21:22,270 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:21:22,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:21:22,271 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 1 times [2022-04-15 07:21:22,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:22,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2006595364] [2022-04-15 07:21:22,271 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:21:22,271 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 2 times [2022-04-15 07:21:22,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:21:22,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [9105385] [2022-04-15 07:21:22,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:21:22,272 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:21:22,281 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:21:22,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1788976793] [2022-04-15 07:21:22,281 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:21:22,281 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:21:22,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:21:22,287 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-15 07:21:22,288 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-15 07:21:22,329 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:21:22,330 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:21:22,331 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 07:21:22,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:21:22,346 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:21:22,498 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-15 07:21:22,498 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#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(11, 2);call #Ultimate.allocInit(12, 3); {12960#true} is VALID [2022-04-15 07:21:22,498 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:22,498 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-15 07:21:22,498 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-15 07:21:22,498 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {12960#true} is VALID [2022-04-15 07:21:22,498 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:22,499 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-15 07:21:22,500 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:22,502 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:21:22,502 INFO L290 TraceCheckUtils]: 34: Hoare triple {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:22,503 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:22,503 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:22,503 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:22,503 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:22,504 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:22,504 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:22,505 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:22,505 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:22,505 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:22,505 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:22,505 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:22,506 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:22,506 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:22,506 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:22,507 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:22,507 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:22,507 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:22,508 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:22,508 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:22,508 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:22,509 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:22,509 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:22,510 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:21:22,510 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:21:22,510 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-15 07:21:22,510 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-15 07:21:22,511 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-15 07:21:22,511 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:21:40,843 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-15 07:21:40,843 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-15 07:21:40,844 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:21:40,844 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:21:40,845 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:40,847 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:40,847 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:40,848 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:40,848 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:40,849 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:21:40,849 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:40,849 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:40,850 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:40,850 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:40,850 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:40,851 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:40,851 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:40,851 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:40,851 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:40,851 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:40,851 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:40,852 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:40,852 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:40,852 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:40,852 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:21:40,853 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:40,853 INFO L290 TraceCheckUtils]: 34: Hoare triple {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:21:40,853 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:21:40,853 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:40,853 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-15 07:21:40,853 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:40,853 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-15 07:21:40,854 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#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(11, 2);call #Ultimate.allocInit(12, 3); {12960#true} is VALID [2022-04-15 07:21:40,855 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-15 07:21:40,856 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-15 07:21:40,856 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:21:40,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [9105385] [2022-04-15 07:21:40,856 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:21:40,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1788976793] [2022-04-15 07:21:40,856 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1788976793] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:21:40,856 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:21:40,856 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-15 07:21:40,856 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:21:40,857 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2006595364] [2022-04-15 07:21:40,857 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2006595364] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:21:40,857 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:21:40,857 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 07:21:40,857 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1949731389] [2022-04-15 07:21:40,857 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:21:40,857 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 61 [2022-04-15 07:21:40,857 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:21:40,857 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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-15 07:21:40,889 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-15 07:21:40,889 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 07:21:40,889 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:40,890 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 07:21:40,890 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-15 07:21:40,890 INFO L87 Difference]: Start difference. First operand 247 states and 353 transitions. Second operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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-15 07:21:41,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:41,897 INFO L93 Difference]: Finished difference Result 261 states and 364 transitions. [2022-04-15 07:21:41,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 07:21:41,897 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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 61 [2022-04-15 07:21:41,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:21:41,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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-15 07:21:41,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-15 07:21:41,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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-15 07:21:41,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-15 07:21:41,899 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 53 transitions. [2022-04-15 07:21:41,952 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:41,956 INFO L225 Difference]: With dead ends: 261 [2022-04-15 07:21:41,956 INFO L226 Difference]: Without dead ends: 259 [2022-04-15 07:21:41,957 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-15 07:21:41,958 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 21 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 106 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 116 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 106 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 07:21:41,958 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 144 Invalid, 116 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 106 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 07:21:41,959 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-15 07:21:42,547 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 259. [2022-04-15 07:21:42,547 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:21:42,548 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:42,548 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:42,549 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:42,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:42,554 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-15 07:21:42,554 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-15 07:21:42,555 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:42,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:42,556 INFO L74 IsIncluded]: Start isIncluded. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-15 07:21:42,556 INFO L87 Difference]: Start difference. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-15 07:21:42,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:42,561 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-15 07:21:42,562 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-15 07:21:42,562 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:42,562 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:42,562 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:21:42,562 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:21:42,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-15 07:21:42,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 259 states to 259 states and 362 transitions. [2022-04-15 07:21:42,569 INFO L78 Accepts]: Start accepts. Automaton has 259 states and 362 transitions. Word has length 61 [2022-04-15 07:21:42,569 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:21:42,569 INFO L478 AbstractCegarLoop]: Abstraction has 259 states and 362 transitions. [2022-04-15 07:21:42,569 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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-15 07:21:42,569 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 259 states and 362 transitions. [2022-04-15 07:21:43,232 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 362 edges. 362 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:43,233 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-15 07:21:43,233 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-15 07:21:43,233 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:21:43,233 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 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] [2022-04-15 07:21:43,250 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-15 07:21:43,434 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-15 07:21:43,434 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:21:43,435 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:21:43,435 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 3 times [2022-04-15 07:21:43,435 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:43,435 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1313643680] [2022-04-15 07:21:43,436 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:21:43,436 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 4 times [2022-04-15 07:21:43,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:21:43,436 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1599606621] [2022-04-15 07:21:43,436 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:21:43,436 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:21:43,459 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:21:43,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1687926222] [2022-04-15 07:21:43,460 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 07:21:43,460 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:21:43,460 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:21:43,461 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-15 07:21:43,462 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-15 07:21:43,510 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 07:21:43,510 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:21:43,511 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-15 07:21:43,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:21:43,521 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:21:43,673 INFO L272 TraceCheckUtils]: 0: Hoare triple {14899#true} call ULTIMATE.init(); {14899#true} is VALID [2022-04-15 07:21:43,673 INFO L290 TraceCheckUtils]: 1: Hoare triple {14899#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(11, 2);call #Ultimate.allocInit(12, 3); {14899#true} is VALID [2022-04-15 07:21:43,673 INFO L290 TraceCheckUtils]: 2: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-15 07:21:43,673 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14899#true} {14899#true} #105#return; {14899#true} is VALID [2022-04-15 07:21:43,673 INFO L272 TraceCheckUtils]: 4: Hoare triple {14899#true} call #t~ret6 := main(); {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 5: Hoare triple {14899#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L272 TraceCheckUtils]: 6: Hoare triple {14899#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 7: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 8: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 9: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14899#true} {14899#true} #91#return; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L272 TraceCheckUtils]: 11: Hoare triple {14899#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 12: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 13: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 14: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14899#true} {14899#true} #93#return; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 16: Hoare triple {14899#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 17: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-15 07:21:43,674 INFO L290 TraceCheckUtils]: 18: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 19: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 20: Hoare triple {14899#true} assume !(~c~0 >= ~b~0); {14899#true} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 21: Hoare triple {14899#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {14899#true} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 22: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 23: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 24: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 25: Hoare triple {14899#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 07:21:43,675 INFO L290 TraceCheckUtils]: 26: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !false; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 07:21:43,676 INFO L272 TraceCheckUtils]: 27: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14899#true} is VALID [2022-04-15 07:21:43,676 INFO L290 TraceCheckUtils]: 28: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-15 07:21:43,676 INFO L290 TraceCheckUtils]: 29: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-15 07:21:43,676 INFO L290 TraceCheckUtils]: 30: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-15 07:21:43,676 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #95#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 07:21:43,676 INFO L272 TraceCheckUtils]: 32: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14899#true} is VALID [2022-04-15 07:21:43,677 INFO L290 TraceCheckUtils]: 33: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-15 07:21:43,677 INFO L290 TraceCheckUtils]: 34: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-15 07:21:43,677 INFO L290 TraceCheckUtils]: 35: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-15 07:21:43,677 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #97#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 07:21:43,677 INFO L272 TraceCheckUtils]: 37: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14899#true} is VALID [2022-04-15 07:21:43,677 INFO L290 TraceCheckUtils]: 38: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-15 07:21:43,677 INFO L290 TraceCheckUtils]: 39: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-15 07:21:43,677 INFO L290 TraceCheckUtils]: 40: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-15 07:21:43,678 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #99#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 07:21:43,678 INFO L272 TraceCheckUtils]: 42: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {14899#true} is VALID [2022-04-15 07:21:43,678 INFO L290 TraceCheckUtils]: 43: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-15 07:21:43,678 INFO L290 TraceCheckUtils]: 44: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-15 07:21:43,678 INFO L290 TraceCheckUtils]: 45: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-15 07:21:43,679 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #101#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 07:21:43,679 INFO L290 TraceCheckUtils]: 47: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {15046#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-15 07:21:43,680 INFO L290 TraceCheckUtils]: 48: Hoare triple {15046#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-15 07:21:43,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !false; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-15 07:21:43,680 INFO L290 TraceCheckUtils]: 50: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14900#false} is VALID [2022-04-15 07:21:43,680 INFO L290 TraceCheckUtils]: 51: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-15 07:21:43,680 INFO L272 TraceCheckUtils]: 52: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14900#false} is VALID [2022-04-15 07:21:43,680 INFO L290 TraceCheckUtils]: 53: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 54: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 55: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {14900#false} {14900#false} #95#return; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L272 TraceCheckUtils]: 57: Hoare triple {14900#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 58: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 59: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 60: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {14900#false} {14900#false} #97#return; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L272 TraceCheckUtils]: 62: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 63: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 64: Hoare triple {14900#false} assume 0 == ~cond; {14900#false} is VALID [2022-04-15 07:21:43,681 INFO L290 TraceCheckUtils]: 65: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-15 07:21:43,682 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-15 07:21:43,682 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 07:21:43,682 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:21:43,682 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1599606621] [2022-04-15 07:21:43,682 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:21:43,682 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1687926222] [2022-04-15 07:21:43,682 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1687926222] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:21:43,682 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:21:43,682 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:21:43,682 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:21:43,682 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1313643680] [2022-04-15 07:21:43,683 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1313643680] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:21:43,683 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:21:43,683 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 07:21:43,683 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [858043222] [2022-04-15 07:21:43,683 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:21:43,683 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-15 07:21:43,683 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:21:43,684 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 07:21:43,715 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-15 07:21:43,715 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 07:21:43,715 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:43,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 07:21:43,715 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 07:21:43,716 INFO L87 Difference]: Start difference. First operand 259 states and 362 transitions. Second operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 07:21:44,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:44,476 INFO L93 Difference]: Finished difference Result 445 states and 620 transitions. [2022-04-15 07:21:44,476 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 07:21:44,476 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-15 07:21:44,476 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:21:44,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 07:21:44,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-15 07:21:44,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 07:21:44,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-15 07:21:44,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 80 transitions. [2022-04-15 07:21:44,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:44,536 INFO L225 Difference]: With dead ends: 445 [2022-04-15 07:21:44,536 INFO L226 Difference]: Without dead ends: 270 [2022-04-15 07:21:44,537 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-15 07:21:44,538 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 3 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 07:21:44,538 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 94 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 07:21:44,538 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 270 states. [2022-04-15 07:21:45,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 270 to 250. [2022-04-15 07:21:45,033 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:21:45,034 INFO L82 GeneralOperation]: Start isEquivalent. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-15 07:21:45,034 INFO L74 IsIncluded]: Start isIncluded. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-15 07:21:45,035 INFO L87 Difference]: Start difference. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-15 07:21:45,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:45,040 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-15 07:21:45,040 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-15 07:21:45,040 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:45,040 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:45,041 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-15 07:21:45,041 INFO L87 Difference]: Start difference. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-15 07:21:45,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:21:45,046 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-15 07:21:45,047 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-15 07:21:45,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:21:45,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:21:45,047 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:21:45,047 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:21:45,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-15 07:21:45,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 344 transitions. [2022-04-15 07:21:45,053 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 344 transitions. Word has length 66 [2022-04-15 07:21:45,053 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:21:45,053 INFO L478 AbstractCegarLoop]: Abstraction has 250 states and 344 transitions. [2022-04-15 07:21:45,053 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 07:21:45,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 250 states and 344 transitions. [2022-04-15 07:21:45,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 344 edges. 344 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:21:45,710 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 344 transitions. [2022-04-15 07:21:45,711 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-15 07:21:45,711 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:21:45,711 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 3, 3, 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] [2022-04-15 07:21:45,730 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-15 07:21:45,911 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-15 07:21:45,912 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:21:45,912 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:21:45,912 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 5 times [2022-04-15 07:21:45,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:21:45,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1297593400] [2022-04-15 07:21:45,913 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:21:45,913 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 6 times [2022-04-15 07:21:45,913 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:21:45,913 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [69325863] [2022-04-15 07:21:45,913 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:21:45,913 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:21:45,923 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:21:45,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1514493784] [2022-04-15 07:21:45,924 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 07:21:45,924 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:21:45,924 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:21:45,931 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-15 07:21:45,932 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-15 07:21:45,981 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-15 07:21:45,981 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:21:45,983 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-15 07:21:45,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:21:45,993 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:22:17,104 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:22:26,463 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:22:27,079 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-15 07:22:27,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#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(11, 2);call #Ultimate.allocInit(12, 3); {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:27,080 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-15 07:22:27,081 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 07:22:27,081 INFO L290 TraceCheckUtils]: 17: Hoare triple {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 07:22:27,082 INFO L290 TraceCheckUtils]: 18: Hoare triple {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:22:27,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:22:27,083 INFO L290 TraceCheckUtils]: 20: Hoare triple {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:22:27,083 INFO L290 TraceCheckUtils]: 21: Hoare triple {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 07:22:27,084 INFO L290 TraceCheckUtils]: 22: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 07:22:27,084 INFO L290 TraceCheckUtils]: 23: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,085 INFO L290 TraceCheckUtils]: 24: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !false; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,085 INFO L290 TraceCheckUtils]: 25: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,086 INFO L290 TraceCheckUtils]: 26: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !false; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,086 INFO L272 TraceCheckUtils]: 27: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:27,086 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:27,086 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:27,086 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:27,087 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #95#return; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,087 INFO L272 TraceCheckUtils]: 32: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:27,087 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:22:27,087 INFO L290 TraceCheckUtils]: 34: Hoare triple {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:27,088 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:27,089 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #97#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,089 INFO L272 TraceCheckUtils]: 37: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:27,089 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:27,089 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:27,089 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:27,090 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #99#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,090 INFO L272 TraceCheckUtils]: 42: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:27,090 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:27,090 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:27,090 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:27,091 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #101#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,091 INFO L290 TraceCheckUtils]: 47: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-15 07:22:27,092 INFO L290 TraceCheckUtils]: 48: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 07:22:27,093 INFO L290 TraceCheckUtils]: 49: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 07:22:27,093 INFO L290 TraceCheckUtils]: 50: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 07:22:27,096 INFO L290 TraceCheckUtils]: 51: Hoare triple {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-15 07:22:27,096 INFO L290 TraceCheckUtils]: 52: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !false; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-15 07:22:27,097 INFO L290 TraceCheckUtils]: 53: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-15 07:22:27,097 INFO L290 TraceCheckUtils]: 54: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-15 07:22:27,098 INFO L290 TraceCheckUtils]: 55: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-15 07:22:27,098 INFO L290 TraceCheckUtils]: 56: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-15 07:22:27,098 INFO L272 TraceCheckUtils]: 57: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:27,099 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:27,099 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:27,099 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:27,099 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} #95#return; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-15 07:22:27,101 INFO L272 TraceCheckUtils]: 62: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:22:27,102 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:22:27,102 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-15 07:22:27,102 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-15 07:22:27,102 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-15 07:22:27,103 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:22:38,694 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:22:42,225 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-15 07:22:42,225 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-15 07:22:42,226 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:22:42,226 INFO L272 TraceCheckUtils]: 62: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:22:42,227 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:22:42,227 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:42,227 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:42,227 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:42,227 INFO L272 TraceCheckUtils]: 57: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:42,228 INFO L290 TraceCheckUtils]: 56: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:22:42,228 INFO L290 TraceCheckUtils]: 55: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:22:42,228 INFO L290 TraceCheckUtils]: 54: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:22:42,229 INFO L290 TraceCheckUtils]: 53: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:22:42,229 INFO L290 TraceCheckUtils]: 52: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:22:44,230 WARN L290 TraceCheckUtils]: 51: Hoare triple {17292#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-15 07:22:44,231 INFO L290 TraceCheckUtils]: 50: Hoare triple {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {17292#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-15 07:22:44,232 INFO L290 TraceCheckUtils]: 49: Hoare triple {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !false; {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 07:22:44,734 INFO L290 TraceCheckUtils]: 48: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 07:22:44,735 INFO L290 TraceCheckUtils]: 47: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:22:44,736 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:22:44,736 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:44,736 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:44,736 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:44,736 INFO L272 TraceCheckUtils]: 42: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:44,737 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:22:44,737 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:44,737 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:44,737 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:44,737 INFO L272 TraceCheckUtils]: 37: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:44,738 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:22:44,738 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:44,739 INFO L290 TraceCheckUtils]: 34: Hoare triple {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:44,739 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:22:44,739 INFO L272 TraceCheckUtils]: 32: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:44,740 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:22:44,740 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:44,740 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:44,740 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:44,740 INFO L272 TraceCheckUtils]: 27: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:44,741 INFO L290 TraceCheckUtils]: 26: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:22:44,742 INFO L290 TraceCheckUtils]: 25: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:22:44,742 INFO L290 TraceCheckUtils]: 24: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:22:44,743 INFO L290 TraceCheckUtils]: 23: Hoare triple {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:22:44,743 INFO L290 TraceCheckUtils]: 22: Hoare triple {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-15 07:22:46,745 WARN L290 TraceCheckUtils]: 21: Hoare triple {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0))))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is UNKNOWN [2022-04-15 07:22:46,747 INFO L290 TraceCheckUtils]: 20: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !(~c~0 >= ~b~0); {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0))))))} is VALID [2022-04-15 07:22:46,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !false; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-15 07:22:46,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-15 07:22:46,752 INFO L290 TraceCheckUtils]: 17: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !false; {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-15 07:22:46,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-15 07:22:46,753 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-15 07:22:46,753 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:46,753 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:46,753 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:46,753 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:46,753 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-15 07:22:46,753 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:46,753 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#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(11, 2);call #Ultimate.allocInit(12, 3); {17034#true} is VALID [2022-04-15 07:22:46,754 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-15 07:22:46,755 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 16 proven. 28 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-15 07:22:46,755 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:22:46,755 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [69325863] [2022-04-15 07:22:46,755 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:22:46,755 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1514493784] [2022-04-15 07:22:46,755 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1514493784] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:22:46,755 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:22:46,755 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16] total 28 [2022-04-15 07:22:46,755 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:22:46,755 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1297593400] [2022-04-15 07:22:46,755 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1297593400] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:22:46,756 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:22:46,756 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-15 07:22:46,756 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [19714330] [2022-04-15 07:22:46,756 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:22:46,756 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-15 07:22:46,756 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:22:46,756 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-15 07:22:46,806 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-15 07:22:46,806 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-15 07:22:46,806 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:22:46,806 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-15 07:22:46,807 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=124, Invalid=632, Unknown=0, NotChecked=0, Total=756 [2022-04-15 07:22:46,807 INFO L87 Difference]: Start difference. First operand 250 states and 344 transitions. Second operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-15 07:22:53,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:22:53,430 INFO L93 Difference]: Finished difference Result 321 states and 431 transitions. [2022-04-15 07:22:53,430 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 07:22:53,430 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-15 07:22:53,432 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:22:53,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-15 07:22:53,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-15 07:22:53,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-15 07:22:53,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-15 07:22:53,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 143 transitions. [2022-04-15 07:22:53,609 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-15 07:22:53,614 INFO L225 Difference]: With dead ends: 321 [2022-04-15 07:22:53,615 INFO L226 Difference]: Without dead ends: 319 [2022-04-15 07:22:53,615 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 104 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 226 ImplicationChecksByTransitivity, 3.0s TimeCoverageRelationStatistics Valid=222, Invalid=1110, Unknown=0, NotChecked=0, Total=1332 [2022-04-15 07:22:53,616 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 61 mSDsluCounter, 350 mSDsCounter, 0 mSdLazyCounter, 920 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 395 SdHoareTripleChecker+Invalid, 960 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 920 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.4s IncrementalHoareTripleChecker+Time [2022-04-15 07:22:53,616 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 395 Invalid, 960 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 920 Invalid, 0 Unknown, 0 Unchecked, 2.4s Time] [2022-04-15 07:22:53,616 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 319 states. [2022-04-15 07:22:54,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 319 to 305. [2022-04-15 07:22:54,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:22:54,318 INFO L82 GeneralOperation]: Start isEquivalent. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-15 07:22:54,318 INFO L74 IsIncluded]: Start isIncluded. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-15 07:22:54,319 INFO L87 Difference]: Start difference. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-15 07:22:54,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:22:54,325 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-15 07:22:54,325 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-15 07:22:54,326 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:22:54,326 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:22:54,327 INFO L74 IsIncluded]: Start isIncluded. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-15 07:22:54,327 INFO L87 Difference]: Start difference. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-15 07:22:54,333 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:22:54,334 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-15 07:22:54,334 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-15 07:22:54,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:22:54,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:22:54,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:22:54,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:22:54,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-15 07:22:54,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 305 states to 305 states and 415 transitions. [2022-04-15 07:22:54,342 INFO L78 Accepts]: Start accepts. Automaton has 305 states and 415 transitions. Word has length 66 [2022-04-15 07:22:54,342 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:22:54,342 INFO L478 AbstractCegarLoop]: Abstraction has 305 states and 415 transitions. [2022-04-15 07:22:54,342 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-15 07:22:54,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 305 states and 415 transitions. [2022-04-15 07:22:55,223 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 415 edges. 415 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:22:55,223 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 415 transitions. [2022-04-15 07:22:55,224 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-15 07:22:55,224 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:22:55,224 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 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-15 07:22:55,241 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-15 07:22:55,437 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-15 07:22:55,438 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:22:55,438 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:22:55,438 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 1 times [2022-04-15 07:22:55,438 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:22:55,438 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1464924473] [2022-04-15 07:22:55,439 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:22:55,439 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 2 times [2022-04-15 07:22:55,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:22:55,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [881380464] [2022-04-15 07:22:55,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:22:55,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:22:55,448 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:22:55,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [648519156] [2022-04-15 07:22:55,448 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:22:55,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:22:55,449 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:22:55,451 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-15 07:22:55,452 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-15 07:22:55,501 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:22:55,501 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:22:55,502 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 62 conjunts are in the unsatisfiable core [2022-04-15 07:22:55,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:22:55,516 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:22:56,341 INFO L272 TraceCheckUtils]: 0: Hoare triple {19365#true} call ULTIMATE.init(); {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {19365#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(11, 2);call #Ultimate.allocInit(12, 3); {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19365#true} {19365#true} #105#return; {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {19365#true} call #t~ret6 := main(); {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {19365#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L272 TraceCheckUtils]: 6: Hoare triple {19365#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L290 TraceCheckUtils]: 7: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L290 TraceCheckUtils]: 8: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L290 TraceCheckUtils]: 9: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,341 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19365#true} {19365#true} #91#return; {19365#true} is VALID [2022-04-15 07:22:56,342 INFO L272 TraceCheckUtils]: 11: Hoare triple {19365#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,342 INFO L290 TraceCheckUtils]: 12: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-15 07:22:56,342 INFO L290 TraceCheckUtils]: 13: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-15 07:22:56,342 INFO L290 TraceCheckUtils]: 14: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,342 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19365#true} {19365#true} #93#return; {19365#true} is VALID [2022-04-15 07:22:56,342 INFO L290 TraceCheckUtils]: 16: Hoare triple {19365#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,343 INFO L290 TraceCheckUtils]: 17: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,343 INFO L290 TraceCheckUtils]: 18: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,343 INFO L290 TraceCheckUtils]: 19: Hoare triple {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,344 INFO L290 TraceCheckUtils]: 20: Hoare triple {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,344 INFO L290 TraceCheckUtils]: 21: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,344 INFO L272 TraceCheckUtils]: 22: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,344 INFO L290 TraceCheckUtils]: 23: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-15 07:22:56,344 INFO L290 TraceCheckUtils]: 24: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-15 07:22:56,344 INFO L290 TraceCheckUtils]: 25: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,345 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,345 INFO L272 TraceCheckUtils]: 27: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,345 INFO L290 TraceCheckUtils]: 28: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-15 07:22:56,345 INFO L290 TraceCheckUtils]: 29: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-15 07:22:56,345 INFO L290 TraceCheckUtils]: 30: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,346 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,346 INFO L272 TraceCheckUtils]: 32: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-15 07:22:56,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-15 07:22:56,346 INFO L290 TraceCheckUtils]: 35: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,347 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #99#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,347 INFO L272 TraceCheckUtils]: 37: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,347 INFO L290 TraceCheckUtils]: 38: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-15 07:22:56,347 INFO L290 TraceCheckUtils]: 39: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-15 07:22:56,347 INFO L290 TraceCheckUtils]: 40: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,348 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #101#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,349 INFO L290 TraceCheckUtils]: 42: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,349 INFO L290 TraceCheckUtils]: 43: Hoare triple {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,349 INFO L272 TraceCheckUtils]: 44: Hoare triple {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,349 INFO L290 TraceCheckUtils]: 45: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:22:56,350 INFO L290 TraceCheckUtils]: 46: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:56,350 INFO L290 TraceCheckUtils]: 47: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:56,351 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,351 INFO L272 TraceCheckUtils]: 49: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,351 INFO L290 TraceCheckUtils]: 50: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:22:56,351 INFO L290 TraceCheckUtils]: 51: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:56,352 INFO L290 TraceCheckUtils]: 52: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:56,352 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #97#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,353 INFO L272 TraceCheckUtils]: 54: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,353 INFO L290 TraceCheckUtils]: 55: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-15 07:22:56,353 INFO L290 TraceCheckUtils]: 56: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-15 07:22:56,353 INFO L290 TraceCheckUtils]: 57: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-15 07:22:56,353 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {19365#true} {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #99#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,354 INFO L272 TraceCheckUtils]: 59: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-15 07:22:56,354 INFO L290 TraceCheckUtils]: 60: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:22:56,354 INFO L290 TraceCheckUtils]: 61: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:56,354 INFO L290 TraceCheckUtils]: 62: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:22:56,355 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #101#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,356 INFO L290 TraceCheckUtils]: 64: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,357 INFO L290 TraceCheckUtils]: 65: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,357 INFO L290 TraceCheckUtils]: 66: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,357 INFO L290 TraceCheckUtils]: 67: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:22:56,358 INFO L290 TraceCheckUtils]: 68: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 07:22:56,358 INFO L290 TraceCheckUtils]: 69: Hoare triple {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !false; {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 07:22:56,359 INFO L290 TraceCheckUtils]: 70: Hoare triple {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {19589#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 07:22:56,359 INFO L272 TraceCheckUtils]: 71: Hoare triple {19589#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:22:56,360 INFO L290 TraceCheckUtils]: 72: Hoare triple {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:22:56,360 INFO L290 TraceCheckUtils]: 73: Hoare triple {19597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19366#false} is VALID [2022-04-15 07:22:56,360 INFO L290 TraceCheckUtils]: 74: Hoare triple {19366#false} assume !false; {19366#false} is VALID [2022-04-15 07:22:56,361 INFO L134 CoverageAnalysis]: Checked inductivity of 142 backedges. 52 proven. 19 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-15 07:22:56,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:23:43,953 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:23:45,978 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:23:54,426 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:23:54,426 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [881380464] [2022-04-15 07:23:54,427 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:23:54,427 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [648519156] [2022-04-15 07:23:54,427 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [648519156] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 07:23:54,427 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-15 07:23:54,427 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-15 07:23:54,427 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:23:54,427 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1464924473] [2022-04-15 07:23:54,427 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1464924473] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:23:54,427 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:23:54,427 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 07:23:54,427 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1931633391] [2022-04-15 07:23:54,427 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:23:54,428 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 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 75 [2022-04-15 07:23:54,428 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:23:54,428 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 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-15 07:23:54,480 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-15 07:23:54,480 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 07:23:54,480 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:23:54,480 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 07:23:54,480 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=393, Unknown=0, NotChecked=0, Total=462 [2022-04-15 07:23:54,481 INFO L87 Difference]: Start difference. First operand 305 states and 415 transitions. Second operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 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-15 07:23:57,813 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:23:57,813 INFO L93 Difference]: Finished difference Result 388 states and 532 transitions. [2022-04-15 07:23:57,813 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 07:23:57,813 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 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 75 [2022-04-15 07:23:57,815 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:23:57,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 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-15 07:23:57,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-15 07:23:57,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 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-15 07:23:57,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-15 07:23:57,819 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 138 transitions. [2022-04-15 07:23:57,994 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-15 07:23:58,003 INFO L225 Difference]: With dead ends: 388 [2022-04-15 07:23:58,003 INFO L226 Difference]: Without dead ends: 385 [2022-04-15 07:23:58,004 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 132 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=100, Invalid=550, Unknown=0, NotChecked=0, Total=650 [2022-04-15 07:23:58,004 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 41 mSDsluCounter, 282 mSDsCounter, 0 mSdLazyCounter, 795 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 825 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 795 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-15 07:23:58,004 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 331 Invalid, 825 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 795 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-15 07:23:58,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 385 states. [2022-04-15 07:23:58,734 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 385 to 318. [2022-04-15 07:23:58,734 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:23:58,735 INFO L82 GeneralOperation]: Start isEquivalent. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-15 07:23:58,735 INFO L74 IsIncluded]: Start isIncluded. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-15 07:23:58,735 INFO L87 Difference]: Start difference. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-15 07:23:58,744 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:23:58,745 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-15 07:23:58,745 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-15 07:23:58,746 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:23:58,746 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:23:58,746 INFO L74 IsIncluded]: Start isIncluded. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-15 07:23:58,747 INFO L87 Difference]: Start difference. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-15 07:23:58,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:23:58,756 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-15 07:23:58,756 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-15 07:23:58,757 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:23:58,757 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:23:58,757 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:23:58,757 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:23:58,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-15 07:23:58,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 318 states to 318 states and 433 transitions. [2022-04-15 07:23:58,767 INFO L78 Accepts]: Start accepts. Automaton has 318 states and 433 transitions. Word has length 75 [2022-04-15 07:23:58,767 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:23:58,767 INFO L478 AbstractCegarLoop]: Abstraction has 318 states and 433 transitions. [2022-04-15 07:23:58,767 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 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-15 07:23:58,767 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 318 states and 433 transitions. [2022-04-15 07:23:59,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 433 edges. 433 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:23:59,711 INFO L276 IsEmpty]: Start isEmpty. Operand 318 states and 433 transitions. [2022-04-15 07:23:59,711 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-15 07:23:59,712 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:23:59,712 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 07:23:59,731 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-15 07:23:59,927 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-15 07:23:59,927 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:23:59,928 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:23:59,928 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 3 times [2022-04-15 07:23:59,928 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:23:59,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1202792682] [2022-04-15 07:23:59,928 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:23:59,928 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 4 times [2022-04-15 07:23:59,928 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:23:59,929 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [163909247] [2022-04-15 07:23:59,929 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:23:59,929 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:23:59,940 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:23:59,940 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [152205252] [2022-04-15 07:23:59,940 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 07:23:59,940 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:23:59,940 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:23:59,963 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-15 07:23:59,986 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-15 07:24:00,017 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 07:24:00,017 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:24:00,019 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 83 conjunts are in the unsatisfiable core [2022-04-15 07:24:00,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:24:00,035 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:24:01,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#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(11, 2);call #Ultimate.allocInit(12, 3); {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:01,217 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-15 07:24:01,218 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:01,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:01,218 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:01,218 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-15 07:24:01,218 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 07:24:01,219 INFO L290 TraceCheckUtils]: 17: Hoare triple {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 07:24:01,219 INFO L290 TraceCheckUtils]: 18: Hoare triple {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:24:01,219 INFO L290 TraceCheckUtils]: 19: Hoare triple {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:24:01,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 07:24:01,220 INFO L290 TraceCheckUtils]: 21: Hoare triple {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 07:24:01,220 INFO L290 TraceCheckUtils]: 22: Hoare triple {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 07:24:01,221 INFO L290 TraceCheckUtils]: 23: Hoare triple {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 07:24:01,221 INFO L290 TraceCheckUtils]: 24: Hoare triple {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 07:24:01,222 INFO L290 TraceCheckUtils]: 25: Hoare triple {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:01,222 INFO L290 TraceCheckUtils]: 26: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:01,222 INFO L272 TraceCheckUtils]: 27: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,222 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:01,222 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:01,222 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:01,223 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #95#return; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:01,223 INFO L272 TraceCheckUtils]: 32: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,223 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:24:01,224 INFO L290 TraceCheckUtils]: 34: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,224 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,225 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #97#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:01,225 INFO L272 TraceCheckUtils]: 37: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,225 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:01,225 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:01,225 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:01,226 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #99#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:01,226 INFO L272 TraceCheckUtils]: 42: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,226 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:24:01,226 INFO L290 TraceCheckUtils]: 44: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,227 INFO L290 TraceCheckUtils]: 45: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,227 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #101#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:01,228 INFO L290 TraceCheckUtils]: 47: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:01,228 INFO L290 TraceCheckUtils]: 48: Hoare triple {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !false; {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:01,228 INFO L272 TraceCheckUtils]: 49: Hoare triple {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,229 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:24:01,229 INFO L290 TraceCheckUtils]: 51: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,229 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,230 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #95#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:24:01,230 INFO L272 TraceCheckUtils]: 54: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,230 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:01,230 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:01,231 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:01,231 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:24:01,231 INFO L272 TraceCheckUtils]: 59: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,231 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:01,231 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:01,231 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:01,232 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:24:01,232 INFO L272 TraceCheckUtils]: 64: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:01,232 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:24:01,233 INFO L290 TraceCheckUtils]: 66: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,233 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:01,234 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:24:01,234 INFO L290 TraceCheckUtils]: 69: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:24:01,235 INFO L290 TraceCheckUtils]: 70: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-15 07:24:01,236 INFO L290 TraceCheckUtils]: 71: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !false; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-15 07:24:01,236 INFO L290 TraceCheckUtils]: 72: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !(~c~0 >= ~b~0); {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-15 07:24:01,237 INFO L290 TraceCheckUtils]: 73: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-15 07:24:01,237 INFO L290 TraceCheckUtils]: 74: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-15 07:24:01,238 INFO L290 TraceCheckUtils]: 75: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-15 07:24:01,240 INFO L272 TraceCheckUtils]: 76: Hoare triple {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:24:01,240 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:24:01,241 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-15 07:24:01,241 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-15 07:24:01,241 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 39 proven. 44 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2022-04-15 07:24:01,241 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:24:34,998 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-15 07:24:34,998 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-15 07:24:34,998 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:24:34,999 INFO L272 TraceCheckUtils]: 76: Hoare triple {22148#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:24:35,000 INFO L290 TraceCheckUtils]: 75: Hoare triple {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {22148#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 07:24:35,000 INFO L290 TraceCheckUtils]: 74: Hoare triple {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 07:24:35,097 INFO L290 TraceCheckUtils]: 73: Hoare triple {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 07:24:35,098 INFO L290 TraceCheckUtils]: 72: Hoare triple {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,098 INFO L290 TraceCheckUtils]: 71: Hoare triple {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,449 INFO L290 TraceCheckUtils]: 70: Hoare triple {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,450 INFO L290 TraceCheckUtils]: 69: Hoare triple {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,451 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #101#return; {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,451 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:35,451 INFO L290 TraceCheckUtils]: 66: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:35,451 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:24:35,452 INFO L272 TraceCheckUtils]: 64: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,452 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #99#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,453 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,453 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:35,453 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:35,453 INFO L272 TraceCheckUtils]: 59: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,453 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,454 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,454 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:35,454 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:35,454 INFO L272 TraceCheckUtils]: 54: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,455 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,455 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:35,455 INFO L290 TraceCheckUtils]: 51: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:35,456 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:24:35,456 INFO L272 TraceCheckUtils]: 49: Hoare triple {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,456 INFO L290 TraceCheckUtils]: 48: Hoare triple {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,608 INFO L290 TraceCheckUtils]: 47: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 07:24:35,609 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #101#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 07:24:35,609 INFO L290 TraceCheckUtils]: 45: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,609 INFO L290 TraceCheckUtils]: 44: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:35,609 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:35,609 INFO L272 TraceCheckUtils]: 42: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,610 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #99#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 07:24:35,610 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,610 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:35,610 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:35,610 INFO L272 TraceCheckUtils]: 37: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,611 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #97#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 07:24:35,612 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:35,612 INFO L290 TraceCheckUtils]: 34: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:24:35,612 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:24:35,612 INFO L272 TraceCheckUtils]: 32: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,613 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #95#return; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 07:24:35,613 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,613 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:35,613 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:35,613 INFO L272 TraceCheckUtils]: 27: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,614 INFO L290 TraceCheckUtils]: 26: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !false; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 07:24:35,615 INFO L290 TraceCheckUtils]: 25: Hoare triple {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 07:24:35,615 INFO L290 TraceCheckUtils]: 24: Hoare triple {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 23: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 22: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 21: Hoare triple {21882#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 20: Hoare triple {21882#true} assume !(~c~0 >= ~b~0); {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 19: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 18: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 17: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,617 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#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(11, 2);call #Ultimate.allocInit(12, 3); {21882#true} is VALID [2022-04-15 07:24:35,618 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-15 07:24:35,619 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 49 proven. 29 refuted. 0 times theorem prover too weak. 73 trivial. 0 not checked. [2022-04-15 07:24:35,619 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:24:35,619 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [163909247] [2022-04-15 07:24:35,619 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:24:35,619 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [152205252] [2022-04-15 07:24:35,619 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [152205252] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:24:35,619 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:24:35,619 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 15] total 27 [2022-04-15 07:24:35,620 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:24:35,620 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1202792682] [2022-04-15 07:24:35,620 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1202792682] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:24:35,620 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:24:35,620 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-15 07:24:35,620 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [14986814] [2022-04-15 07:24:35,620 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:24:35,620 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-15 07:24:35,620 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:24:35,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 07:24:35,687 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:24:35,687 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-15 07:24:35,687 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:24:35,687 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-15 07:24:35,688 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=593, Unknown=0, NotChecked=0, Total=702 [2022-04-15 07:24:35,688 INFO L87 Difference]: Start difference. First operand 318 states and 433 transitions. Second operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 07:24:41,023 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:24:41,023 INFO L93 Difference]: Finished difference Result 406 states and 555 transitions. [2022-04-15 07:24:41,023 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 07:24:41,024 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-15 07:24:41,024 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:24:41,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 07:24:41,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-15 07:24:41,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 07:24:41,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-15 07:24:41,029 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 170 transitions. [2022-04-15 07:24:41,251 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 170 edges. 170 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:24:41,260 INFO L225 Difference]: With dead ends: 406 [2022-04-15 07:24:41,261 INFO L226 Difference]: Without dead ends: 403 [2022-04-15 07:24:41,261 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 164 GetRequests, 131 SyntacticMatches, 3 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 183 ImplicationChecksByTransitivity, 6.3s TimeCoverageRelationStatistics Valid=148, Invalid=844, Unknown=0, NotChecked=0, Total=992 [2022-04-15 07:24:41,262 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 69 mSDsluCounter, 325 mSDsCounter, 0 mSdLazyCounter, 1112 mSolverCounterSat, 77 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 90 SdHoareTripleChecker+Valid, 379 SdHoareTripleChecker+Invalid, 1189 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 1112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-15 07:24:41,262 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [90 Valid, 379 Invalid, 1189 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 1112 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-15 07:24:41,262 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 403 states. [2022-04-15 07:24:42,160 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 403 to 387. [2022-04-15 07:24:42,160 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:24:42,161 INFO L82 GeneralOperation]: Start isEquivalent. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 07:24:42,161 INFO L74 IsIncluded]: Start isIncluded. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 07:24:42,161 INFO L87 Difference]: Start difference. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 07:24:42,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:24:42,175 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-15 07:24:42,175 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-15 07:24:42,176 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:24:42,176 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:24:42,177 INFO L74 IsIncluded]: Start isIncluded. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-15 07:24:42,177 INFO L87 Difference]: Start difference. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-15 07:24:42,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:24:42,189 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-15 07:24:42,189 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-15 07:24:42,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:24:42,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:24:42,190 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:24:42,190 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:24:42,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 07:24:42,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 387 states to 387 states and 535 transitions. [2022-04-15 07:24:42,203 INFO L78 Accepts]: Start accepts. Automaton has 387 states and 535 transitions. Word has length 80 [2022-04-15 07:24:42,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:24:42,204 INFO L478 AbstractCegarLoop]: Abstraction has 387 states and 535 transitions. [2022-04-15 07:24:42,204 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 07:24:42,204 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 387 states and 535 transitions. [2022-04-15 07:24:43,539 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 535 edges. 535 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:24:43,539 INFO L276 IsEmpty]: Start isEmpty. Operand 387 states and 535 transitions. [2022-04-15 07:24:43,540 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-15 07:24:43,540 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:24:43,540 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 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] [2022-04-15 07:24:43,556 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-15 07:24:43,747 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-15 07:24:43,747 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:24:43,748 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:24:43,748 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 1 times [2022-04-15 07:24:43,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:24:43,748 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1347773601] [2022-04-15 07:24:43,748 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:24:43,748 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 2 times [2022-04-15 07:24:43,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:24:43,749 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [729576721] [2022-04-15 07:24:43,749 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:24:43,749 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:24:43,757 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:24:43,757 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [55436879] [2022-04-15 07:24:43,757 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:24:43,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:24:43,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:24:43,758 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-15 07:24:43,759 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-15 07:24:43,804 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:24:43,804 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:24:43,805 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 07:24:43,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:24:43,825 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:24:44,244 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#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(11, 2);call #Ultimate.allocInit(12, 3); {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,245 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-15 07:24:44,246 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 07:24:44,247 INFO L290 TraceCheckUtils]: 19: Hoare triple {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !false; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 07:24:44,247 INFO L290 TraceCheckUtils]: 20: Hoare triple {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:44,247 INFO L290 TraceCheckUtils]: 21: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !false; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:44,247 INFO L272 TraceCheckUtils]: 22: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,247 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,248 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,248 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,248 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #95#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:44,248 INFO L272 TraceCheckUtils]: 27: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,248 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,248 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,248 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,249 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #97#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:44,249 INFO L272 TraceCheckUtils]: 32: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,249 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,249 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,249 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,250 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #99#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:44,250 INFO L272 TraceCheckUtils]: 37: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,250 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,250 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,250 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,251 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #101#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-15 07:24:44,251 INFO L290 TraceCheckUtils]: 42: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:44,251 INFO L290 TraceCheckUtils]: 43: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !false; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:44,252 INFO L272 TraceCheckUtils]: 44: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,252 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,252 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,252 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,252 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #95#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:44,252 INFO L272 TraceCheckUtils]: 49: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,253 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,253 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,253 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,253 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #97#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:44,253 INFO L272 TraceCheckUtils]: 54: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,253 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,253 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,254 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,254 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #99#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:44,254 INFO L272 TraceCheckUtils]: 59: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,254 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,254 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,254 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,255 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #101#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-15 07:24:44,255 INFO L290 TraceCheckUtils]: 64: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !(~c~0 >= 2 * ~v~0); {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-15 07:24:44,256 INFO L290 TraceCheckUtils]: 65: Hoare triple {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-15 07:24:44,257 INFO L290 TraceCheckUtils]: 66: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-15 07:24:44,257 INFO L290 TraceCheckUtils]: 67: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-15 07:24:44,257 INFO L290 TraceCheckUtils]: 68: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-15 07:24:44,257 INFO L272 TraceCheckUtils]: 69: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,258 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,258 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,258 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,263 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #95#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-15 07:24:44,263 INFO L272 TraceCheckUtils]: 74: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:24:44,263 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:24:44,263 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:24:44,263 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:24:44,264 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #97#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-15 07:24:44,265 INFO L272 TraceCheckUtils]: 79: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:24:44,265 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:24:44,266 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-15 07:24:44,266 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-15 07:24:44,266 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-15 07:24:44,266 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:25:22,503 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-15 07:25:22,504 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-15 07:25:22,504 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:25:22,505 INFO L272 TraceCheckUtils]: 79: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:25:22,505 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:25:22,505 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,505 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,505 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,506 INFO L272 TraceCheckUtils]: 74: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,506 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:25:22,506 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,506 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,506 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,506 INFO L272 TraceCheckUtils]: 69: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,507 INFO L290 TraceCheckUtils]: 68: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:25:22,507 INFO L290 TraceCheckUtils]: 67: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 07:25:22,508 INFO L290 TraceCheckUtils]: 66: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-15 07:25:22,509 INFO L290 TraceCheckUtils]: 65: Hoare triple {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-15 07:25:22,510 INFO L290 TraceCheckUtils]: 64: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !(~c~0 >= 2 * ~v~0); {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} is VALID [2022-04-15 07:25:22,510 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #101#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-15 07:25:22,511 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,511 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,511 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,511 INFO L272 TraceCheckUtils]: 59: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,511 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #99#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-15 07:25:22,511 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,511 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,512 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,512 INFO L272 TraceCheckUtils]: 54: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,512 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #97#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-15 07:25:22,512 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,512 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,512 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,513 INFO L272 TraceCheckUtils]: 49: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,513 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #95#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-15 07:25:22,513 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,513 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,513 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,514 INFO L272 TraceCheckUtils]: 44: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,514 INFO L290 TraceCheckUtils]: 43: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !false; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-15 07:25:22,516 INFO L290 TraceCheckUtils]: 42: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-15 07:25:22,517 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #101#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-15 07:25:22,517 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,517 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,517 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,517 INFO L272 TraceCheckUtils]: 37: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,518 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #99#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-15 07:25:22,518 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,518 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,518 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,518 INFO L272 TraceCheckUtils]: 32: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,519 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #97#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-15 07:25:22,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,519 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,519 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,519 INFO L272 TraceCheckUtils]: 27: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,520 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #95#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-15 07:25:22,520 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,520 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,520 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,520 INFO L272 TraceCheckUtils]: 22: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,520 INFO L290 TraceCheckUtils]: 21: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !false; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-15 07:25:22,522 INFO L290 TraceCheckUtils]: 20: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-15 07:25:22,523 INFO L290 TraceCheckUtils]: 19: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !false; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-15 07:25:22,523 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-15 07:25:22,523 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-15 07:25:22,523 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-15 07:25:22,523 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-15 07:25:22,523 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,523 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,523 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#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(11, 2);call #Ultimate.allocInit(12, 3); {24790#true} is VALID [2022-04-15 07:25:22,524 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-15 07:25:22,525 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-15 07:25:22,525 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:25:22,525 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [729576721] [2022-04-15 07:25:22,525 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:25:22,525 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [55436879] [2022-04-15 07:25:22,525 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [55436879] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:25:22,525 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:25:22,525 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 16 [2022-04-15 07:25:22,525 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:25:22,525 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1347773601] [2022-04-15 07:25:22,526 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1347773601] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:25:22,526 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:25:22,526 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 07:25:22,526 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1807286684] [2022-04-15 07:25:22,526 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:25:22,526 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-15 07:25:22,526 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:25:22,526 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 07:25:22,578 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:25:22,579 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 07:25:22,579 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:25:22,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 07:25:22,579 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2022-04-15 07:25:22,579 INFO L87 Difference]: Start difference. First operand 387 states and 535 transitions. Second operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 07:25:24,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:25:24,956 INFO L93 Difference]: Finished difference Result 540 states and 774 transitions. [2022-04-15 07:25:24,956 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 07:25:24,956 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-15 07:25:24,957 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:25:24,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 07:25:24,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-15 07:25:24,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 07:25:24,959 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-15 07:25:24,959 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 100 transitions. [2022-04-15 07:25:25,067 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-15 07:25:25,081 INFO L225 Difference]: With dead ends: 540 [2022-04-15 07:25:25,081 INFO L226 Difference]: Without dead ends: 538 [2022-04-15 07:25:25,082 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 166 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 73 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=69, Invalid=203, Unknown=0, NotChecked=0, Total=272 [2022-04-15 07:25:25,082 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 20 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 268 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 244 SdHoareTripleChecker+Invalid, 285 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 268 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-15 07:25:25,082 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 244 Invalid, 285 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 268 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 07:25:25,083 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 538 states. [2022-04-15 07:25:26,392 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 538 to 520. [2022-04-15 07:25:26,392 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:25:26,393 INFO L82 GeneralOperation]: Start isEquivalent. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-15 07:25:26,393 INFO L74 IsIncluded]: Start isIncluded. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-15 07:25:26,394 INFO L87 Difference]: Start difference. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-15 07:25:26,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:25:26,407 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-15 07:25:26,407 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-15 07:25:26,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:25:26,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:25:26,409 INFO L74 IsIncluded]: Start isIncluded. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-15 07:25:26,410 INFO L87 Difference]: Start difference. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-15 07:25:26,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:25:26,423 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-15 07:25:26,423 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-15 07:25:26,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:25:26,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:25:26,425 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:25:26,425 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:25:26,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-15 07:25:26,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 520 states to 520 states and 754 transitions. [2022-04-15 07:25:26,441 INFO L78 Accepts]: Start accepts. Automaton has 520 states and 754 transitions. Word has length 83 [2022-04-15 07:25:26,441 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:25:26,442 INFO L478 AbstractCegarLoop]: Abstraction has 520 states and 754 transitions. [2022-04-15 07:25:26,442 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 07:25:26,442 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 520 states and 754 transitions. [2022-04-15 07:25:28,378 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 754 edges. 754 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:25:28,379 INFO L276 IsEmpty]: Start isEmpty. Operand 520 states and 754 transitions. [2022-04-15 07:25:28,379 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-15 07:25:28,379 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:25:28,380 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 5, 3, 3, 3, 3, 3, 3, 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] [2022-04-15 07:25:28,407 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-15 07:25:28,593 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-15 07:25:28,593 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:25:28,593 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:25:28,594 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 7 times [2022-04-15 07:25:28,594 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:25:28,594 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [623734900] [2022-04-15 07:25:28,594 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:25:28,594 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 8 times [2022-04-15 07:25:28,594 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:25:28,594 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1298730863] [2022-04-15 07:25:28,594 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:25:28,594 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:25:28,603 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:25:28,603 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [9577877] [2022-04-15 07:25:28,603 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:25:28,604 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:25:28,604 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:25:28,604 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-15 07:25:28,608 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-15 07:25:28,659 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:25:28,660 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:25:28,661 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 98 conjunts are in the unsatisfiable core [2022-04-15 07:25:28,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:25:28,681 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:25:39,587 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:27:28,980 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:27:35,062 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:27:37,489 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-15 07:27:37,489 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#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(11, 2);call #Ultimate.allocInit(12, 3); {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-15 07:27:37,490 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,491 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:27:37,491 INFO L290 TraceCheckUtils]: 13: Hoare triple {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:27:37,491 INFO L290 TraceCheckUtils]: 14: Hoare triple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:27:37,492 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} {28501#true} #93#return; {28553#(<= 1 main_~y~0)} is VALID [2022-04-15 07:27:37,492 INFO L290 TraceCheckUtils]: 16: Hoare triple {28553#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,493 INFO L290 TraceCheckUtils]: 17: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,493 INFO L290 TraceCheckUtils]: 18: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,493 INFO L290 TraceCheckUtils]: 19: Hoare triple {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,494 INFO L290 TraceCheckUtils]: 20: Hoare triple {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,494 INFO L290 TraceCheckUtils]: 21: Hoare triple {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,494 INFO L272 TraceCheckUtils]: 22: Hoare triple {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,494 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:27:37,495 INFO L290 TraceCheckUtils]: 24: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:37,495 INFO L290 TraceCheckUtils]: 25: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:37,496 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,496 INFO L272 TraceCheckUtils]: 27: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,496 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:27:37,497 INFO L290 TraceCheckUtils]: 29: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:37,497 INFO L290 TraceCheckUtils]: 30: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:37,497 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,498 INFO L272 TraceCheckUtils]: 32: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,498 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:27:37,498 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:27:37,498 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:27:37,498 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,499 INFO L272 TraceCheckUtils]: 37: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,499 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:27:37,499 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:27:37,499 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:27:37,499 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,500 INFO L290 TraceCheckUtils]: 42: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {28641#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,500 INFO L290 TraceCheckUtils]: 43: Hoare triple {28641#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,501 INFO L290 TraceCheckUtils]: 44: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !false; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,502 INFO L290 TraceCheckUtils]: 45: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-15 07:27:37,521 INFO L290 TraceCheckUtils]: 46: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:27:37,523 INFO L290 TraceCheckUtils]: 47: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:27:37,524 INFO L290 TraceCheckUtils]: 48: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:27:37,524 INFO L290 TraceCheckUtils]: 49: Hoare triple {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:27:37,526 INFO L290 TraceCheckUtils]: 50: Hoare triple {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:27:37,527 INFO L290 TraceCheckUtils]: 51: Hoare triple {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 07:27:37,527 INFO L272 TraceCheckUtils]: 52: Hoare triple {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,527 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:27:37,528 INFO L290 TraceCheckUtils]: 54: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:37,528 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:37,530 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:37,530 INFO L272 TraceCheckUtils]: 57: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,530 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:27:37,530 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:27:37,530 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:27:37,531 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:37,531 INFO L272 TraceCheckUtils]: 62: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,531 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:27:37,531 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:27:37,531 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:27:37,532 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:37,532 INFO L272 TraceCheckUtils]: 67: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:37,532 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:27:37,532 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:27:37,532 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:27:37,533 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:37,534 INFO L290 TraceCheckUtils]: 72: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:37,535 INFO L290 TraceCheckUtils]: 73: Hoare triple {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:37,536 INFO L290 TraceCheckUtils]: 74: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:37,537 INFO L290 TraceCheckUtils]: 75: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:27:39,539 WARN L290 TraceCheckUtils]: 76: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is UNKNOWN [2022-04-15 07:27:39,540 INFO L290 TraceCheckUtils]: 77: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:39,541 INFO L290 TraceCheckUtils]: 78: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:39,542 INFO L290 TraceCheckUtils]: 79: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:39,542 INFO L290 TraceCheckUtils]: 80: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:39,543 INFO L290 TraceCheckUtils]: 81: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 07:27:39,543 INFO L272 TraceCheckUtils]: 82: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:27:39,543 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:27:39,544 INFO L290 TraceCheckUtils]: 84: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:39,544 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:27:39,565 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #95#return; {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} is VALID [2022-04-15 07:27:39,566 INFO L272 TraceCheckUtils]: 87: Hoare triple {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:27:39,566 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:27:39,566 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-15 07:27:39,567 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-15 07:27:39,567 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 38 proven. 83 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-15 07:27:39,567 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:28:29,528 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-15 07:28:29,529 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-15 07:28:29,529 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:28:29,530 INFO L272 TraceCheckUtils]: 87: Hoare triple {28806#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:28:29,530 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #95#return; {28806#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:28:29,531 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:28:29,531 INFO L290 TraceCheckUtils]: 84: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:28:29,531 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:28:29,531 INFO L272 TraceCheckUtils]: 82: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,532 INFO L290 TraceCheckUtils]: 81: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:28:29,532 INFO L290 TraceCheckUtils]: 80: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:28:29,533 INFO L290 TraceCheckUtils]: 79: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:28:29,533 INFO L290 TraceCheckUtils]: 78: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:28:29,533 INFO L290 TraceCheckUtils]: 77: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:28:29,550 INFO L290 TraceCheckUtils]: 76: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:28:29,551 INFO L290 TraceCheckUtils]: 75: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,551 INFO L290 TraceCheckUtils]: 74: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,556 INFO L290 TraceCheckUtils]: 73: Hoare triple {28852#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,557 INFO L290 TraceCheckUtils]: 72: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {28852#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,558 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,558 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,558 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,558 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,558 INFO L272 TraceCheckUtils]: 67: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,559 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,559 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,559 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,559 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,559 INFO L272 TraceCheckUtils]: 62: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,560 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,560 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,560 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,560 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,560 INFO L272 TraceCheckUtils]: 57: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,561 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,561 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:28:29,562 INFO L290 TraceCheckUtils]: 54: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:28:29,562 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:28:29,562 INFO L272 TraceCheckUtils]: 52: Hoare triple {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,563 INFO L290 TraceCheckUtils]: 51: Hoare triple {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,563 INFO L290 TraceCheckUtils]: 50: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,564 INFO L290 TraceCheckUtils]: 49: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,565 INFO L290 TraceCheckUtils]: 48: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 47: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 46: Hoare triple {28501#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 45: Hoare triple {28501#true} assume !(~c~0 >= ~b~0); {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 44: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 43: Hoare triple {28501#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 42: Hoare triple {28501#true} assume !(~c~0 >= 2 * ~v~0); {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28501#true} #101#return; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L272 TraceCheckUtils]: 37: Hoare triple {28501#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28501#true} #99#return; {28501#true} is VALID [2022-04-15 07:28:29,566 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L272 TraceCheckUtils]: 32: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28501#true} {28501#true} #97#return; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 30: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 29: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L272 TraceCheckUtils]: 27: Hoare triple {28501#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28501#true} {28501#true} #95#return; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 25: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 24: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L272 TraceCheckUtils]: 22: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,567 INFO L290 TraceCheckUtils]: 21: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 20: Hoare triple {28501#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 19: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 16: Hoare triple {28501#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28501#true} {28501#true} #93#return; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 14: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 13: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-15 07:28:29,568 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#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(11, 2);call #Ultimate.allocInit(12, 3); {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-15 07:28:29,569 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 78 proven. 18 refuted. 0 times theorem prover too weak. 110 trivial. 0 not checked. [2022-04-15 07:28:29,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:28:29,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1298730863] [2022-04-15 07:28:29,570 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:28:29,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [9577877] [2022-04-15 07:28:29,570 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [9577877] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:28:29,570 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:28:29,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 13] total 31 [2022-04-15 07:28:29,570 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:28:29,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [623734900] [2022-04-15 07:28:29,570 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [623734900] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:28:29,570 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:28:29,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-15 07:28:29,570 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [464608559] [2022-04-15 07:28:29,570 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:28:29,571 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-15 07:28:29,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:28:29,571 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 07:28:34,335 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 68 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-15 07:28:34,336 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-15 07:28:34,336 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:28:34,336 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-15 07:28:34,336 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=796, Unknown=0, NotChecked=0, Total=930 [2022-04-15 07:28:34,343 INFO L87 Difference]: Start difference. First operand 520 states and 754 transitions. Second operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 07:28:49,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:28:49,807 INFO L93 Difference]: Finished difference Result 606 states and 880 transitions. [2022-04-15 07:28:49,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-15 07:28:49,807 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-15 07:28:49,808 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:28:49,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 07:28:49,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-15 07:28:49,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 07:28:49,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-15 07:28:49,810 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 135 transitions. [2022-04-15 07:28:53,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 134 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 07:28:53,696 INFO L225 Difference]: With dead ends: 606 [2022-04-15 07:28:53,696 INFO L226 Difference]: Without dead ends: 604 [2022-04-15 07:28:53,697 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 150 SyntacticMatches, 2 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 364 ImplicationChecksByTransitivity, 6.3s TimeCoverageRelationStatistics Valid=177, Invalid=1155, Unknown=0, NotChecked=0, Total=1332 [2022-04-15 07:28:53,697 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 69 mSDsluCounter, 390 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 433 SdHoareTripleChecker+Invalid, 1127 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 412 IncrementalHoareTripleChecker+Unchecked, 5.7s IncrementalHoareTripleChecker+Time [2022-04-15 07:28:53,698 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [86 Valid, 433 Invalid, 1127 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 679 Invalid, 0 Unknown, 412 Unchecked, 5.7s Time] [2022-04-15 07:28:53,698 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 604 states. [2022-04-15 07:28:55,419 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 604 to 595. [2022-04-15 07:28:55,419 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:28:55,420 INFO L82 GeneralOperation]: Start isEquivalent. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-15 07:28:55,421 INFO L74 IsIncluded]: Start isIncluded. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-15 07:28:55,421 INFO L87 Difference]: Start difference. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-15 07:28:55,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:28:55,437 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-15 07:28:55,437 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-15 07:28:55,439 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:28:55,439 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:28:55,440 INFO L74 IsIncluded]: Start isIncluded. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-15 07:28:55,440 INFO L87 Difference]: Start difference. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-15 07:28:55,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:28:55,457 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-15 07:28:55,457 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-15 07:28:55,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:28:55,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:28:55,458 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:28:55,458 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:28:55,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-15 07:28:55,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 595 states to 595 states and 869 transitions. [2022-04-15 07:28:55,480 INFO L78 Accepts]: Start accepts. Automaton has 595 states and 869 transitions. Word has length 91 [2022-04-15 07:28:55,481 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:28:55,481 INFO L478 AbstractCegarLoop]: Abstraction has 595 states and 869 transitions. [2022-04-15 07:28:55,481 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 07:28:55,481 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 595 states and 869 transitions. [2022-04-15 07:28:58,304 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 869 edges. 869 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:28:58,305 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 869 transitions. [2022-04-15 07:28:58,305 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-15 07:28:58,305 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:28:58,306 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-15 07:28:58,324 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Ended with exit code 0 [2022-04-15 07:28:58,527 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-15 07:28:58,527 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:28:58,528 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:28:58,528 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 5 times [2022-04-15 07:28:58,528 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:28:58,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1705794127] [2022-04-15 07:28:58,528 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:28:58,528 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 6 times [2022-04-15 07:28:58,528 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:28:58,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1533916495] [2022-04-15 07:28:58,529 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:28:58,529 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:28:58,538 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:28:58,538 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1038239477] [2022-04-15 07:28:58,538 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 07:28:58,538 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:28:58,539 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:28:58,539 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-15 07:28:58,543 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-15 07:28:58,593 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 07:28:58,593 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:28:58,595 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-15 07:28:58,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:28:58,615 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:29:26,145 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:29:33,148 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:29:33,263 INFO L272 TraceCheckUtils]: 0: Hoare triple {32699#true} call ULTIMATE.init(); {32699#true} is VALID [2022-04-15 07:29:33,263 INFO L290 TraceCheckUtils]: 1: Hoare triple {32699#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(11, 2);call #Ultimate.allocInit(12, 3); {32699#true} is VALID [2022-04-15 07:29:33,263 INFO L290 TraceCheckUtils]: 2: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,263 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32699#true} {32699#true} #105#return; {32699#true} is VALID [2022-04-15 07:29:33,263 INFO L272 TraceCheckUtils]: 4: Hoare triple {32699#true} call #t~ret6 := main(); {32699#true} is VALID [2022-04-15 07:29:33,263 INFO L290 TraceCheckUtils]: 5: Hoare triple {32699#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L272 TraceCheckUtils]: 6: Hoare triple {32699#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L290 TraceCheckUtils]: 7: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L290 TraceCheckUtils]: 8: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L290 TraceCheckUtils]: 9: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32699#true} {32699#true} #91#return; {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L272 TraceCheckUtils]: 11: Hoare triple {32699#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L290 TraceCheckUtils]: 12: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,264 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32699#true} {32699#true} #93#return; {32699#true} is VALID [2022-04-15 07:29:33,265 INFO L290 TraceCheckUtils]: 16: Hoare triple {32699#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,265 INFO L290 TraceCheckUtils]: 17: Hoare triple {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,265 INFO L290 TraceCheckUtils]: 18: Hoare triple {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,266 INFO L290 TraceCheckUtils]: 19: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,266 INFO L290 TraceCheckUtils]: 20: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,266 INFO L290 TraceCheckUtils]: 21: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,266 INFO L272 TraceCheckUtils]: 22: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,266 INFO L290 TraceCheckUtils]: 23: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,267 INFO L290 TraceCheckUtils]: 24: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,267 INFO L290 TraceCheckUtils]: 25: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,267 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,267 INFO L272 TraceCheckUtils]: 27: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,268 INFO L290 TraceCheckUtils]: 28: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:29:33,268 INFO L290 TraceCheckUtils]: 29: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:29:33,268 INFO L290 TraceCheckUtils]: 30: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:29:33,269 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,269 INFO L272 TraceCheckUtils]: 32: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,269 INFO L290 TraceCheckUtils]: 33: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,269 INFO L290 TraceCheckUtils]: 34: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,269 INFO L290 TraceCheckUtils]: 35: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,270 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,270 INFO L272 TraceCheckUtils]: 37: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,270 INFO L290 TraceCheckUtils]: 38: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,270 INFO L290 TraceCheckUtils]: 39: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,270 INFO L290 TraceCheckUtils]: 40: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,271 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,271 INFO L290 TraceCheckUtils]: 42: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,271 INFO L290 TraceCheckUtils]: 43: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,271 INFO L272 TraceCheckUtils]: 44: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,272 INFO L290 TraceCheckUtils]: 45: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,272 INFO L290 TraceCheckUtils]: 46: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,272 INFO L290 TraceCheckUtils]: 47: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,272 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,272 INFO L272 TraceCheckUtils]: 49: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,272 INFO L290 TraceCheckUtils]: 50: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,273 INFO L290 TraceCheckUtils]: 51: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,273 INFO L290 TraceCheckUtils]: 52: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,273 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,273 INFO L272 TraceCheckUtils]: 54: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,273 INFO L290 TraceCheckUtils]: 55: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,273 INFO L290 TraceCheckUtils]: 56: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,274 INFO L290 TraceCheckUtils]: 57: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,279 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,279 INFO L272 TraceCheckUtils]: 59: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,279 INFO L290 TraceCheckUtils]: 60: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,279 INFO L290 TraceCheckUtils]: 61: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,279 INFO L290 TraceCheckUtils]: 62: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,280 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,280 INFO L290 TraceCheckUtils]: 64: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,281 INFO L290 TraceCheckUtils]: 65: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,281 INFO L272 TraceCheckUtils]: 66: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,281 INFO L290 TraceCheckUtils]: 67: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,281 INFO L290 TraceCheckUtils]: 68: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,281 INFO L290 TraceCheckUtils]: 69: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,282 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,282 INFO L272 TraceCheckUtils]: 71: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,282 INFO L290 TraceCheckUtils]: 72: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,282 INFO L290 TraceCheckUtils]: 73: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,282 INFO L290 TraceCheckUtils]: 74: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,282 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,283 INFO L272 TraceCheckUtils]: 76: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,283 INFO L290 TraceCheckUtils]: 77: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-15 07:29:33,283 INFO L290 TraceCheckUtils]: 78: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-15 07:29:33,283 INFO L290 TraceCheckUtils]: 79: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-15 07:29:33,283 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,283 INFO L272 TraceCheckUtils]: 81: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {32699#true} is VALID [2022-04-15 07:29:33,284 INFO L290 TraceCheckUtils]: 82: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:29:33,284 INFO L290 TraceCheckUtils]: 83: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:29:33,284 INFO L290 TraceCheckUtils]: 84: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:29:33,285 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,286 INFO L290 TraceCheckUtils]: 86: Hoare triple {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,289 INFO L290 TraceCheckUtils]: 87: Hoare triple {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,290 INFO L290 TraceCheckUtils]: 88: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,290 INFO L290 TraceCheckUtils]: 89: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:29:33,293 INFO L290 TraceCheckUtils]: 90: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-15 07:29:33,293 INFO L290 TraceCheckUtils]: 91: Hoare triple {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !false; {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-15 07:29:33,293 INFO L290 TraceCheckUtils]: 92: Hoare triple {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !(0 != ~b~0); {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0))) (= main_~q~0 1))} is VALID [2022-04-15 07:29:33,294 INFO L272 TraceCheckUtils]: 93: Hoare triple {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0))) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:29:33,294 INFO L290 TraceCheckUtils]: 94: Hoare triple {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {32995#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:29:33,295 INFO L290 TraceCheckUtils]: 95: Hoare triple {32995#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {32700#false} is VALID [2022-04-15 07:29:33,295 INFO L290 TraceCheckUtils]: 96: Hoare triple {32700#false} assume !false; {32700#false} is VALID [2022-04-15 07:29:33,295 INFO L134 CoverageAnalysis]: Checked inductivity of 314 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-15 07:29:33,295 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:29:48,787 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:29:49,253 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:29:49,253 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1533916495] [2022-04-15 07:29:49,253 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:29:49,253 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1038239477] [2022-04-15 07:29:49,254 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1038239477] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 07:29:49,254 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-15 07:29:49,254 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-15 07:29:49,254 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:29:49,254 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1705794127] [2022-04-15 07:29:49,254 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1705794127] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:29:49,254 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:29:49,254 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 07:29:49,254 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1487424541] [2022-04-15 07:29:49,254 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:29:49,255 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 97 [2022-04-15 07:29:49,255 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:29:49,255 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 07:29:49,302 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-15 07:29:49,302 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 07:29:49,302 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:29:49,303 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 07:29:49,303 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-15 07:29:49,303 INFO L87 Difference]: Start difference. First operand 595 states and 869 transitions. Second operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 07:29:52,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:29:52,645 INFO L93 Difference]: Finished difference Result 686 states and 997 transitions. [2022-04-15 07:29:52,645 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 07:29:52,645 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 97 [2022-04-15 07:29:52,645 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:29:52,645 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 07:29:52,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-15 07:29:52,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 07:29:52,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-15 07:29:52,647 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 109 transitions. [2022-04-15 07:29:52,790 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-15 07:29:52,811 INFO L225 Difference]: With dead ends: 686 [2022-04-15 07:29:52,811 INFO L226 Difference]: Without dead ends: 683 [2022-04-15 07:29:52,811 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 92 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-15 07:29:52,812 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 43 mSDsluCounter, 211 mSDsCounter, 0 mSdLazyCounter, 453 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 247 SdHoareTripleChecker+Invalid, 488 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 453 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-15 07:29:52,812 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 247 Invalid, 488 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 453 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-15 07:29:52,816 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 683 states. [2022-04-15 07:29:54,713 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 683 to 675. [2022-04-15 07:29:54,713 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:29:54,714 INFO L82 GeneralOperation]: Start isEquivalent. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-15 07:29:54,715 INFO L74 IsIncluded]: Start isIncluded. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-15 07:29:54,716 INFO L87 Difference]: Start difference. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-15 07:29:54,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:29:54,734 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-15 07:29:54,734 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-15 07:29:54,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:29:54,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:29:54,737 INFO L74 IsIncluded]: Start isIncluded. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-15 07:29:54,737 INFO L87 Difference]: Start difference. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-15 07:29:54,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:29:54,756 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-15 07:29:54,756 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-15 07:29:54,758 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:29:54,758 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:29:54,758 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:29:54,758 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:29:54,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-15 07:29:54,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 675 states to 675 states and 985 transitions. [2022-04-15 07:29:54,782 INFO L78 Accepts]: Start accepts. Automaton has 675 states and 985 transitions. Word has length 97 [2022-04-15 07:29:54,782 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:29:54,782 INFO L478 AbstractCegarLoop]: Abstraction has 675 states and 985 transitions. [2022-04-15 07:29:54,782 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 07:29:54,782 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 675 states and 985 transitions. [2022-04-15 07:29:57,761 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 985 edges. 985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:29:57,762 INFO L276 IsEmpty]: Start isEmpty. Operand 675 states and 985 transitions. [2022-04-15 07:29:57,762 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2022-04-15 07:29:57,762 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:29:57,763 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 07:29:57,779 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-15 07:29:57,963 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-15 07:29:57,963 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:29:57,964 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:29:57,964 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 9 times [2022-04-15 07:29:57,964 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:29:57,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1742212835] [2022-04-15 07:29:57,964 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:29:57,964 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 10 times [2022-04-15 07:29:57,964 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:29:57,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1877159971] [2022-04-15 07:29:57,964 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:29:57,965 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:29:57,973 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:29:57,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1903043177] [2022-04-15 07:29:57,973 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 07:29:57,973 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:29:57,973 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:29:57,974 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-15 07:29:57,975 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-15 07:29:58,031 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 07:29:58,031 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:29:58,033 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-15 07:29:58,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:29:58,050 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:30:01,101 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-15 07:30:01,101 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#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(11, 2);call #Ultimate.allocInit(12, 3); {37142#true} is VALID [2022-04-15 07:30:01,101 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,101 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-15 07:30:01,101 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-15 07:30:01,101 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {37142#true} is VALID [2022-04-15 07:30:01,101 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,102 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 07:30:01,102 INFO L290 TraceCheckUtils]: 8: Hoare triple {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:30:01,102 INFO L290 TraceCheckUtils]: 9: Hoare triple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 07:30:01,103 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} {37142#true} #91#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-15 07:30:01,103 INFO L272 TraceCheckUtils]: 11: Hoare triple {37179#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,103 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:30:01,103 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:30:01,103 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,103 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37179#(<= 1 main_~x~0)} #93#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-15 07:30:01,104 INFO L290 TraceCheckUtils]: 16: Hoare triple {37179#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,104 INFO L290 TraceCheckUtils]: 17: Hoare triple {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,104 INFO L290 TraceCheckUtils]: 18: Hoare triple {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,105 INFO L290 TraceCheckUtils]: 19: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,106 INFO L290 TraceCheckUtils]: 21: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 07:30:01,106 INFO L290 TraceCheckUtils]: 22: Hoare triple {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 07:30:01,106 INFO L290 TraceCheckUtils]: 23: Hoare triple {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 07:30:01,107 INFO L290 TraceCheckUtils]: 24: Hoare triple {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 07:30:01,107 INFO L290 TraceCheckUtils]: 25: Hoare triple {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 07:30:01,108 INFO L290 TraceCheckUtils]: 26: Hoare triple {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !false; {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 07:30:01,108 INFO L272 TraceCheckUtils]: 27: Hoare triple {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,108 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:30:01,108 INFO L290 TraceCheckUtils]: 29: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:30:01,109 INFO L290 TraceCheckUtils]: 30: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:30:01,109 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #95#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,110 INFO L272 TraceCheckUtils]: 32: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,110 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:30:01,110 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:30:01,110 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,110 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,110 INFO L272 TraceCheckUtils]: 37: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,111 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:30:01,111 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:30:01,111 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,111 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,111 INFO L272 TraceCheckUtils]: 42: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,112 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:30:01,112 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:30:01,112 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,112 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,113 INFO L290 TraceCheckUtils]: 47: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,113 INFO L290 TraceCheckUtils]: 48: Hoare triple {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,114 INFO L290 TraceCheckUtils]: 49: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,114 INFO L290 TraceCheckUtils]: 50: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 07:30:01,116 INFO L290 TraceCheckUtils]: 51: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,117 INFO L290 TraceCheckUtils]: 52: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,118 INFO L290 TraceCheckUtils]: 53: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,118 INFO L290 TraceCheckUtils]: 54: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,119 INFO L290 TraceCheckUtils]: 55: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,119 INFO L290 TraceCheckUtils]: 56: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} assume !false; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,119 INFO L272 TraceCheckUtils]: 57: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,120 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:30:01,120 INFO L290 TraceCheckUtils]: 59: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:30:01,120 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:30:01,122 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} #95#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,122 INFO L272 TraceCheckUtils]: 62: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,122 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:30:01,122 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:30:01,122 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,123 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #97#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,123 INFO L272 TraceCheckUtils]: 67: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,123 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:30:01,123 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:30:01,123 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,124 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #99#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,124 INFO L272 TraceCheckUtils]: 72: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,124 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:30:01,124 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:30:01,124 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:30:01,125 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #101#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,125 INFO L290 TraceCheckUtils]: 77: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,126 INFO L290 TraceCheckUtils]: 78: Hoare triple {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,127 INFO L290 TraceCheckUtils]: 79: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !false; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,127 INFO L290 TraceCheckUtils]: 80: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:30:01,129 INFO L290 TraceCheckUtils]: 81: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-15 07:30:01,130 INFO L290 TraceCheckUtils]: 82: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-15 07:30:01,131 INFO L290 TraceCheckUtils]: 83: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-15 07:30:01,131 INFO L290 TraceCheckUtils]: 84: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-15 07:30:01,132 INFO L290 TraceCheckUtils]: 85: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-15 07:30:01,132 INFO L290 TraceCheckUtils]: 86: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-15 07:30:01,132 INFO L272 TraceCheckUtils]: 87: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:30:01,132 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:30:01,133 INFO L290 TraceCheckUtils]: 89: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:30:01,133 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:30:01,136 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} #95#return; {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~0 main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 07:30:01,136 INFO L272 TraceCheckUtils]: 92: Hoare triple {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~0 main_~x~0)) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:30:01,137 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:30:01,137 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-15 07:30:01,137 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-15 07:30:01,138 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 42 proven. 91 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-04-15 07:30:01,138 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 07:31:00,187 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-15 07:31:00,188 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-15 07:31:00,188 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:31:00,189 INFO L272 TraceCheckUtils]: 92: Hoare triple {37464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:31:00,190 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #95#return; {37464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 07:31:00,190 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:00,190 INFO L290 TraceCheckUtils]: 89: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:00,191 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:31:00,191 INFO L272 TraceCheckUtils]: 87: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,191 INFO L290 TraceCheckUtils]: 86: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:31:00,191 INFO L290 TraceCheckUtils]: 85: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:31:00,192 INFO L290 TraceCheckUtils]: 84: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:31:00,192 INFO L290 TraceCheckUtils]: 83: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:31:00,192 INFO L290 TraceCheckUtils]: 82: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:31:00,340 INFO L290 TraceCheckUtils]: 81: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 07:31:00,341 INFO L290 TraceCheckUtils]: 80: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,341 INFO L290 TraceCheckUtils]: 79: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,346 INFO L290 TraceCheckUtils]: 78: Hoare triple {37510#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,347 INFO L290 TraceCheckUtils]: 77: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {37510#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,348 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,348 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,348 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,348 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,348 INFO L272 TraceCheckUtils]: 72: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,349 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,349 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,349 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,349 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,349 INFO L272 TraceCheckUtils]: 67: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,350 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,350 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,350 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,350 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,350 INFO L272 TraceCheckUtils]: 62: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,351 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,351 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:00,352 INFO L290 TraceCheckUtils]: 59: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:00,352 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 07:31:00,352 INFO L272 TraceCheckUtils]: 57: Hoare triple {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,352 INFO L290 TraceCheckUtils]: 56: Hoare triple {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,353 INFO L290 TraceCheckUtils]: 55: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,354 INFO L290 TraceCheckUtils]: 54: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,355 INFO L290 TraceCheckUtils]: 53: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 52: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 51: Hoare triple {37142#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 50: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 49: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 48: Hoare triple {37142#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 47: Hoare triple {37142#true} assume !(~c~0 >= 2 * ~v~0); {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37142#true} #101#return; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L272 TraceCheckUtils]: 42: Hoare triple {37142#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37142#true} #99#return; {37142#true} is VALID [2022-04-15 07:31:00,356 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L272 TraceCheckUtils]: 37: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37142#true} #97#return; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L272 TraceCheckUtils]: 32: Hoare triple {37142#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37142#true} {37142#true} #95#return; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 30: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 29: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L272 TraceCheckUtils]: 27: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,357 INFO L290 TraceCheckUtils]: 26: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 25: Hoare triple {37142#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 24: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 23: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 22: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 21: Hoare triple {37142#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 20: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 19: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 18: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 17: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 16: Hoare triple {37142#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37142#true} #93#return; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,358 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L272 TraceCheckUtils]: 11: Hoare triple {37142#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37142#true} {37142#true} #91#return; {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L290 TraceCheckUtils]: 9: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L290 TraceCheckUtils]: 8: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#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(11, 2);call #Ultimate.allocInit(12, 3); {37142#true} is VALID [2022-04-15 07:31:00,359 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-15 07:31:00,360 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 87 proven. 18 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-15 07:31:00,360 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 07:31:00,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1877159971] [2022-04-15 07:31:00,360 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 07:31:00,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1903043177] [2022-04-15 07:31:00,360 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1903043177] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 07:31:00,360 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 07:31:00,360 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 13] total 33 [2022-04-15 07:31:00,360 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 07:31:00,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1742212835] [2022-04-15 07:31:00,361 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1742212835] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 07:31:00,361 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 07:31:00,361 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-15 07:31:00,361 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1251840537] [2022-04-15 07:31:00,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 07:31:00,361 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-15 07:31:00,361 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 07:31:00,361 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 07:31:00,453 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-15 07:31:00,453 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-15 07:31:00,453 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 07:31:00,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-15 07:31:00,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=885, Unknown=0, NotChecked=0, Total=1056 [2022-04-15 07:31:00,454 INFO L87 Difference]: Start difference. First operand 675 states and 985 transitions. Second operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 07:31:09,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:31:09,281 INFO L93 Difference]: Finished difference Result 767 states and 1110 transitions. [2022-04-15 07:31:09,281 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-15 07:31:09,281 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-15 07:31:09,282 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 07:31:09,282 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 07:31:09,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-15 07:31:09,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 07:31:09,285 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-15 07:31:09,285 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 190 transitions. [2022-04-15 07:31:09,554 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:31:09,588 INFO L225 Difference]: With dead ends: 767 [2022-04-15 07:31:09,588 INFO L226 Difference]: Without dead ends: 765 [2022-04-15 07:31:09,589 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 199 GetRequests, 159 SyntacticMatches, 1 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 424 ImplicationChecksByTransitivity, 1.8s TimeCoverageRelationStatistics Valid=245, Invalid=1395, Unknown=0, NotChecked=0, Total=1640 [2022-04-15 07:31:09,589 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 105 mSDsluCounter, 417 mSDsCounter, 0 mSdLazyCounter, 1605 mSolverCounterSat, 92 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 464 SdHoareTripleChecker+Invalid, 1697 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 92 IncrementalHoareTripleChecker+Valid, 1605 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.9s IncrementalHoareTripleChecker+Time [2022-04-15 07:31:09,589 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [141 Valid, 464 Invalid, 1697 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [92 Valid, 1605 Invalid, 0 Unknown, 0 Unchecked, 2.9s Time] [2022-04-15 07:31:09,590 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 765 states. [2022-04-15 07:31:11,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 765 to 747. [2022-04-15 07:31:11,745 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 07:31:11,747 INFO L82 GeneralOperation]: Start isEquivalent. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-15 07:31:11,747 INFO L74 IsIncluded]: Start isIncluded. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-15 07:31:11,748 INFO L87 Difference]: Start difference. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-15 07:31:11,775 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:31:11,775 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-15 07:31:11,775 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-15 07:31:11,777 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:31:11,777 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:31:11,778 INFO L74 IsIncluded]: Start isIncluded. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-15 07:31:11,779 INFO L87 Difference]: Start difference. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-15 07:31:11,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 07:31:11,801 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-15 07:31:11,801 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-15 07:31:11,803 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 07:31:11,803 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 07:31:11,803 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 07:31:11,803 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 07:31:11,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-15 07:31:11,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 747 states to 747 states and 1090 transitions. [2022-04-15 07:31:11,832 INFO L78 Accepts]: Start accepts. Automaton has 747 states and 1090 transitions. Word has length 96 [2022-04-15 07:31:11,832 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 07:31:11,832 INFO L478 AbstractCegarLoop]: Abstraction has 747 states and 1090 transitions. [2022-04-15 07:31:11,832 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 07:31:11,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 747 states and 1090 transitions. [2022-04-15 07:31:15,393 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1090 edges. 1090 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 07:31:15,393 INFO L276 IsEmpty]: Start isEmpty. Operand 747 states and 1090 transitions. [2022-04-15 07:31:15,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-15 07:31:15,394 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 07:31:15,394 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 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, 1] [2022-04-15 07:31:15,411 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-15 07:31:15,594 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-15 07:31:15,595 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 07:31:15,595 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 07:31:15,595 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 7 times [2022-04-15 07:31:15,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 07:31:15,595 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1390037530] [2022-04-15 07:31:15,595 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 07:31:15,595 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 8 times [2022-04-15 07:31:15,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 07:31:15,596 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1970390014] [2022-04-15 07:31:15,596 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 07:31:15,596 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 07:31:15,605 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 07:31:15,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [854411989] [2022-04-15 07:31:15,605 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 07:31:15,605 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 07:31:15,605 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 07:31:15,606 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-15 07:31:15,607 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-15 07:31:15,656 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 07:31:15,656 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 07:31:15,658 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 77 conjunts are in the unsatisfiable core [2022-04-15 07:31:15,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 07:31:15,681 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 07:31:49,461 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 07:31:49,808 INFO L272 TraceCheckUtils]: 0: Hoare triple {42324#true} call ULTIMATE.init(); {42324#true} is VALID [2022-04-15 07:31:49,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {42324#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(11, 2);call #Ultimate.allocInit(12, 3); {42324#true} is VALID [2022-04-15 07:31:49,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,808 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42324#true} {42324#true} #105#return; {42324#true} is VALID [2022-04-15 07:31:49,808 INFO L272 TraceCheckUtils]: 4: Hoare triple {42324#true} call #t~ret6 := main(); {42324#true} is VALID [2022-04-15 07:31:49,808 INFO L290 TraceCheckUtils]: 5: Hoare triple {42324#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~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; {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L272 TraceCheckUtils]: 6: Hoare triple {42324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L290 TraceCheckUtils]: 7: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L290 TraceCheckUtils]: 8: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L290 TraceCheckUtils]: 9: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42324#true} {42324#true} #91#return; {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L272 TraceCheckUtils]: 11: Hoare triple {42324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L290 TraceCheckUtils]: 12: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L290 TraceCheckUtils]: 13: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L290 TraceCheckUtils]: 14: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,809 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {42324#true} {42324#true} #93#return; {42324#true} is VALID [2022-04-15 07:31:49,810 INFO L290 TraceCheckUtils]: 16: Hoare triple {42324#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,810 INFO L290 TraceCheckUtils]: 17: Hoare triple {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,810 INFO L290 TraceCheckUtils]: 18: Hoare triple {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,811 INFO L290 TraceCheckUtils]: 19: Hoare triple {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,811 INFO L290 TraceCheckUtils]: 20: Hoare triple {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,812 INFO L272 TraceCheckUtils]: 22: Hoare triple {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,812 INFO L290 TraceCheckUtils]: 23: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:31:49,812 INFO L290 TraceCheckUtils]: 24: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,812 INFO L290 TraceCheckUtils]: 25: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,813 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,813 INFO L272 TraceCheckUtils]: 27: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,814 INFO L290 TraceCheckUtils]: 28: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,814 INFO L290 TraceCheckUtils]: 29: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,814 INFO L290 TraceCheckUtils]: 30: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,814 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {42324#true} {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,814 INFO L272 TraceCheckUtils]: 32: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,815 INFO L290 TraceCheckUtils]: 33: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,815 INFO L290 TraceCheckUtils]: 34: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,815 INFO L290 TraceCheckUtils]: 35: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,815 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {42324#true} {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,815 INFO L272 TraceCheckUtils]: 37: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,816 INFO L290 TraceCheckUtils]: 38: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,816 INFO L290 TraceCheckUtils]: 39: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,816 INFO L290 TraceCheckUtils]: 40: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,816 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {42324#true} {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,818 INFO L290 TraceCheckUtils]: 42: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,819 INFO L290 TraceCheckUtils]: 43: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,819 INFO L272 TraceCheckUtils]: 44: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,819 INFO L290 TraceCheckUtils]: 45: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,819 INFO L290 TraceCheckUtils]: 46: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,819 INFO L290 TraceCheckUtils]: 47: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,820 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {42324#true} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,820 INFO L272 TraceCheckUtils]: 49: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,820 INFO L290 TraceCheckUtils]: 50: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:31:49,820 INFO L290 TraceCheckUtils]: 51: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,821 INFO L290 TraceCheckUtils]: 52: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,821 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,821 INFO L272 TraceCheckUtils]: 54: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,821 INFO L290 TraceCheckUtils]: 55: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,822 INFO L290 TraceCheckUtils]: 56: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,822 INFO L290 TraceCheckUtils]: 57: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,822 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {42324#true} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,822 INFO L272 TraceCheckUtils]: 59: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,823 INFO L290 TraceCheckUtils]: 60: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:31:49,823 INFO L290 TraceCheckUtils]: 61: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,823 INFO L290 TraceCheckUtils]: 62: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,824 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,825 INFO L290 TraceCheckUtils]: 64: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,828 INFO L290 TraceCheckUtils]: 65: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,829 INFO L290 TraceCheckUtils]: 66: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,829 INFO L290 TraceCheckUtils]: 67: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,830 INFO L290 TraceCheckUtils]: 68: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,830 INFO L272 TraceCheckUtils]: 69: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,830 INFO L290 TraceCheckUtils]: 70: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,830 INFO L290 TraceCheckUtils]: 71: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,830 INFO L290 TraceCheckUtils]: 72: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,831 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #95#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,831 INFO L272 TraceCheckUtils]: 74: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,831 INFO L290 TraceCheckUtils]: 75: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,831 INFO L290 TraceCheckUtils]: 76: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,831 INFO L290 TraceCheckUtils]: 77: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,832 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #97#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,832 INFO L272 TraceCheckUtils]: 79: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,832 INFO L290 TraceCheckUtils]: 80: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-15 07:31:49,832 INFO L290 TraceCheckUtils]: 81: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-15 07:31:49,832 INFO L290 TraceCheckUtils]: 82: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-15 07:31:49,833 INFO L284 TraceCheckUtils]: 83: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #99#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,833 INFO L272 TraceCheckUtils]: 84: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-15 07:31:49,833 INFO L290 TraceCheckUtils]: 85: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:31:49,834 INFO L290 TraceCheckUtils]: 86: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,834 INFO L290 TraceCheckUtils]: 87: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 07:31:49,835 INFO L284 TraceCheckUtils]: 88: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #101#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,835 INFO L290 TraceCheckUtils]: 89: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,837 INFO L290 TraceCheckUtils]: 90: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,838 INFO L290 TraceCheckUtils]: 91: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,838 INFO L290 TraceCheckUtils]: 92: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 07:31:49,841 INFO L290 TraceCheckUtils]: 93: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-15 07:31:49,842 INFO L290 TraceCheckUtils]: 94: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !false; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-15 07:31:49,842 INFO L290 TraceCheckUtils]: 95: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !(0 != ~b~0); {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-15 07:31:49,845 INFO L272 TraceCheckUtils]: 96: Hoare triple {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 07:31:49,845 INFO L290 TraceCheckUtils]: 97: Hoare triple {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {42634#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 07:31:49,845 INFO L290 TraceCheckUtils]: 98: Hoare triple {42634#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {42325#false} is VALID [2022-04-15 07:31:49,846 INFO L290 TraceCheckUtils]: 99: Hoare triple {42325#false} assume !false; {42325#false} is VALID [2022-04-15 07:31:49,846 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 71 proven. 76 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-15 07:31:49,846 INFO L328 TraceCheckSpWp]: Computing backward predicates...