/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-scaling/egcd2-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 05:43:15,926 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 05:43:15,928 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 05:43:15,968 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 05:43:15,969 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 05:43:15,970 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 05:43:15,972 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 05:43:15,975 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 05:43:15,976 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 05:43:15,980 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 05:43:15,981 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 05:43:15,983 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 05:43:15,983 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 05:43:15,985 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 05:43:15,986 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 05:43:15,987 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 05:43:15,987 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 05:43:15,988 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 05:43:15,990 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 05:43:15,993 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 05:43:15,995 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 05:43:15,996 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 05:43:15,997 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 05:43:15,998 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 05:43:15,999 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 05:43:16,004 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 05:43:16,005 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 05:43:16,005 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 05:43:16,006 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 05:43:16,006 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 05:43:16,008 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 05:43:16,008 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 05:43:16,009 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 05:43:16,010 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 05:43:16,010 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 05:43:16,011 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 05:43:16,011 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 05:43:16,012 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 05:43:16,012 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 05:43:16,012 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 05:43:16,013 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 05:43:16,014 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 05:43:16,015 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-08 05:43:16,023 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 05:43:16,024 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 05:43:16,025 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 05:43:16,025 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 05:43:16,025 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 05:43:16,025 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 05:43:16,025 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 05:43:16,025 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 05:43:16,026 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 05:43:16,026 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 05:43:16,026 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 05:43:16,027 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 05:43:16,027 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 05:43:16,027 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 05:43:16,027 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 05:43:16,027 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 05:43:16,027 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 05:43:16,027 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 05:43:16,027 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:43:16,028 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 05:43:16,028 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 05:43:16,028 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 05:43:16,028 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 05:43:16,028 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 05:43:16,028 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 05:43:16,028 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 05:43:16,220 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 05:43:16,238 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 05:43:16,240 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 05:43:16,241 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 05:43:16,243 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 05:43:16,244 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound20.c [2022-04-08 05:43:16,298 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/843556e22/0ad79004950f4195975315f11e00be22/FLAG9f737b06e [2022-04-08 05:43:16,629 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 05:43:16,629 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound20.c [2022-04-08 05:43:16,638 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/843556e22/0ad79004950f4195975315f11e00be22/FLAG9f737b06e [2022-04-08 05:43:17,064 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/843556e22/0ad79004950f4195975315f11e00be22 [2022-04-08 05:43:17,066 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 05:43:17,067 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 05:43:17,069 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 05:43:17,069 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 05:43:17,073 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 05:43:17,074 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,075 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@101014d0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17, skipping insertion in model container [2022-04-08 05:43:17,075 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,082 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 05:43:17,098 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 05:43:17,222 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound20.c[490,503] [2022-04-08 05:43:17,244 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:43:17,251 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 05:43:17,259 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound20.c[490,503] [2022-04-08 05:43:17,269 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:43:17,279 INFO L208 MainTranslator]: Completed translation [2022-04-08 05:43:17,279 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17 WrapperNode [2022-04-08 05:43:17,279 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 05:43:17,280 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 05:43:17,280 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 05:43:17,280 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 05:43:17,288 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,288 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,293 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,294 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,299 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,304 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,305 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,307 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 05:43:17,308 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 05:43:17,308 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 05:43:17,308 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 05:43:17,308 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (1/1) ... [2022-04-08 05:43:17,314 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:43:17,323 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:17,333 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 05:43:17,348 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 05:43:17,370 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 05:43:17,370 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 05:43:17,370 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 05:43:17,370 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 05:43:17,370 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 05:43:17,371 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 05:43:17,371 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 05:43:17,371 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 05:43:17,371 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 05:43:17,371 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 05:43:17,371 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 05:43:17,371 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 05:43:17,372 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 05:43:17,421 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 05:43:17,422 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 05:43:17,582 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 05:43:17,588 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 05:43:17,588 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 05:43:17,590 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:43:17 BoogieIcfgContainer [2022-04-08 05:43:17,590 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 05:43:17,591 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 05:43:17,591 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 05:43:17,594 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 05:43:17,594 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 05:43:17" (1/3) ... [2022-04-08 05:43:17,595 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@54144775 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:43:17, skipping insertion in model container [2022-04-08 05:43:17,595 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:43:17" (2/3) ... [2022-04-08 05:43:17,595 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@54144775 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:43:17, skipping insertion in model container [2022-04-08 05:43:17,595 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:43:17" (3/3) ... [2022-04-08 05:43:17,596 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_unwindbound20.c [2022-04-08 05:43:17,600 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 05:43:17,600 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 05:43:17,650 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 05:43:17,656 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 05:43:17,656 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 05:43:17,687 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 23 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:43:17,694 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-08 05:43:17,694 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:17,695 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:43:17,695 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:17,699 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:17,700 INFO L85 PathProgramCache]: Analyzing trace with hash 1950618521, now seen corresponding path program 1 times [2022-04-08 05:43:17,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:17,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1118489848] [2022-04-08 05:43:17,716 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:17,716 INFO L85 PathProgramCache]: Analyzing trace with hash 1950618521, now seen corresponding path program 2 times [2022-04-08 05:43:17,719 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:17,719 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1776183980] [2022-04-08 05:43:17,719 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:17,720 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:17,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:17,930 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 05:43:17,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:17,953 INFO L290 TraceCheckUtils]: 0: Hoare triple {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {42#true} is VALID [2022-04-08 05:43:17,953 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-08 05:43:17,954 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-08 05:43:17,954 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 05:43:17,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:17,973 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:17,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:17,974 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:17,974 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-08 05:43:17,975 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-08 05:43:17,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:17,995 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:17,995 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:17,995 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:17,996 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-08 05:43:17,996 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 05:43:17,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:18,006 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:18,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:18,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:18,008 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-08 05:43:18,008 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-08 05:43:18,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:18,023 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:18,024 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:18,024 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:18,024 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #84#return; {43#false} is VALID [2022-04-08 05:43:18,025 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} call ULTIMATE.init(); {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 05:43:18,025 INFO L290 TraceCheckUtils]: 1: Hoare triple {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {42#true} is VALID [2022-04-08 05:43:18,026 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-08 05:43:18,027 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-08 05:43:18,027 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret8 := main(); {42#true} is VALID [2022-04-08 05:43:18,027 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {42#true} is VALID [2022-04-08 05:43:18,027 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-08 05:43:18,027 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:18,028 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:18,028 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:18,028 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-08 05:43:18,029 INFO L272 TraceCheckUtils]: 11: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-08 05:43:18,029 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:18,030 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:18,030 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:18,030 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-08 05:43:18,030 INFO L290 TraceCheckUtils]: 16: Hoare triple {43#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {43#false} is VALID [2022-04-08 05:43:18,031 INFO L272 TraceCheckUtils]: 17: Hoare triple {43#false} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {42#true} is VALID [2022-04-08 05:43:18,031 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:18,032 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:18,032 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:18,033 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-08 05:43:18,033 INFO L272 TraceCheckUtils]: 22: Hoare triple {43#false} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {42#true} is VALID [2022-04-08 05:43:18,033 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 05:43:18,034 INFO L290 TraceCheckUtils]: 24: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 05:43:18,034 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 05:43:18,035 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {43#false} {43#false} #84#return; {43#false} is VALID [2022-04-08 05:43:18,036 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !true; {43#false} is VALID [2022-04-08 05:43:18,039 INFO L272 TraceCheckUtils]: 28: Hoare triple {43#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {43#false} is VALID [2022-04-08 05:43:18,039 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-08 05:43:18,039 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-08 05:43:18,040 INFO L290 TraceCheckUtils]: 31: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-08 05:43:18,040 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:43:18,041 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:43:18,041 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1776183980] [2022-04-08 05:43:18,042 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1776183980] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:18,043 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:18,043 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:43:18,047 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:43:18,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1118489848] [2022-04-08 05:43:18,048 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1118489848] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:18,048 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:18,048 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:43:18,048 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1380093627] [2022-04-08 05:43:18,049 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:43:18,054 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 32 [2022-04-08 05:43:18,056 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:43:18,059 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:18,092 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:18,092 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 05:43:18,093 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:18,128 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 05:43:18,129 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 05:43:18,131 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 23 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:18,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:18,379 INFO L93 Difference]: Finished difference Result 72 states and 112 transitions. [2022-04-08 05:43:18,379 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 05:43:18,379 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 32 [2022-04-08 05:43:18,379 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:43:18,383 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:18,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-04-08 05:43:18,396 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:18,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-04-08 05:43:18,403 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 112 transitions. [2022-04-08 05:43:18,519 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:18,527 INFO L225 Difference]: With dead ends: 72 [2022-04-08 05:43:18,528 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 05:43:18,530 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 05:43:18,533 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:43:18,534 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 49 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:43:18,546 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 05:43:18,560 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-08 05:43:18,560 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:43:18,561 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:18,563 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:18,563 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:18,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:18,569 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-08 05:43:18,569 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 05:43:18,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:18,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:18,570 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 35 states. [2022-04-08 05:43:18,571 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 35 states. [2022-04-08 05:43:18,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:18,580 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-08 05:43:18,580 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 05:43:18,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:18,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:18,581 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:43:18,581 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:43:18,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:18,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 45 transitions. [2022-04-08 05:43:18,586 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 45 transitions. Word has length 32 [2022-04-08 05:43:18,586 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:43:18,586 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 45 transitions. [2022-04-08 05:43:18,586 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:18,587 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 45 transitions. [2022-04-08 05:43:18,635 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:18,636 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 45 transitions. [2022-04-08 05:43:18,638 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 05:43:18,638 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:18,639 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:43:18,639 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 05:43:18,639 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:18,640 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:18,641 INFO L85 PathProgramCache]: Analyzing trace with hash -1734391985, now seen corresponding path program 1 times [2022-04-08 05:43:18,641 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:18,641 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [670186167] [2022-04-08 05:43:18,642 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:18,642 INFO L85 PathProgramCache]: Analyzing trace with hash -1734391985, now seen corresponding path program 2 times [2022-04-08 05:43:18,642 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:18,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1970157689] [2022-04-08 05:43:18,643 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:18,643 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:18,682 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:43:18,683 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [67864891] [2022-04-08 05:43:18,683 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:43:18,683 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:18,683 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:18,688 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:43:18,695 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 05:43:18,753 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 05:43:18,754 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:43:18,755 INFO L263 TraceCheckSpWp]: Trace formula consists of 78 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 05:43:18,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:18,786 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:43:19,027 INFO L272 TraceCheckUtils]: 0: Hoare triple {348#true} call ULTIMATE.init(); {348#true} is VALID [2022-04-08 05:43:19,029 INFO L290 TraceCheckUtils]: 1: Hoare triple {348#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);~counter~0 := 0; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,029 INFO L290 TraceCheckUtils]: 2: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,035 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {356#(<= ~counter~0 0)} {348#true} #98#return; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,036 INFO L272 TraceCheckUtils]: 4: Hoare triple {356#(<= ~counter~0 0)} call #t~ret8 := main(); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,036 INFO L290 TraceCheckUtils]: 5: Hoare triple {356#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,041 INFO L272 TraceCheckUtils]: 6: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,042 INFO L290 TraceCheckUtils]: 7: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,042 INFO L290 TraceCheckUtils]: 8: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,043 INFO L290 TraceCheckUtils]: 9: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,043 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #78#return; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,044 INFO L272 TraceCheckUtils]: 11: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,044 INFO L290 TraceCheckUtils]: 12: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,045 INFO L290 TraceCheckUtils]: 13: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,045 INFO L290 TraceCheckUtils]: 14: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,046 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #80#return; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,046 INFO L290 TraceCheckUtils]: 16: Hoare triple {356#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,047 INFO L272 TraceCheckUtils]: 17: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,048 INFO L290 TraceCheckUtils]: 18: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,048 INFO L290 TraceCheckUtils]: 19: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,049 INFO L290 TraceCheckUtils]: 20: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,049 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #82#return; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,050 INFO L272 TraceCheckUtils]: 22: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,050 INFO L290 TraceCheckUtils]: 23: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,051 INFO L290 TraceCheckUtils]: 24: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,051 INFO L290 TraceCheckUtils]: 25: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,052 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #84#return; {356#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:19,053 INFO L290 TraceCheckUtils]: 27: Hoare triple {356#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {435#(<= |main_#t~post6| 0)} is VALID [2022-04-08 05:43:19,054 INFO L290 TraceCheckUtils]: 28: Hoare triple {435#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {349#false} is VALID [2022-04-08 05:43:19,054 INFO L272 TraceCheckUtils]: 29: Hoare triple {349#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {349#false} is VALID [2022-04-08 05:43:19,054 INFO L290 TraceCheckUtils]: 30: Hoare triple {349#false} ~cond := #in~cond; {349#false} is VALID [2022-04-08 05:43:19,054 INFO L290 TraceCheckUtils]: 31: Hoare triple {349#false} assume 0 == ~cond; {349#false} is VALID [2022-04-08 05:43:19,054 INFO L290 TraceCheckUtils]: 32: Hoare triple {349#false} assume !false; {349#false} is VALID [2022-04-08 05:43:19,055 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:43:19,055 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:43:19,055 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:43:19,056 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1970157689] [2022-04-08 05:43:19,056 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:43:19,056 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [67864891] [2022-04-08 05:43:19,056 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [67864891] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:19,056 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:19,056 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 05:43:19,057 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:43:19,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [670186167] [2022-04-08 05:43:19,058 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [670186167] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:19,058 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:19,058 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 05:43:19,058 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1483874628] [2022-04-08 05:43:19,058 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:43:19,059 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 05:43:19,059 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:43:19,059 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:19,080 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:19,081 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 05:43:19,083 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:19,085 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 05:43:19,089 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 05:43:19,090 INFO L87 Difference]: Start difference. First operand 34 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:19,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:19,218 INFO L93 Difference]: Finished difference Result 44 states and 56 transitions. [2022-04-08 05:43:19,218 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 05:43:19,219 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 05:43:19,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:43:19,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:19,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-04-08 05:43:19,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:19,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-04-08 05:43:19,228 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 56 transitions. [2022-04-08 05:43:19,273 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:19,275 INFO L225 Difference]: With dead ends: 44 [2022-04-08 05:43:19,275 INFO L226 Difference]: Without dead ends: 36 [2022-04-08 05:43:19,276 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 05:43:19,277 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:43:19,277 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 110 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:43:19,278 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-08 05:43:19,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2022-04-08 05:43:19,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:43:19,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:19,292 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:19,292 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:19,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:19,297 INFO L93 Difference]: Finished difference Result 36 states and 47 transitions. [2022-04-08 05:43:19,297 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-08 05:43:19,298 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:19,298 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:19,298 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 36 states. [2022-04-08 05:43:19,299 INFO L87 Difference]: Start difference. First operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 36 states. [2022-04-08 05:43:19,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:19,301 INFO L93 Difference]: Finished difference Result 36 states and 47 transitions. [2022-04-08 05:43:19,301 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-08 05:43:19,302 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:19,302 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:19,302 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:43:19,302 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:43:19,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:19,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 47 transitions. [2022-04-08 05:43:19,305 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 47 transitions. Word has length 33 [2022-04-08 05:43:19,305 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:43:19,305 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 47 transitions. [2022-04-08 05:43:19,306 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:19,306 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 47 transitions. [2022-04-08 05:43:19,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:19,353 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-08 05:43:19,355 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 05:43:19,355 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:19,355 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:43:19,381 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 05:43:19,576 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:19,576 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:19,577 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:19,577 INFO L85 PathProgramCache]: Analyzing trace with hash 2066454233, now seen corresponding path program 1 times [2022-04-08 05:43:19,577 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:19,577 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [598527614] [2022-04-08 05:43:19,578 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:19,578 INFO L85 PathProgramCache]: Analyzing trace with hash 2066454233, now seen corresponding path program 2 times [2022-04-08 05:43:19,578 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:19,578 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1114500388] [2022-04-08 05:43:19,578 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:19,578 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:19,596 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:43:19,597 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [999092070] [2022-04-08 05:43:19,597 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:43:19,597 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:19,597 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:19,598 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:43:19,647 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 05:43:19,660 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:43:19,661 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:43:19,662 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 05:43:19,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:19,676 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:43:19,825 INFO L272 TraceCheckUtils]: 0: Hoare triple {682#true} call ULTIMATE.init(); {682#true} is VALID [2022-04-08 05:43:19,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {682#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);~counter~0 := 0; {682#true} is VALID [2022-04-08 05:43:19,826 INFO L290 TraceCheckUtils]: 2: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:19,826 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {682#true} {682#true} #98#return; {682#true} is VALID [2022-04-08 05:43:19,826 INFO L272 TraceCheckUtils]: 4: Hoare triple {682#true} call #t~ret8 := main(); {682#true} is VALID [2022-04-08 05:43:19,826 INFO L290 TraceCheckUtils]: 5: Hoare triple {682#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {682#true} is VALID [2022-04-08 05:43:19,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {682#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:19,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-08 05:43:19,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-08 05:43:19,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:19,827 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {682#true} {682#true} #78#return; {682#true} is VALID [2022-04-08 05:43:19,827 INFO L272 TraceCheckUtils]: 11: Hoare triple {682#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:19,828 INFO L290 TraceCheckUtils]: 12: Hoare triple {682#true} ~cond := #in~cond; {723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:43:19,828 INFO L290 TraceCheckUtils]: 13: Hoare triple {723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:19,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:19,829 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {727#(not (= |assume_abort_if_not_#in~cond| 0))} {682#true} #80#return; {734#(<= 1 main_~y~0)} is VALID [2022-04-08 05:43:19,832 INFO L290 TraceCheckUtils]: 16: Hoare triple {734#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:19,832 INFO L272 TraceCheckUtils]: 17: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:19,832 INFO L290 TraceCheckUtils]: 18: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-08 05:43:19,832 INFO L290 TraceCheckUtils]: 19: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-08 05:43:19,833 INFO L290 TraceCheckUtils]: 20: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:19,833 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #82#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:19,833 INFO L272 TraceCheckUtils]: 22: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:19,834 INFO L290 TraceCheckUtils]: 23: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-08 05:43:19,834 INFO L290 TraceCheckUtils]: 24: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-08 05:43:19,834 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:19,835 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #84#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:19,836 INFO L290 TraceCheckUtils]: 27: Hoare triple {738#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:19,837 INFO L290 TraceCheckUtils]: 28: Hoare triple {738#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:19,837 INFO L290 TraceCheckUtils]: 29: Hoare triple {738#(<= 1 main_~b~0)} assume !(0 != ~b~0); {683#false} is VALID [2022-04-08 05:43:19,838 INFO L272 TraceCheckUtils]: 30: Hoare triple {683#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {683#false} is VALID [2022-04-08 05:43:19,838 INFO L290 TraceCheckUtils]: 31: Hoare triple {683#false} ~cond := #in~cond; {683#false} is VALID [2022-04-08 05:43:19,846 INFO L290 TraceCheckUtils]: 32: Hoare triple {683#false} assume 0 == ~cond; {683#false} is VALID [2022-04-08 05:43:19,849 INFO L290 TraceCheckUtils]: 33: Hoare triple {683#false} assume !false; {683#false} is VALID [2022-04-08 05:43:19,849 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 05:43:19,849 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:43:20,104 INFO L290 TraceCheckUtils]: 33: Hoare triple {683#false} assume !false; {683#false} is VALID [2022-04-08 05:43:20,104 INFO L290 TraceCheckUtils]: 32: Hoare triple {683#false} assume 0 == ~cond; {683#false} is VALID [2022-04-08 05:43:20,104 INFO L290 TraceCheckUtils]: 31: Hoare triple {683#false} ~cond := #in~cond; {683#false} is VALID [2022-04-08 05:43:20,105 INFO L272 TraceCheckUtils]: 30: Hoare triple {683#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {683#false} is VALID [2022-04-08 05:43:20,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {738#(<= 1 main_~b~0)} assume !(0 != ~b~0); {683#false} is VALID [2022-04-08 05:43:20,106 INFO L290 TraceCheckUtils]: 28: Hoare triple {738#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:20,106 INFO L290 TraceCheckUtils]: 27: Hoare triple {738#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:20,107 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #84#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:20,107 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:20,107 INFO L290 TraceCheckUtils]: 24: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-08 05:43:20,107 INFO L290 TraceCheckUtils]: 23: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-08 05:43:20,107 INFO L272 TraceCheckUtils]: 22: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:20,108 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #82#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:20,109 INFO L290 TraceCheckUtils]: 20: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:20,110 INFO L290 TraceCheckUtils]: 19: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-08 05:43:20,110 INFO L290 TraceCheckUtils]: 18: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-08 05:43:20,111 INFO L272 TraceCheckUtils]: 17: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:20,115 INFO L290 TraceCheckUtils]: 16: Hoare triple {734#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {738#(<= 1 main_~b~0)} is VALID [2022-04-08 05:43:20,116 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {727#(not (= |assume_abort_if_not_#in~cond| 0))} {682#true} #80#return; {734#(<= 1 main_~y~0)} is VALID [2022-04-08 05:43:20,117 INFO L290 TraceCheckUtils]: 14: Hoare triple {727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:20,117 INFO L290 TraceCheckUtils]: 13: Hoare triple {853#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:20,118 INFO L290 TraceCheckUtils]: 12: Hoare triple {682#true} ~cond := #in~cond; {853#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 05:43:20,118 INFO L272 TraceCheckUtils]: 11: Hoare triple {682#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:20,118 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {682#true} {682#true} #78#return; {682#true} is VALID [2022-04-08 05:43:20,118 INFO L290 TraceCheckUtils]: 9: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:20,118 INFO L290 TraceCheckUtils]: 8: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-08 05:43:20,118 INFO L290 TraceCheckUtils]: 7: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-08 05:43:20,119 INFO L272 TraceCheckUtils]: 6: Hoare triple {682#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-08 05:43:20,119 INFO L290 TraceCheckUtils]: 5: Hoare triple {682#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {682#true} is VALID [2022-04-08 05:43:20,119 INFO L272 TraceCheckUtils]: 4: Hoare triple {682#true} call #t~ret8 := main(); {682#true} is VALID [2022-04-08 05:43:20,119 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {682#true} {682#true} #98#return; {682#true} is VALID [2022-04-08 05:43:20,119 INFO L290 TraceCheckUtils]: 2: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-08 05:43:20,120 INFO L290 TraceCheckUtils]: 1: Hoare triple {682#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);~counter~0 := 0; {682#true} is VALID [2022-04-08 05:43:20,120 INFO L272 TraceCheckUtils]: 0: Hoare triple {682#true} call ULTIMATE.init(); {682#true} is VALID [2022-04-08 05:43:20,120 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 05:43:20,120 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:43:20,120 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1114500388] [2022-04-08 05:43:20,120 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:43:20,121 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [999092070] [2022-04-08 05:43:20,121 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [999092070] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:43:20,121 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:43:20,121 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-08 05:43:20,121 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:43:20,121 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [598527614] [2022-04-08 05:43:20,122 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [598527614] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:20,122 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:20,122 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:43:20,122 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [324681933] [2022-04-08 05:43:20,122 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:43:20,123 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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 34 [2022-04-08 05:43:20,123 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:43:20,124 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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-08 05:43:20,144 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:20,145 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:43:20,145 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:20,145 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:43:20,145 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-08 05:43:20,146 INFO L87 Difference]: Start difference. First operand 36 states and 47 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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-08 05:43:20,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:20,477 INFO L93 Difference]: Finished difference Result 53 states and 71 transitions. [2022-04-08 05:43:20,477 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:43:20,478 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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 34 [2022-04-08 05:43:20,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:43:20,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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-08 05:43:20,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-04-08 05:43:20,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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-08 05:43:20,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-04-08 05:43:20,483 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 71 transitions. [2022-04-08 05:43:20,550 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:20,557 INFO L225 Difference]: With dead ends: 53 [2022-04-08 05:43:20,557 INFO L226 Difference]: Without dead ends: 45 [2022-04-08 05:43:20,559 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:43:20,564 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 28 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 85 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:43:20,564 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 135 Invalid, 85 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:43:20,565 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-08 05:43:20,598 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 37. [2022-04-08 05:43:20,598 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:43:20,599 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:20,599 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:20,599 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:20,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:20,602 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-04-08 05:43:20,602 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-08 05:43:20,603 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:20,603 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:20,604 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 45 states. [2022-04-08 05:43:20,604 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 45 states. [2022-04-08 05:43:20,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:20,607 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-04-08 05:43:20,607 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-08 05:43:20,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:20,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:20,607 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:43:20,608 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:43:20,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 05:43:20,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-08 05:43:20,613 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 34 [2022-04-08 05:43:20,614 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:43:20,614 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-08 05:43:20,614 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 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-08 05:43:20,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 48 transitions. [2022-04-08 05:43:20,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:20,668 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-08 05:43:20,671 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-08 05:43:20,671 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:20,671 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:43:20,703 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 05:43:20,889 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 05:43:20,889 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:20,889 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:20,889 INFO L85 PathProgramCache]: Analyzing trace with hash 1678606280, now seen corresponding path program 1 times [2022-04-08 05:43:20,890 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:20,890 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [704022054] [2022-04-08 05:43:20,890 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:20,890 INFO L85 PathProgramCache]: Analyzing trace with hash 1678606280, now seen corresponding path program 2 times [2022-04-08 05:43:20,890 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:20,890 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1336954654] [2022-04-08 05:43:20,890 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:20,891 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:20,917 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:43:20,918 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [902271261] [2022-04-08 05:43:20,918 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:43:20,918 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:20,918 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:20,919 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:43:20,925 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 05:43:20,964 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 05:43:20,965 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:43:20,965 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 05:43:20,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:20,980 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:43:21,143 INFO L272 TraceCheckUtils]: 0: Hoare triple {1166#true} call ULTIMATE.init(); {1166#true} is VALID [2022-04-08 05:43:21,143 INFO L290 TraceCheckUtils]: 1: Hoare triple {1166#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);~counter~0 := 0; {1166#true} is VALID [2022-04-08 05:43:21,144 INFO L290 TraceCheckUtils]: 2: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-08 05:43:21,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1166#true} {1166#true} #98#return; {1166#true} is VALID [2022-04-08 05:43:21,144 INFO L272 TraceCheckUtils]: 4: Hoare triple {1166#true} call #t~ret8 := main(); {1166#true} is VALID [2022-04-08 05:43:21,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {1166#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {1166#true} is VALID [2022-04-08 05:43:21,144 INFO L272 TraceCheckUtils]: 6: Hoare triple {1166#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1166#true} is VALID [2022-04-08 05:43:21,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-08 05:43:21,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-08 05:43:21,145 INFO L290 TraceCheckUtils]: 9: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-08 05:43:21,145 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1166#true} {1166#true} #78#return; {1166#true} is VALID [2022-04-08 05:43:21,145 INFO L272 TraceCheckUtils]: 11: Hoare triple {1166#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1166#true} is VALID [2022-04-08 05:43:21,146 INFO L290 TraceCheckUtils]: 12: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-08 05:43:21,146 INFO L290 TraceCheckUtils]: 13: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-08 05:43:21,146 INFO L290 TraceCheckUtils]: 14: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-08 05:43:21,146 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1166#true} {1166#true} #80#return; {1166#true} is VALID [2022-04-08 05:43:21,147 INFO L290 TraceCheckUtils]: 16: Hoare triple {1166#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1166#true} is VALID [2022-04-08 05:43:21,147 INFO L272 TraceCheckUtils]: 17: Hoare triple {1166#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1166#true} is VALID [2022-04-08 05:43:21,147 INFO L290 TraceCheckUtils]: 18: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-08 05:43:21,147 INFO L290 TraceCheckUtils]: 19: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-08 05:43:21,148 INFO L290 TraceCheckUtils]: 20: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-08 05:43:21,148 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1166#true} {1166#true} #82#return; {1166#true} is VALID [2022-04-08 05:43:21,148 INFO L272 TraceCheckUtils]: 22: Hoare triple {1166#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1166#true} is VALID [2022-04-08 05:43:21,149 INFO L290 TraceCheckUtils]: 23: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-08 05:43:21,149 INFO L290 TraceCheckUtils]: 24: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-08 05:43:21,149 INFO L290 TraceCheckUtils]: 25: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-08 05:43:21,149 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1166#true} {1166#true} #84#return; {1166#true} is VALID [2022-04-08 05:43:21,149 INFO L290 TraceCheckUtils]: 27: Hoare triple {1166#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1166#true} is VALID [2022-04-08 05:43:21,149 INFO L290 TraceCheckUtils]: 28: Hoare triple {1166#true} assume !!(#t~post6 < 20);havoc #t~post6; {1166#true} is VALID [2022-04-08 05:43:21,150 INFO L290 TraceCheckUtils]: 29: Hoare triple {1166#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-08 05:43:21,151 INFO L290 TraceCheckUtils]: 30: Hoare triple {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-08 05:43:21,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} assume !!(#t~post7 < 20);havoc #t~post7; {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-08 05:43:21,154 INFO L272 TraceCheckUtils]: 32: Hoare triple {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1268#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:43:21,154 INFO L290 TraceCheckUtils]: 33: Hoare triple {1268#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1272#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:21,155 INFO L290 TraceCheckUtils]: 34: Hoare triple {1272#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1167#false} is VALID [2022-04-08 05:43:21,155 INFO L290 TraceCheckUtils]: 35: Hoare triple {1167#false} assume !false; {1167#false} is VALID [2022-04-08 05:43:21,155 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:43:21,155 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:43:21,155 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:43:21,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1336954654] [2022-04-08 05:43:21,155 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:43:21,156 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [902271261] [2022-04-08 05:43:21,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [902271261] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:21,156 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:21,156 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:43:21,156 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:43:21,156 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [704022054] [2022-04-08 05:43:21,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [704022054] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:21,156 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:21,157 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:43:21,157 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1054198414] [2022-04-08 05:43:21,157 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:43:21,157 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-04-08 05:43:21,158 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:43:21,158 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:43:21,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:21,190 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:43:21,191 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:21,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:43:21,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:43:21,192 INFO L87 Difference]: Start difference. First operand 37 states and 48 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:43:21,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:21,460 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-08 05:43:21,460 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:43:21,460 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-04-08 05:43:21,461 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:43:21,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:43:21,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:43:21,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:43:21,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-08 05:43:21,464 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-08 05:43:21,523 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-08 05:43:21,525 INFO L225 Difference]: With dead ends: 51 [2022-04-08 05:43:21,525 INFO L226 Difference]: Without dead ends: 49 [2022-04-08 05:43:21,525 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 05:43:21,526 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 7 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:43:21,526 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 150 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:43:21,527 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-04-08 05:43:21,563 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 44. [2022-04-08 05:43:21,563 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:43:21,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:21,565 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:21,566 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:21,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:21,570 INFO L93 Difference]: Finished difference Result 49 states and 65 transitions. [2022-04-08 05:43:21,570 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 65 transitions. [2022-04-08 05:43:21,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:21,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:21,571 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 49 states. [2022-04-08 05:43:21,573 INFO L87 Difference]: Start difference. First operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 49 states. [2022-04-08 05:43:21,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:21,579 INFO L93 Difference]: Finished difference Result 49 states and 65 transitions. [2022-04-08 05:43:21,579 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 65 transitions. [2022-04-08 05:43:21,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:21,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:21,579 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:43:21,579 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:43:21,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:21,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 56 transitions. [2022-04-08 05:43:21,582 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 56 transitions. Word has length 36 [2022-04-08 05:43:21,582 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:43:21,583 INFO L478 AbstractCegarLoop]: Abstraction has 44 states and 56 transitions. [2022-04-08 05:43:21,583 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:43:21,583 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 44 states and 56 transitions. [2022-04-08 05:43:21,638 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:21,638 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 56 transitions. [2022-04-08 05:43:21,638 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-08 05:43:21,639 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:21,639 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:43:21,657 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 05:43:21,847 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:21,847 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:21,848 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:21,848 INFO L85 PathProgramCache]: Analyzing trace with hash -2124209112, now seen corresponding path program 1 times [2022-04-08 05:43:21,848 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:21,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2043404259] [2022-04-08 05:43:21,849 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:21,849 INFO L85 PathProgramCache]: Analyzing trace with hash -2124209112, now seen corresponding path program 2 times [2022-04-08 05:43:21,849 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:21,849 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1344464369] [2022-04-08 05:43:21,849 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:21,849 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:21,868 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:43:21,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1558407762] [2022-04-08 05:43:21,869 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:43:21,869 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:21,869 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:21,870 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:43:21,904 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 05:43:21,944 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:43:21,944 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:43:21,946 INFO L263 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 05:43:21,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:21,960 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:43:22,144 INFO L272 TraceCheckUtils]: 0: Hoare triple {1568#true} call ULTIMATE.init(); {1568#true} is VALID [2022-04-08 05:43:22,145 INFO L290 TraceCheckUtils]: 1: Hoare triple {1568#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);~counter~0 := 0; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,145 INFO L290 TraceCheckUtils]: 2: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,146 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1576#(<= ~counter~0 0)} {1568#true} #98#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {1576#(<= ~counter~0 0)} call #t~ret8 := main(); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,146 INFO L290 TraceCheckUtils]: 5: Hoare triple {1576#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,147 INFO L272 TraceCheckUtils]: 6: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,147 INFO L290 TraceCheckUtils]: 7: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,148 INFO L290 TraceCheckUtils]: 8: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,148 INFO L290 TraceCheckUtils]: 9: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,151 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #78#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,152 INFO L272 TraceCheckUtils]: 11: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,152 INFO L290 TraceCheckUtils]: 12: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,153 INFO L290 TraceCheckUtils]: 13: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,153 INFO L290 TraceCheckUtils]: 14: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,153 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #80#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,154 INFO L290 TraceCheckUtils]: 16: Hoare triple {1576#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,154 INFO L272 TraceCheckUtils]: 17: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,154 INFO L290 TraceCheckUtils]: 18: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,155 INFO L290 TraceCheckUtils]: 19: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,155 INFO L290 TraceCheckUtils]: 20: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,155 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #82#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,156 INFO L272 TraceCheckUtils]: 22: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,156 INFO L290 TraceCheckUtils]: 23: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,156 INFO L290 TraceCheckUtils]: 24: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,157 INFO L290 TraceCheckUtils]: 25: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,157 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #84#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-08 05:43:22,158 INFO L290 TraceCheckUtils]: 27: Hoare triple {1576#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1655#(<= ~counter~0 1)} is VALID [2022-04-08 05:43:22,158 INFO L290 TraceCheckUtils]: 28: Hoare triple {1655#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1655#(<= ~counter~0 1)} is VALID [2022-04-08 05:43:22,158 INFO L290 TraceCheckUtils]: 29: Hoare triple {1655#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1655#(<= ~counter~0 1)} is VALID [2022-04-08 05:43:22,159 INFO L290 TraceCheckUtils]: 30: Hoare triple {1655#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1665#(<= |main_#t~post7| 1)} is VALID [2022-04-08 05:43:22,159 INFO L290 TraceCheckUtils]: 31: Hoare triple {1665#(<= |main_#t~post7| 1)} assume !(#t~post7 < 20);havoc #t~post7; {1569#false} is VALID [2022-04-08 05:43:22,159 INFO L290 TraceCheckUtils]: 32: Hoare triple {1569#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; {1569#false} is VALID [2022-04-08 05:43:22,159 INFO L290 TraceCheckUtils]: 33: Hoare triple {1569#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1569#false} is VALID [2022-04-08 05:43:22,159 INFO L290 TraceCheckUtils]: 34: Hoare triple {1569#false} assume !(#t~post6 < 20);havoc #t~post6; {1569#false} is VALID [2022-04-08 05:43:22,160 INFO L272 TraceCheckUtils]: 35: Hoare triple {1569#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {1569#false} is VALID [2022-04-08 05:43:22,160 INFO L290 TraceCheckUtils]: 36: Hoare triple {1569#false} ~cond := #in~cond; {1569#false} is VALID [2022-04-08 05:43:22,160 INFO L290 TraceCheckUtils]: 37: Hoare triple {1569#false} assume 0 == ~cond; {1569#false} is VALID [2022-04-08 05:43:22,160 INFO L290 TraceCheckUtils]: 38: Hoare triple {1569#false} assume !false; {1569#false} is VALID [2022-04-08 05:43:22,160 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:43:22,160 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:43:22,160 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:43:22,160 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1344464369] [2022-04-08 05:43:22,160 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:43:22,160 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1558407762] [2022-04-08 05:43:22,161 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1558407762] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:22,161 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:22,161 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:43:22,161 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:43:22,161 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2043404259] [2022-04-08 05:43:22,161 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2043404259] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:22,161 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:22,161 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:43:22,161 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1923794758] [2022-04-08 05:43:22,161 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:43:22,162 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), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-08 05:43:22,162 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:43:22,162 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), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:22,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:22,190 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:43:22,190 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:22,191 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:43:22,191 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:43:22,191 INFO L87 Difference]: Start difference. First operand 44 states and 56 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:22,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:22,374 INFO L93 Difference]: Finished difference Result 72 states and 94 transitions. [2022-04-08 05:43:22,374 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:43:22,374 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), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-08 05:43:22,375 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:43:22,375 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), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:22,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-04-08 05:43:22,379 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), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:22,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-04-08 05:43:22,381 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 78 transitions. [2022-04-08 05:43:22,446 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-08 05:43:22,447 INFO L225 Difference]: With dead ends: 72 [2022-04-08 05:43:22,447 INFO L226 Difference]: Without dead ends: 46 [2022-04-08 05:43:22,447 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:43:22,448 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:43:22,448 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 133 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:43:22,449 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-08 05:43:22,496 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-04-08 05:43:22,496 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:43:22,497 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:22,497 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:22,497 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:22,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:22,500 INFO L93 Difference]: Finished difference Result 46 states and 58 transitions. [2022-04-08 05:43:22,500 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-04-08 05:43:22,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:22,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:22,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-08 05:43:22,501 INFO L87 Difference]: Start difference. First operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-08 05:43:22,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:22,503 INFO L93 Difference]: Finished difference Result 46 states and 58 transitions. [2022-04-08 05:43:22,503 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-04-08 05:43:22,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:22,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:22,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:43:22,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:43:22,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:43:22,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 58 transitions. [2022-04-08 05:43:22,505 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 58 transitions. Word has length 39 [2022-04-08 05:43:22,505 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:43:22,506 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 58 transitions. [2022-04-08 05:43:22,506 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), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:43:22,506 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 46 states and 58 transitions. [2022-04-08 05:43:22,569 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:22,569 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-04-08 05:43:22,570 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 05:43:22,570 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:22,570 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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-08 05:43:22,596 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 05:43:22,779 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:22,779 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:22,780 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:22,780 INFO L85 PathProgramCache]: Analyzing trace with hash 1052701339, now seen corresponding path program 1 times [2022-04-08 05:43:22,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:22,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [27497853] [2022-04-08 05:43:22,781 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:22,781 INFO L85 PathProgramCache]: Analyzing trace with hash 1052701339, now seen corresponding path program 2 times [2022-04-08 05:43:22,781 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:22,781 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [601669426] [2022-04-08 05:43:22,781 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:22,781 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:22,793 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:43:22,793 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [308810438] [2022-04-08 05:43:22,794 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:43:22,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:22,794 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:22,795 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:43:22,796 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 05:43:22,839 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:43:22,840 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:43:22,840 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 05:43:22,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:22,852 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:43:23,142 INFO L272 TraceCheckUtils]: 0: Hoare triple {2017#true} call ULTIMATE.init(); {2017#true} is VALID [2022-04-08 05:43:23,143 INFO L290 TraceCheckUtils]: 1: Hoare triple {2017#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);~counter~0 := 0; {2017#true} is VALID [2022-04-08 05:43:23,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,143 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2017#true} {2017#true} #98#return; {2017#true} is VALID [2022-04-08 05:43:23,143 INFO L272 TraceCheckUtils]: 4: Hoare triple {2017#true} call #t~ret8 := main(); {2017#true} is VALID [2022-04-08 05:43:23,143 INFO L290 TraceCheckUtils]: 5: Hoare triple {2017#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {2017#true} is VALID [2022-04-08 05:43:23,143 INFO L272 TraceCheckUtils]: 6: Hoare triple {2017#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,144 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2017#true} {2017#true} #78#return; {2017#true} is VALID [2022-04-08 05:43:23,144 INFO L272 TraceCheckUtils]: 11: Hoare triple {2017#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,145 INFO L290 TraceCheckUtils]: 12: Hoare triple {2017#true} ~cond := #in~cond; {2058#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:43:23,150 INFO L290 TraceCheckUtils]: 13: Hoare triple {2058#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2062#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:23,151 INFO L290 TraceCheckUtils]: 14: Hoare triple {2062#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2062#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:23,151 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2062#(not (= |assume_abort_if_not_#in~cond| 0))} {2017#true} #80#return; {2069#(<= 1 main_~y~0)} is VALID [2022-04-08 05:43:23,152 INFO L290 TraceCheckUtils]: 16: Hoare triple {2069#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,152 INFO L272 TraceCheckUtils]: 17: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,152 INFO L290 TraceCheckUtils]: 18: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,153 INFO L290 TraceCheckUtils]: 19: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,153 INFO L290 TraceCheckUtils]: 20: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,153 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2017#true} {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,154 INFO L272 TraceCheckUtils]: 22: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,154 INFO L290 TraceCheckUtils]: 23: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,154 INFO L290 TraceCheckUtils]: 24: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,154 INFO L290 TraceCheckUtils]: 25: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,155 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2017#true} {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,155 INFO L290 TraceCheckUtils]: 27: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,156 INFO L290 TraceCheckUtils]: 28: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,156 INFO L290 TraceCheckUtils]: 29: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,157 INFO L290 TraceCheckUtils]: 30: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,157 INFO L290 TraceCheckUtils]: 31: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,157 INFO L272 TraceCheckUtils]: 32: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,157 INFO L290 TraceCheckUtils]: 33: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,158 INFO L290 TraceCheckUtils]: 34: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,158 INFO L290 TraceCheckUtils]: 35: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,158 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2017#true} {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:43:23,159 INFO L272 TraceCheckUtils]: 37: Hoare triple {2073#(and (= main_~r~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)); {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:43:23,160 INFO L290 TraceCheckUtils]: 38: Hoare triple {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2141#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:23,160 INFO L290 TraceCheckUtils]: 39: Hoare triple {2141#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2018#false} is VALID [2022-04-08 05:43:23,160 INFO L290 TraceCheckUtils]: 40: Hoare triple {2018#false} assume !false; {2018#false} is VALID [2022-04-08 05:43:23,160 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 5 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 05:43:23,161 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:43:23,407 INFO L290 TraceCheckUtils]: 40: Hoare triple {2018#false} assume !false; {2018#false} is VALID [2022-04-08 05:43:23,408 INFO L290 TraceCheckUtils]: 39: Hoare triple {2141#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2018#false} is VALID [2022-04-08 05:43:23,408 INFO L290 TraceCheckUtils]: 38: Hoare triple {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2141#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:23,410 INFO L272 TraceCheckUtils]: 37: Hoare triple {2157#(= 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)); {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:43:23,411 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2017#true} {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,411 INFO L290 TraceCheckUtils]: 35: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,411 INFO L290 TraceCheckUtils]: 34: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,411 INFO L290 TraceCheckUtils]: 33: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,411 INFO L272 TraceCheckUtils]: 32: Hoare triple {2157#(= main_~a~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)); {2017#true} is VALID [2022-04-08 05:43:23,412 INFO L290 TraceCheckUtils]: 31: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,412 INFO L290 TraceCheckUtils]: 30: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,413 INFO L290 TraceCheckUtils]: 29: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,413 INFO L290 TraceCheckUtils]: 28: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,414 INFO L290 TraceCheckUtils]: 27: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,414 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2017#true} {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #84#return; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,415 INFO L290 TraceCheckUtils]: 25: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,415 INFO L290 TraceCheckUtils]: 24: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,415 INFO L290 TraceCheckUtils]: 23: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,415 INFO L272 TraceCheckUtils]: 22: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,416 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2017#true} {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #82#return; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,416 INFO L290 TraceCheckUtils]: 20: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,416 INFO L290 TraceCheckUtils]: 19: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,416 INFO L290 TraceCheckUtils]: 18: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,416 INFO L272 TraceCheckUtils]: 17: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,417 INFO L290 TraceCheckUtils]: 16: Hoare triple {2017#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:43:23,417 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2017#true} {2017#true} #80#return; {2017#true} is VALID [2022-04-08 05:43:23,417 INFO L290 TraceCheckUtils]: 14: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,417 INFO L290 TraceCheckUtils]: 13: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,417 INFO L290 TraceCheckUtils]: 12: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,417 INFO L272 TraceCheckUtils]: 11: Hoare triple {2017#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,417 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2017#true} {2017#true} #78#return; {2017#true} is VALID [2022-04-08 05:43:23,418 INFO L290 TraceCheckUtils]: 9: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,418 INFO L290 TraceCheckUtils]: 8: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-08 05:43:23,418 INFO L290 TraceCheckUtils]: 7: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-08 05:43:23,419 INFO L272 TraceCheckUtils]: 6: Hoare triple {2017#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-08 05:43:23,419 INFO L290 TraceCheckUtils]: 5: Hoare triple {2017#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {2017#true} is VALID [2022-04-08 05:43:23,419 INFO L272 TraceCheckUtils]: 4: Hoare triple {2017#true} call #t~ret8 := main(); {2017#true} is VALID [2022-04-08 05:43:23,420 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2017#true} {2017#true} #98#return; {2017#true} is VALID [2022-04-08 05:43:23,420 INFO L290 TraceCheckUtils]: 2: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-08 05:43:23,420 INFO L290 TraceCheckUtils]: 1: Hoare triple {2017#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);~counter~0 := 0; {2017#true} is VALID [2022-04-08 05:43:23,420 INFO L272 TraceCheckUtils]: 0: Hoare triple {2017#true} call ULTIMATE.init(); {2017#true} is VALID [2022-04-08 05:43:23,421 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:43:23,421 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:43:23,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [601669426] [2022-04-08 05:43:23,421 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:43:23,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [308810438] [2022-04-08 05:43:23,422 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [308810438] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 05:43:23,422 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:43:23,422 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-08 05:43:23,422 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:43:23,422 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [27497853] [2022-04-08 05:43:23,424 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [27497853] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:23,424 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:23,424 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:43:23,424 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1692040761] [2022-04-08 05:43:23,424 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:43:23,425 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-08 05:43:23,426 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:43:23,427 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-08 05:43:23,469 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:23,469 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:43:23,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:23,470 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:43:23,470 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:43:23,470 INFO L87 Difference]: Start difference. First operand 46 states and 58 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-08 05:43:23,697 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:23,698 INFO L93 Difference]: Finished difference Result 61 states and 79 transitions. [2022-04-08 05:43:23,698 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:43:23,698 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-08 05:43:23,698 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:43:23,698 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-08 05:43:23,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-08 05:43:23,700 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-08 05:43:23,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-08 05:43:23,701 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-08 05:43:23,759 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:23,761 INFO L225 Difference]: With dead ends: 61 [2022-04-08 05:43:23,761 INFO L226 Difference]: Without dead ends: 59 [2022-04-08 05:43:23,761 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 73 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:43:23,762 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 8 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:43:23,762 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 157 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:43:23,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-08 05:43:23,821 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 58. [2022-04-08 05:43:23,822 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:43:23,822 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:23,822 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:23,822 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:23,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:23,825 INFO L93 Difference]: Finished difference Result 59 states and 77 transitions. [2022-04-08 05:43:23,825 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-08 05:43:23,826 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:23,826 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:23,826 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 59 states. [2022-04-08 05:43:23,826 INFO L87 Difference]: Start difference. First operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 59 states. [2022-04-08 05:43:23,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:23,829 INFO L93 Difference]: Finished difference Result 59 states and 77 transitions. [2022-04-08 05:43:23,829 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-08 05:43:23,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:23,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:23,829 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:43:23,829 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:43:23,830 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:23,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 76 transitions. [2022-04-08 05:43:23,832 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 76 transitions. Word has length 41 [2022-04-08 05:43:23,832 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:43:23,832 INFO L478 AbstractCegarLoop]: Abstraction has 58 states and 76 transitions. [2022-04-08 05:43:23,832 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-08 05:43:23,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 58 states and 76 transitions. [2022-04-08 05:43:23,913 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:23,913 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 76 transitions. [2022-04-08 05:43:23,914 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-08 05:43:23,914 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:23,914 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:43:23,941 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-08 05:43:24,134 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:24,135 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:24,135 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:24,135 INFO L85 PathProgramCache]: Analyzing trace with hash 1531994984, now seen corresponding path program 1 times [2022-04-08 05:43:24,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:24,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1894462116] [2022-04-08 05:43:24,136 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:24,136 INFO L85 PathProgramCache]: Analyzing trace with hash 1531994984, now seen corresponding path program 2 times [2022-04-08 05:43:24,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:24,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [797480529] [2022-04-08 05:43:24,137 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:24,137 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:24,150 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:43:24,150 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1404084923] [2022-04-08 05:43:24,150 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:43:24,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:24,151 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:24,152 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:43:24,174 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 05:43:24,212 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:43:24,212 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:43:24,213 INFO L263 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 05:43:24,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:24,231 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:43:24,547 INFO L272 TraceCheckUtils]: 0: Hoare triple {2629#true} call ULTIMATE.init(); {2629#true} is VALID [2022-04-08 05:43:24,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {2629#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);~counter~0 := 0; {2629#true} is VALID [2022-04-08 05:43:24,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2629#true} {2629#true} #98#return; {2629#true} is VALID [2022-04-08 05:43:24,547 INFO L272 TraceCheckUtils]: 4: Hoare triple {2629#true} call #t~ret8 := main(); {2629#true} is VALID [2022-04-08 05:43:24,547 INFO L290 TraceCheckUtils]: 5: Hoare triple {2629#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {2629#true} is VALID [2022-04-08 05:43:24,548 INFO L272 TraceCheckUtils]: 6: Hoare triple {2629#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,548 INFO L290 TraceCheckUtils]: 7: Hoare triple {2629#true} ~cond := #in~cond; {2655#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:43:24,548 INFO L290 TraceCheckUtils]: 8: Hoare triple {2655#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:24,549 INFO L290 TraceCheckUtils]: 9: Hoare triple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:43:24,549 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} {2629#true} #78#return; {2666#(<= 1 main_~x~0)} is VALID [2022-04-08 05:43:24,549 INFO L272 TraceCheckUtils]: 11: Hoare triple {2666#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,550 INFO L290 TraceCheckUtils]: 12: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,550 INFO L290 TraceCheckUtils]: 13: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,550 INFO L290 TraceCheckUtils]: 14: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,550 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2629#true} {2666#(<= 1 main_~x~0)} #80#return; {2666#(<= 1 main_~x~0)} is VALID [2022-04-08 05:43:24,551 INFO L290 TraceCheckUtils]: 16: Hoare triple {2666#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,551 INFO L272 TraceCheckUtils]: 17: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,551 INFO L290 TraceCheckUtils]: 18: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,551 INFO L290 TraceCheckUtils]: 19: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,551 INFO L290 TraceCheckUtils]: 20: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,554 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #82#return; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,554 INFO L272 TraceCheckUtils]: 22: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,555 INFO L290 TraceCheckUtils]: 23: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,555 INFO L290 TraceCheckUtils]: 24: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,555 INFO L290 TraceCheckUtils]: 25: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,555 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #84#return; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,556 INFO L290 TraceCheckUtils]: 27: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,556 INFO L290 TraceCheckUtils]: 28: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,557 INFO L290 TraceCheckUtils]: 29: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,557 INFO L290 TraceCheckUtils]: 30: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,558 INFO L290 TraceCheckUtils]: 31: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,558 INFO L272 TraceCheckUtils]: 32: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,558 INFO L290 TraceCheckUtils]: 33: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,558 INFO L290 TraceCheckUtils]: 34: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,558 INFO L290 TraceCheckUtils]: 35: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,559 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #86#return; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,559 INFO L272 TraceCheckUtils]: 37: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,559 INFO L290 TraceCheckUtils]: 38: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,560 INFO L290 TraceCheckUtils]: 39: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,560 INFO L290 TraceCheckUtils]: 40: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,561 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:43:24,561 INFO L272 TraceCheckUtils]: 42: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:43:24,562 INFO L290 TraceCheckUtils]: 43: Hoare triple {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2768#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:24,562 INFO L290 TraceCheckUtils]: 44: Hoare triple {2768#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2630#false} is VALID [2022-04-08 05:43:24,562 INFO L290 TraceCheckUtils]: 45: Hoare triple {2630#false} assume !false; {2630#false} is VALID [2022-04-08 05:43:24,563 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-08 05:43:24,563 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:43:24,809 INFO L290 TraceCheckUtils]: 45: Hoare triple {2630#false} assume !false; {2630#false} is VALID [2022-04-08 05:43:24,810 INFO L290 TraceCheckUtils]: 44: Hoare triple {2768#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2630#false} is VALID [2022-04-08 05:43:24,810 INFO L290 TraceCheckUtils]: 43: Hoare triple {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2768#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:24,811 INFO L272 TraceCheckUtils]: 42: Hoare triple {2784#(= 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)); {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:43:24,812 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #88#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,812 INFO L290 TraceCheckUtils]: 40: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,813 INFO L290 TraceCheckUtils]: 39: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,813 INFO L290 TraceCheckUtils]: 38: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,813 INFO L272 TraceCheckUtils]: 37: Hoare triple {2784#(= 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)); {2629#true} is VALID [2022-04-08 05:43:24,814 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #86#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,814 INFO L290 TraceCheckUtils]: 35: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,814 INFO L290 TraceCheckUtils]: 34: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,814 INFO L290 TraceCheckUtils]: 33: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,814 INFO L272 TraceCheckUtils]: 32: Hoare triple {2784#(= 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)); {2629#true} is VALID [2022-04-08 05:43:24,815 INFO L290 TraceCheckUtils]: 31: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,815 INFO L290 TraceCheckUtils]: 30: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,816 INFO L290 TraceCheckUtils]: 29: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,820 INFO L290 TraceCheckUtils]: 28: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,820 INFO L290 TraceCheckUtils]: 27: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,821 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #84#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,821 INFO L290 TraceCheckUtils]: 25: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,821 INFO L290 TraceCheckUtils]: 24: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,822 INFO L290 TraceCheckUtils]: 23: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,822 INFO L272 TraceCheckUtils]: 22: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,823 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #82#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,823 INFO L290 TraceCheckUtils]: 20: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,823 INFO L290 TraceCheckUtils]: 19: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,823 INFO L290 TraceCheckUtils]: 18: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,823 INFO L272 TraceCheckUtils]: 17: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,824 INFO L290 TraceCheckUtils]: 16: Hoare triple {2629#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:43:24,824 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2629#true} {2629#true} #80#return; {2629#true} is VALID [2022-04-08 05:43:24,824 INFO L290 TraceCheckUtils]: 14: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,824 INFO L290 TraceCheckUtils]: 13: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,824 INFO L290 TraceCheckUtils]: 12: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,824 INFO L272 TraceCheckUtils]: 11: Hoare triple {2629#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,824 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2629#true} {2629#true} #78#return; {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L290 TraceCheckUtils]: 9: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L290 TraceCheckUtils]: 8: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L290 TraceCheckUtils]: 7: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L272 TraceCheckUtils]: 6: Hoare triple {2629#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L290 TraceCheckUtils]: 5: Hoare triple {2629#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L272 TraceCheckUtils]: 4: Hoare triple {2629#true} call #t~ret8 := main(); {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2629#true} {2629#true} #98#return; {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L290 TraceCheckUtils]: 2: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L290 TraceCheckUtils]: 1: Hoare triple {2629#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);~counter~0 := 0; {2629#true} is VALID [2022-04-08 05:43:24,825 INFO L272 TraceCheckUtils]: 0: Hoare triple {2629#true} call ULTIMATE.init(); {2629#true} is VALID [2022-04-08 05:43:24,826 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 05:43:24,826 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:43:24,826 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [797480529] [2022-04-08 05:43:24,826 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:43:24,826 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1404084923] [2022-04-08 05:43:24,826 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1404084923] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 05:43:24,826 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:43:24,827 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-08 05:43:24,827 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:43:24,827 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1894462116] [2022-04-08 05:43:24,827 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1894462116] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:43:24,827 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:43:24,827 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:43:24,827 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [504126150] [2022-04-08 05:43:24,827 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:43:24,828 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, (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 46 [2022-04-08 05:43:24,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:43:24,828 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, (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-08 05:43:24,858 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-08 05:43:24,858 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:43:24,858 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:24,859 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:43:24,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:43:24,859 INFO L87 Difference]: Start difference. First operand 58 states and 76 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, (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-08 05:43:25,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:25,138 INFO L93 Difference]: Finished difference Result 65 states and 82 transitions. [2022-04-08 05:43:25,138 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:43:25,138 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, (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 46 [2022-04-08 05:43:25,138 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:43:25,139 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, (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-08 05:43:25,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-08 05:43:25,140 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, (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-08 05:43:25,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-08 05:43:25,141 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-08 05:43:25,196 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:25,198 INFO L225 Difference]: With dead ends: 65 [2022-04-08 05:43:25,198 INFO L226 Difference]: Without dead ends: 63 [2022-04-08 05:43:25,198 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 83 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:43:25,199 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 8 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:43:25,199 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 148 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:43:25,199 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-08 05:43:25,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 62. [2022-04-08 05:43:25,258 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:43:25,258 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:25,259 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:25,259 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:25,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:25,261 INFO L93 Difference]: Finished difference Result 63 states and 80 transitions. [2022-04-08 05:43:25,262 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 80 transitions. [2022-04-08 05:43:25,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:25,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:25,262 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 63 states. [2022-04-08 05:43:25,263 INFO L87 Difference]: Start difference. First operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 63 states. [2022-04-08 05:43:25,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:43:25,265 INFO L93 Difference]: Finished difference Result 63 states and 80 transitions. [2022-04-08 05:43:25,265 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 80 transitions. [2022-04-08 05:43:25,265 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:43:25,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:43:25,266 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:43:25,266 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:43:25,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:43:25,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 79 transitions. [2022-04-08 05:43:25,268 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 79 transitions. Word has length 46 [2022-04-08 05:43:25,268 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:43:25,269 INFO L478 AbstractCegarLoop]: Abstraction has 62 states and 79 transitions. [2022-04-08 05:43:25,269 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, (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-08 05:43:25,269 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 62 states and 79 transitions. [2022-04-08 05:43:25,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:43:25,353 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 79 transitions. [2022-04-08 05:43:25,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-08 05:43:25,354 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:43:25,354 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:43:25,379 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-08 05:43:25,567 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:25,567 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:43:25,568 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:43:25,568 INFO L85 PathProgramCache]: Analyzing trace with hash -300711301, now seen corresponding path program 1 times [2022-04-08 05:43:25,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:43:25,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [21442380] [2022-04-08 05:43:25,568 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:43:25,568 INFO L85 PathProgramCache]: Analyzing trace with hash -300711301, now seen corresponding path program 2 times [2022-04-08 05:43:25,569 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:43:25,569 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [790773587] [2022-04-08 05:43:25,569 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:43:25,569 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:43:25,581 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:43:25,581 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1670265803] [2022-04-08 05:43:25,581 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:43:25,582 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:43:25,582 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:43:25,583 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:43:25,593 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-08 05:43:25,641 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:43:25,642 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:43:25,643 INFO L263 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 05:43:25,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:43:25,658 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:43:26,000 INFO L272 TraceCheckUtils]: 0: Hoare triple {3295#true} call ULTIMATE.init(); {3295#true} is VALID [2022-04-08 05:43:26,003 INFO L290 TraceCheckUtils]: 1: Hoare triple {3295#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);~counter~0 := 0; {3295#true} is VALID [2022-04-08 05:43:26,003 INFO L290 TraceCheckUtils]: 2: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-08 05:43:26,003 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3295#true} {3295#true} #98#return; {3295#true} is VALID [2022-04-08 05:43:26,003 INFO L272 TraceCheckUtils]: 4: Hoare triple {3295#true} call #t~ret8 := main(); {3295#true} is VALID [2022-04-08 05:43:26,003 INFO L290 TraceCheckUtils]: 5: Hoare triple {3295#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {3295#true} is VALID [2022-04-08 05:43:26,003 INFO L272 TraceCheckUtils]: 6: Hoare triple {3295#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L290 TraceCheckUtils]: 7: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L290 TraceCheckUtils]: 8: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L290 TraceCheckUtils]: 9: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3295#true} {3295#true} #78#return; {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L272 TraceCheckUtils]: 11: Hoare triple {3295#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L290 TraceCheckUtils]: 12: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L290 TraceCheckUtils]: 13: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L290 TraceCheckUtils]: 14: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-08 05:43:26,004 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3295#true} {3295#true} #80#return; {3295#true} is VALID [2022-04-08 05:43:26,005 INFO L290 TraceCheckUtils]: 16: Hoare triple {3295#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,005 INFO L272 TraceCheckUtils]: 17: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3295#true} is VALID [2022-04-08 05:43:26,005 INFO L290 TraceCheckUtils]: 18: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-08 05:43:26,005 INFO L290 TraceCheckUtils]: 19: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-08 05:43:26,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-08 05:43:26,006 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3295#true} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #82#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,009 INFO L272 TraceCheckUtils]: 22: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3295#true} is VALID [2022-04-08 05:43:26,009 INFO L290 TraceCheckUtils]: 23: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-08 05:43:26,009 INFO L290 TraceCheckUtils]: 24: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-08 05:43:26,009 INFO L290 TraceCheckUtils]: 25: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-08 05:43:26,010 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3295#true} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #84#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,010 INFO L290 TraceCheckUtils]: 27: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,011 INFO L290 TraceCheckUtils]: 28: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,011 INFO L290 TraceCheckUtils]: 29: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,012 INFO L290 TraceCheckUtils]: 30: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,012 INFO L290 TraceCheckUtils]: 31: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,012 INFO L272 TraceCheckUtils]: 32: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3295#true} is VALID [2022-04-08 05:43:26,012 INFO L290 TraceCheckUtils]: 33: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-08 05:43:26,012 INFO L290 TraceCheckUtils]: 34: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-08 05:43:26,013 INFO L290 TraceCheckUtils]: 35: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-08 05:43:26,013 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3295#true} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #86#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,013 INFO L272 TraceCheckUtils]: 37: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3295#true} is VALID [2022-04-08 05:43:26,014 INFO L290 TraceCheckUtils]: 38: Hoare triple {3295#true} ~cond := #in~cond; {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:26,014 INFO L290 TraceCheckUtils]: 39: Hoare triple {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:43:26,014 INFO L290 TraceCheckUtils]: 40: Hoare triple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:43:26,015 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #88#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,015 INFO L272 TraceCheckUtils]: 42: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3295#true} is VALID [2022-04-08 05:43:26,016 INFO L290 TraceCheckUtils]: 43: Hoare triple {3295#true} ~cond := #in~cond; {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:26,016 INFO L290 TraceCheckUtils]: 44: Hoare triple {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:43:26,016 INFO L290 TraceCheckUtils]: 45: Hoare triple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:43:26,017 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #90#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-08 05:43:26,018 INFO L272 TraceCheckUtils]: 47: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:43:26,018 INFO L290 TraceCheckUtils]: 48: Hoare triple {3444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:43:26,019 INFO L290 TraceCheckUtils]: 49: Hoare triple {3448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3296#false} is VALID [2022-04-08 05:43:26,019 INFO L290 TraceCheckUtils]: 50: Hoare triple {3296#false} assume !false; {3296#false} is VALID [2022-04-08 05:43:26,019 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-08 05:43:26,019 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:44:18,834 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:44:18,834 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [790773587] [2022-04-08 05:44:18,834 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:44:18,834 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1670265803] [2022-04-08 05:44:18,834 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1670265803] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:44:18,834 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:44:18,834 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-08 05:44:18,835 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:44:18,835 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [21442380] [2022-04-08 05:44:18,835 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [21442380] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:44:18,835 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:44:18,835 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:44:18,835 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1053694657] [2022-04-08 05:44:18,835 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:44:18,835 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-08 05:44:18,836 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:44:18,836 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:44:18,879 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-08 05:44:18,879 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:44:18,879 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:18,880 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:44:18,880 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:44:18,880 INFO L87 Difference]: Start difference. First operand 62 states and 79 transitions. Second operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:44:19,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:19,369 INFO L93 Difference]: Finished difference Result 69 states and 85 transitions. [2022-04-08 05:44:19,369 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 05:44:19,370 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-08 05:44:19,370 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:44:19,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:44:19,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 67 transitions. [2022-04-08 05:44:19,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:44:19,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 67 transitions. [2022-04-08 05:44:19,373 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 67 transitions. [2022-04-08 05:44:19,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:19,434 INFO L225 Difference]: With dead ends: 69 [2022-04-08 05:44:19,434 INFO L226 Difference]: Without dead ends: 67 [2022-04-08 05:44:19,434 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2022-04-08 05:44:19,434 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 12 mSDsluCounter, 125 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 128 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:44:19,435 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 160 Invalid, 128 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 126 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:44:19,435 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-08 05:44:19,502 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 66. [2022-04-08 05:44:19,502 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:44:19,502 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:44:19,503 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:44:19,504 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:44:19,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:19,507 INFO L93 Difference]: Finished difference Result 67 states and 83 transitions. [2022-04-08 05:44:19,507 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 83 transitions. [2022-04-08 05:44:19,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:19,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:19,514 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-08 05:44:19,517 INFO L87 Difference]: Start difference. First operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-08 05:44:19,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:19,521 INFO L93 Difference]: Finished difference Result 67 states and 83 transitions. [2022-04-08 05:44:19,521 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 83 transitions. [2022-04-08 05:44:19,521 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:19,521 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:19,522 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:44:19,522 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:44:19,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:44:19,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 82 transitions. [2022-04-08 05:44:19,526 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 82 transitions. Word has length 51 [2022-04-08 05:44:19,526 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:44:19,526 INFO L478 AbstractCegarLoop]: Abstraction has 66 states and 82 transitions. [2022-04-08 05:44:19,527 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:44:19,527 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 66 states and 82 transitions. [2022-04-08 05:44:19,614 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:19,615 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 82 transitions. [2022-04-08 05:44:19,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-08 05:44:19,615 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:44:19,615 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:44:19,632 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 05:44:19,816 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:44:19,816 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:44:19,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:44:19,817 INFO L85 PathProgramCache]: Analyzing trace with hash -2044027516, now seen corresponding path program 1 times [2022-04-08 05:44:19,817 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:19,817 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1164441883] [2022-04-08 05:44:19,817 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:44:19,817 INFO L85 PathProgramCache]: Analyzing trace with hash -2044027516, now seen corresponding path program 2 times [2022-04-08 05:44:19,817 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:44:19,817 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1308050656] [2022-04-08 05:44:19,817 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:44:19,817 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:44:19,838 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:44:19,839 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [439932136] [2022-04-08 05:44:19,839 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:44:19,839 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:44:19,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:44:19,842 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:44:19,844 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-08 05:44:19,897 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:44:19,897 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:44:19,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 181 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 05:44:19,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:44:19,911 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:44:20,119 INFO L272 TraceCheckUtils]: 0: Hoare triple {3879#true} call ULTIMATE.init(); {3879#true} is VALID [2022-04-08 05:44:20,119 INFO L290 TraceCheckUtils]: 1: Hoare triple {3879#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);~counter~0 := 0; {3879#true} is VALID [2022-04-08 05:44:20,119 INFO L290 TraceCheckUtils]: 2: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3879#true} {3879#true} #98#return; {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L272 TraceCheckUtils]: 4: Hoare triple {3879#true} call #t~ret8 := main(); {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L290 TraceCheckUtils]: 5: Hoare triple {3879#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L272 TraceCheckUtils]: 6: Hoare triple {3879#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L290 TraceCheckUtils]: 7: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L290 TraceCheckUtils]: 8: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L290 TraceCheckUtils]: 9: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3879#true} {3879#true} #78#return; {3879#true} is VALID [2022-04-08 05:44:20,120 INFO L272 TraceCheckUtils]: 11: Hoare triple {3879#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L290 TraceCheckUtils]: 12: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L290 TraceCheckUtils]: 13: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L290 TraceCheckUtils]: 14: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3879#true} {3879#true} #80#return; {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L290 TraceCheckUtils]: 16: Hoare triple {3879#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L272 TraceCheckUtils]: 17: Hoare triple {3879#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L290 TraceCheckUtils]: 18: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L290 TraceCheckUtils]: 19: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L290 TraceCheckUtils]: 20: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,121 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3879#true} {3879#true} #82#return; {3879#true} is VALID [2022-04-08 05:44:20,122 INFO L272 TraceCheckUtils]: 22: Hoare triple {3879#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,122 INFO L290 TraceCheckUtils]: 23: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,122 INFO L290 TraceCheckUtils]: 24: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,122 INFO L290 TraceCheckUtils]: 25: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,122 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3879#true} {3879#true} #84#return; {3879#true} is VALID [2022-04-08 05:44:20,122 INFO L290 TraceCheckUtils]: 27: Hoare triple {3879#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3879#true} is VALID [2022-04-08 05:44:20,122 INFO L290 TraceCheckUtils]: 28: Hoare triple {3879#true} assume !!(#t~post6 < 20);havoc #t~post6; {3879#true} is VALID [2022-04-08 05:44:20,123 INFO L290 TraceCheckUtils]: 29: Hoare triple {3879#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:20,123 INFO L290 TraceCheckUtils]: 30: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:20,124 INFO L290 TraceCheckUtils]: 31: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:20,124 INFO L272 TraceCheckUtils]: 32: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,124 INFO L290 TraceCheckUtils]: 33: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,124 INFO L290 TraceCheckUtils]: 34: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,124 INFO L290 TraceCheckUtils]: 35: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,125 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #86#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:20,125 INFO L272 TraceCheckUtils]: 37: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,125 INFO L290 TraceCheckUtils]: 38: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,125 INFO L290 TraceCheckUtils]: 39: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,125 INFO L290 TraceCheckUtils]: 40: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,126 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #88#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:20,126 INFO L272 TraceCheckUtils]: 42: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,126 INFO L290 TraceCheckUtils]: 43: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,126 INFO L290 TraceCheckUtils]: 44: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,126 INFO L290 TraceCheckUtils]: 45: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,127 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #90#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:20,129 INFO L272 TraceCheckUtils]: 47: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:20,129 INFO L290 TraceCheckUtils]: 48: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:20,129 INFO L290 TraceCheckUtils]: 49: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:20,130 INFO L290 TraceCheckUtils]: 50: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:20,131 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #92#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:20,132 INFO L290 TraceCheckUtils]: 52: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} is VALID [2022-04-08 05:44:20,132 INFO L290 TraceCheckUtils]: 53: Hoare triple {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} is VALID [2022-04-08 05:44:20,133 INFO L290 TraceCheckUtils]: 54: Hoare triple {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} is VALID [2022-04-08 05:44:20,133 INFO L272 TraceCheckUtils]: 55: Hoare triple {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:44:20,134 INFO L290 TraceCheckUtils]: 56: Hoare triple {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4055#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:44:20,134 INFO L290 TraceCheckUtils]: 57: Hoare triple {4055#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3880#false} is VALID [2022-04-08 05:44:20,134 INFO L290 TraceCheckUtils]: 58: Hoare triple {3880#false} assume !false; {3880#false} is VALID [2022-04-08 05:44:20,135 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:20,135 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:44:38,828 INFO L290 TraceCheckUtils]: 58: Hoare triple {3880#false} assume !false; {3880#false} is VALID [2022-04-08 05:44:38,828 INFO L290 TraceCheckUtils]: 57: Hoare triple {4055#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3880#false} is VALID [2022-04-08 05:44:38,828 INFO L290 TraceCheckUtils]: 56: Hoare triple {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4055#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:44:38,829 INFO L272 TraceCheckUtils]: 55: Hoare triple {4071#(= 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)); {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:44:38,830 INFO L290 TraceCheckUtils]: 54: Hoare triple {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:44:38,830 INFO L290 TraceCheckUtils]: 53: Hoare triple {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:44:38,831 INFO L290 TraceCheckUtils]: 52: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:44:38,831 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #92#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:38,831 INFO L290 TraceCheckUtils]: 50: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,832 INFO L290 TraceCheckUtils]: 49: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,832 INFO L290 TraceCheckUtils]: 48: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,832 INFO L272 TraceCheckUtils]: 47: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,833 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #90#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:38,833 INFO L290 TraceCheckUtils]: 45: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,833 INFO L290 TraceCheckUtils]: 44: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,833 INFO L290 TraceCheckUtils]: 43: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,833 INFO L272 TraceCheckUtils]: 42: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,833 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #88#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:38,834 INFO L290 TraceCheckUtils]: 40: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,834 INFO L290 TraceCheckUtils]: 39: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,834 INFO L290 TraceCheckUtils]: 38: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,834 INFO L272 TraceCheckUtils]: 37: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,834 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #86#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:38,834 INFO L290 TraceCheckUtils]: 35: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,834 INFO L290 TraceCheckUtils]: 34: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,835 INFO L290 TraceCheckUtils]: 33: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,835 INFO L272 TraceCheckUtils]: 32: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,835 INFO L290 TraceCheckUtils]: 31: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:38,836 INFO L290 TraceCheckUtils]: 30: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:38,836 INFO L290 TraceCheckUtils]: 29: Hoare triple {3879#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:44:38,836 INFO L290 TraceCheckUtils]: 28: Hoare triple {3879#true} assume !!(#t~post6 < 20);havoc #t~post6; {3879#true} is VALID [2022-04-08 05:44:38,836 INFO L290 TraceCheckUtils]: 27: Hoare triple {3879#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3879#true} is VALID [2022-04-08 05:44:38,836 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3879#true} {3879#true} #84#return; {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L290 TraceCheckUtils]: 25: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L290 TraceCheckUtils]: 24: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L290 TraceCheckUtils]: 23: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L272 TraceCheckUtils]: 22: Hoare triple {3879#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3879#true} {3879#true} #82#return; {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L290 TraceCheckUtils]: 20: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L290 TraceCheckUtils]: 19: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L290 TraceCheckUtils]: 18: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L272 TraceCheckUtils]: 17: Hoare triple {3879#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,837 INFO L290 TraceCheckUtils]: 16: Hoare triple {3879#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3879#true} {3879#true} #80#return; {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L290 TraceCheckUtils]: 14: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L290 TraceCheckUtils]: 13: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L290 TraceCheckUtils]: 12: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L272 TraceCheckUtils]: 11: Hoare triple {3879#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3879#true} {3879#true} #78#return; {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L290 TraceCheckUtils]: 9: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L290 TraceCheckUtils]: 8: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-08 05:44:38,838 INFO L290 TraceCheckUtils]: 7: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L272 TraceCheckUtils]: 6: Hoare triple {3879#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L290 TraceCheckUtils]: 5: Hoare triple {3879#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L272 TraceCheckUtils]: 4: Hoare triple {3879#true} call #t~ret8 := main(); {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3879#true} {3879#true} #98#return; {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {3879#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);~counter~0 := 0; {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L272 TraceCheckUtils]: 0: Hoare triple {3879#true} call ULTIMATE.init(); {3879#true} is VALID [2022-04-08 05:44:38,839 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:38,840 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:44:38,840 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1308050656] [2022-04-08 05:44:38,840 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:44:38,840 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [439932136] [2022-04-08 05:44:38,840 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [439932136] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:44:38,840 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:44:38,840 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-08 05:44:38,840 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:44:38,841 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1164441883] [2022-04-08 05:44:38,841 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1164441883] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:44:38,841 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:44:38,841 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:44:38,841 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [56399365] [2022-04-08 05:44:38,841 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:44:38,841 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 59 [2022-04-08 05:44:38,842 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:44:38,842 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:44:38,883 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:38,884 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:44:38,884 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:38,884 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:44:38,884 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-08 05:44:38,885 INFO L87 Difference]: Start difference. First operand 66 states and 82 transitions. Second operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:44:39,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:39,301 INFO L93 Difference]: Finished difference Result 96 states and 131 transitions. [2022-04-08 05:44:39,301 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:44:39,301 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 59 [2022-04-08 05:44:39,302 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:44:39,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:44:39,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 78 transitions. [2022-04-08 05:44:39,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:44:39,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 78 transitions. [2022-04-08 05:44:39,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 78 transitions. [2022-04-08 05:44:39,369 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-08 05:44:39,372 INFO L225 Difference]: With dead ends: 96 [2022-04-08 05:44:39,372 INFO L226 Difference]: Without dead ends: 94 [2022-04-08 05:44:39,373 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 110 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-08 05:44:39,373 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 9 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 88 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 208 SdHoareTripleChecker+Invalid, 89 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 88 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:44:39,374 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 208 Invalid, 89 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 88 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:44:39,374 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-04-08 05:44:39,443 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 84. [2022-04-08 05:44:39,443 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:44:39,444 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:39,444 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:39,444 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:39,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:39,448 INFO L93 Difference]: Finished difference Result 94 states and 129 transitions. [2022-04-08 05:44:39,448 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 129 transitions. [2022-04-08 05:44:39,449 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:39,449 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:39,449 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 94 states. [2022-04-08 05:44:39,449 INFO L87 Difference]: Start difference. First operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 94 states. [2022-04-08 05:44:39,453 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:39,453 INFO L93 Difference]: Finished difference Result 94 states and 129 transitions. [2022-04-08 05:44:39,453 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 129 transitions. [2022-04-08 05:44:39,454 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:39,454 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:39,454 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:44:39,454 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:44:39,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:39,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 111 transitions. [2022-04-08 05:44:39,458 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 111 transitions. Word has length 59 [2022-04-08 05:44:39,458 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:44:39,458 INFO L478 AbstractCegarLoop]: Abstraction has 84 states and 111 transitions. [2022-04-08 05:44:39,458 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:44:39,458 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 84 states and 111 transitions. [2022-04-08 05:44:39,610 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:39,610 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 111 transitions. [2022-04-08 05:44:39,611 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-08 05:44:39,611 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:44:39,611 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:44:39,637 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-08 05:44:39,812 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-08 05:44:39,812 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:44:39,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:44:39,812 INFO L85 PathProgramCache]: Analyzing trace with hash 35160305, now seen corresponding path program 1 times [2022-04-08 05:44:39,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:39,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [14019935] [2022-04-08 05:44:39,813 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:44:39,813 INFO L85 PathProgramCache]: Analyzing trace with hash 35160305, now seen corresponding path program 2 times [2022-04-08 05:44:39,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:44:39,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1791699385] [2022-04-08 05:44:39,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:44:39,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:44:39,826 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:44:39,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1392036637] [2022-04-08 05:44:39,826 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:44:39,827 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:44:39,827 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:44:39,830 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:44:39,855 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-08 05:44:39,887 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:44:39,887 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:44:39,888 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:44:39,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:44:39,901 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:44:40,189 INFO L272 TraceCheckUtils]: 0: Hoare triple {4789#true} call ULTIMATE.init(); {4789#true} is VALID [2022-04-08 05:44:40,190 INFO L290 TraceCheckUtils]: 1: Hoare triple {4789#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);~counter~0 := 0; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,190 INFO L290 TraceCheckUtils]: 2: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,191 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4797#(<= ~counter~0 0)} {4789#true} #98#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,191 INFO L272 TraceCheckUtils]: 4: Hoare triple {4797#(<= ~counter~0 0)} call #t~ret8 := main(); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,191 INFO L290 TraceCheckUtils]: 5: Hoare triple {4797#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,192 INFO L272 TraceCheckUtils]: 6: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,192 INFO L290 TraceCheckUtils]: 7: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,193 INFO L290 TraceCheckUtils]: 9: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,193 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #78#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,193 INFO L272 TraceCheckUtils]: 11: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,194 INFO L290 TraceCheckUtils]: 12: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,194 INFO L290 TraceCheckUtils]: 13: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,194 INFO L290 TraceCheckUtils]: 14: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,195 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #80#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,195 INFO L290 TraceCheckUtils]: 16: Hoare triple {4797#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,195 INFO L272 TraceCheckUtils]: 17: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,196 INFO L290 TraceCheckUtils]: 18: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,196 INFO L290 TraceCheckUtils]: 19: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,196 INFO L290 TraceCheckUtils]: 20: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,197 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #82#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,197 INFO L272 TraceCheckUtils]: 22: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,197 INFO L290 TraceCheckUtils]: 23: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,197 INFO L290 TraceCheckUtils]: 24: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,198 INFO L290 TraceCheckUtils]: 25: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,198 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #84#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:40,199 INFO L290 TraceCheckUtils]: 27: Hoare triple {4797#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4876#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:40,199 INFO L290 TraceCheckUtils]: 28: Hoare triple {4876#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {4876#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:40,199 INFO L290 TraceCheckUtils]: 29: Hoare triple {4876#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4876#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:40,200 INFO L290 TraceCheckUtils]: 30: Hoare triple {4876#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,200 INFO L290 TraceCheckUtils]: 31: Hoare triple {4886#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,201 INFO L272 TraceCheckUtils]: 32: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,201 INFO L290 TraceCheckUtils]: 33: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,201 INFO L290 TraceCheckUtils]: 34: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,201 INFO L290 TraceCheckUtils]: 35: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,202 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #86#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,202 INFO L272 TraceCheckUtils]: 37: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,203 INFO L290 TraceCheckUtils]: 38: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,203 INFO L290 TraceCheckUtils]: 39: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,203 INFO L290 TraceCheckUtils]: 40: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,204 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #88#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,204 INFO L272 TraceCheckUtils]: 42: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,205 INFO L290 TraceCheckUtils]: 43: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,205 INFO L290 TraceCheckUtils]: 44: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,205 INFO L290 TraceCheckUtils]: 45: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,206 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #90#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,206 INFO L272 TraceCheckUtils]: 47: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,207 INFO L290 TraceCheckUtils]: 48: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,207 INFO L290 TraceCheckUtils]: 49: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,207 INFO L290 TraceCheckUtils]: 50: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,208 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #92#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,208 INFO L290 TraceCheckUtils]: 52: Hoare triple {4886#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,209 INFO L290 TraceCheckUtils]: 53: Hoare triple {4886#(<= ~counter~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; {4886#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:40,209 INFO L290 TraceCheckUtils]: 54: Hoare triple {4886#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4959#(<= |main_#t~post6| 2)} is VALID [2022-04-08 05:44:40,209 INFO L290 TraceCheckUtils]: 55: Hoare triple {4959#(<= |main_#t~post6| 2)} assume !(#t~post6 < 20);havoc #t~post6; {4790#false} is VALID [2022-04-08 05:44:40,209 INFO L272 TraceCheckUtils]: 56: Hoare triple {4790#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {4790#false} is VALID [2022-04-08 05:44:40,209 INFO L290 TraceCheckUtils]: 57: Hoare triple {4790#false} ~cond := #in~cond; {4790#false} is VALID [2022-04-08 05:44:40,210 INFO L290 TraceCheckUtils]: 58: Hoare triple {4790#false} assume 0 == ~cond; {4790#false} is VALID [2022-04-08 05:44:40,210 INFO L290 TraceCheckUtils]: 59: Hoare triple {4790#false} assume !false; {4790#false} is VALID [2022-04-08 05:44:40,210 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:40,210 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:44:40,483 INFO L290 TraceCheckUtils]: 59: Hoare triple {4790#false} assume !false; {4790#false} is VALID [2022-04-08 05:44:40,483 INFO L290 TraceCheckUtils]: 58: Hoare triple {4790#false} assume 0 == ~cond; {4790#false} is VALID [2022-04-08 05:44:40,483 INFO L290 TraceCheckUtils]: 57: Hoare triple {4790#false} ~cond := #in~cond; {4790#false} is VALID [2022-04-08 05:44:40,483 INFO L272 TraceCheckUtils]: 56: Hoare triple {4790#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {4790#false} is VALID [2022-04-08 05:44:40,483 INFO L290 TraceCheckUtils]: 55: Hoare triple {4987#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {4790#false} is VALID [2022-04-08 05:44:40,484 INFO L290 TraceCheckUtils]: 54: Hoare triple {4991#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4987#(< |main_#t~post6| 20)} is VALID [2022-04-08 05:44:40,484 INFO L290 TraceCheckUtils]: 53: Hoare triple {4991#(< ~counter~0 20)} ~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; {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,484 INFO L290 TraceCheckUtils]: 52: Hoare triple {4991#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,485 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4789#true} {4991#(< ~counter~0 20)} #92#return; {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,485 INFO L290 TraceCheckUtils]: 50: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,485 INFO L290 TraceCheckUtils]: 49: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,485 INFO L290 TraceCheckUtils]: 48: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,485 INFO L272 TraceCheckUtils]: 47: Hoare triple {4991#(< ~counter~0 20)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,486 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4789#true} {4991#(< ~counter~0 20)} #90#return; {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,486 INFO L290 TraceCheckUtils]: 45: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,486 INFO L290 TraceCheckUtils]: 44: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,486 INFO L290 TraceCheckUtils]: 43: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,486 INFO L272 TraceCheckUtils]: 42: Hoare triple {4991#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,487 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4789#true} {4991#(< ~counter~0 20)} #88#return; {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,487 INFO L290 TraceCheckUtils]: 40: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,487 INFO L290 TraceCheckUtils]: 39: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,487 INFO L290 TraceCheckUtils]: 38: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,487 INFO L272 TraceCheckUtils]: 37: Hoare triple {4991#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,488 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4789#true} {4991#(< ~counter~0 20)} #86#return; {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,488 INFO L290 TraceCheckUtils]: 35: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,488 INFO L290 TraceCheckUtils]: 34: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,488 INFO L290 TraceCheckUtils]: 33: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,488 INFO L272 TraceCheckUtils]: 32: Hoare triple {4991#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,490 INFO L290 TraceCheckUtils]: 31: Hoare triple {4991#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,491 INFO L290 TraceCheckUtils]: 30: Hoare triple {5064#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4991#(< ~counter~0 20)} is VALID [2022-04-08 05:44:40,491 INFO L290 TraceCheckUtils]: 29: Hoare triple {5064#(< ~counter~0 19)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5064#(< ~counter~0 19)} is VALID [2022-04-08 05:44:40,491 INFO L290 TraceCheckUtils]: 28: Hoare triple {5064#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {5064#(< ~counter~0 19)} is VALID [2022-04-08 05:44:40,492 INFO L290 TraceCheckUtils]: 27: Hoare triple {5074#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5064#(< ~counter~0 19)} is VALID [2022-04-08 05:44:40,492 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4789#true} {5074#(< ~counter~0 18)} #84#return; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,492 INFO L290 TraceCheckUtils]: 25: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,492 INFO L290 TraceCheckUtils]: 24: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,492 INFO L290 TraceCheckUtils]: 23: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,492 INFO L272 TraceCheckUtils]: 22: Hoare triple {5074#(< ~counter~0 18)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,493 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4789#true} {5074#(< ~counter~0 18)} #82#return; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,493 INFO L290 TraceCheckUtils]: 20: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,493 INFO L290 TraceCheckUtils]: 19: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,493 INFO L290 TraceCheckUtils]: 18: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,493 INFO L272 TraceCheckUtils]: 17: Hoare triple {5074#(< ~counter~0 18)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,493 INFO L290 TraceCheckUtils]: 16: Hoare triple {5074#(< ~counter~0 18)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,494 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4789#true} {5074#(< ~counter~0 18)} #80#return; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,494 INFO L290 TraceCheckUtils]: 14: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,494 INFO L290 TraceCheckUtils]: 13: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,494 INFO L290 TraceCheckUtils]: 12: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,494 INFO L272 TraceCheckUtils]: 11: Hoare triple {5074#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,494 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4789#true} {5074#(< ~counter~0 18)} #78#return; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,495 INFO L290 TraceCheckUtils]: 9: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-08 05:44:40,495 INFO L290 TraceCheckUtils]: 8: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-08 05:44:40,495 INFO L290 TraceCheckUtils]: 7: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-08 05:44:40,495 INFO L272 TraceCheckUtils]: 6: Hoare triple {5074#(< ~counter~0 18)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4789#true} is VALID [2022-04-08 05:44:40,495 INFO L290 TraceCheckUtils]: 5: Hoare triple {5074#(< ~counter~0 18)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,495 INFO L272 TraceCheckUtils]: 4: Hoare triple {5074#(< ~counter~0 18)} call #t~ret8 := main(); {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,496 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5074#(< ~counter~0 18)} {4789#true} #98#return; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,496 INFO L290 TraceCheckUtils]: 2: Hoare triple {5074#(< ~counter~0 18)} assume true; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,496 INFO L290 TraceCheckUtils]: 1: Hoare triple {4789#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);~counter~0 := 0; {5074#(< ~counter~0 18)} is VALID [2022-04-08 05:44:40,497 INFO L272 TraceCheckUtils]: 0: Hoare triple {4789#true} call ULTIMATE.init(); {4789#true} is VALID [2022-04-08 05:44:40,497 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:40,497 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:44:40,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1791699385] [2022-04-08 05:44:40,497 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:44:40,497 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1392036637] [2022-04-08 05:44:40,497 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1392036637] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:44:40,497 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:44:40,497 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 05:44:40,498 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:44:40,498 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [14019935] [2022-04-08 05:44:40,498 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [14019935] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:44:40,498 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:44:40,498 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:44:40,498 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1269009962] [2022-04-08 05:44:40,498 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:44:40,498 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 60 [2022-04-08 05:44:40,498 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:44:40,499 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:40,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:40,532 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:44:40,532 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:40,533 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:44:40,533 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:44:40,533 INFO L87 Difference]: Start difference. First operand 84 states and 111 transitions. Second operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:40,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:40,763 INFO L93 Difference]: Finished difference Result 111 states and 135 transitions. [2022-04-08 05:44:40,763 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 05:44:40,763 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 60 [2022-04-08 05:44:40,763 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:44:40,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:40,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 76 transitions. [2022-04-08 05:44:40,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:40,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 76 transitions. [2022-04-08 05:44:40,766 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 76 transitions. [2022-04-08 05:44:40,834 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:40,836 INFO L225 Difference]: With dead ends: 111 [2022-04-08 05:44:40,837 INFO L226 Difference]: Without dead ends: 103 [2022-04-08 05:44:40,837 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-08 05:44:40,837 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 8 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:44:40,838 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 138 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:44:40,838 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-04-08 05:44:40,954 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 103. [2022-04-08 05:44:40,954 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:44:40,954 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:40,955 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:40,955 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:40,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:40,958 INFO L93 Difference]: Finished difference Result 103 states and 126 transitions. [2022-04-08 05:44:40,958 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 126 transitions. [2022-04-08 05:44:40,958 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:40,958 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:40,958 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 103 states. [2022-04-08 05:44:40,959 INFO L87 Difference]: Start difference. First operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 103 states. [2022-04-08 05:44:40,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:40,961 INFO L93 Difference]: Finished difference Result 103 states and 126 transitions. [2022-04-08 05:44:40,961 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 126 transitions. [2022-04-08 05:44:40,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:40,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:40,962 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:44:40,962 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:44:40,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 05:44:40,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 126 transitions. [2022-04-08 05:44:40,965 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 126 transitions. Word has length 60 [2022-04-08 05:44:40,965 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:44:40,965 INFO L478 AbstractCegarLoop]: Abstraction has 103 states and 126 transitions. [2022-04-08 05:44:40,965 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:40,965 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 103 states and 126 transitions. [2022-04-08 05:44:41,105 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-08 05:44:41,105 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 126 transitions. [2022-04-08 05:44:41,106 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-08 05:44:41,106 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:44:41,106 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:44:41,122 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 05:44:41,312 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-08 05:44:41,312 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:44:41,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:44:41,312 INFO L85 PathProgramCache]: Analyzing trace with hash 1088000375, now seen corresponding path program 1 times [2022-04-08 05:44:41,312 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:41,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1919048281] [2022-04-08 05:44:41,313 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:44:41,313 INFO L85 PathProgramCache]: Analyzing trace with hash 1088000375, now seen corresponding path program 2 times [2022-04-08 05:44:41,313 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:44:41,313 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [101462153] [2022-04-08 05:44:41,313 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:44:41,313 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:44:41,325 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:44:41,326 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [93289800] [2022-04-08 05:44:41,326 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:44:41,326 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:44:41,327 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:44:41,328 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:44:41,330 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-08 05:44:41,374 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:44:41,375 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:44:41,376 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:44:41,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:44:41,391 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:44:41,576 INFO L272 TraceCheckUtils]: 0: Hoare triple {5794#true} call ULTIMATE.init(); {5794#true} is VALID [2022-04-08 05:44:41,576 INFO L290 TraceCheckUtils]: 1: Hoare triple {5794#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);~counter~0 := 0; {5794#true} is VALID [2022-04-08 05:44:41,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5794#true} {5794#true} #98#return; {5794#true} is VALID [2022-04-08 05:44:41,577 INFO L272 TraceCheckUtils]: 4: Hoare triple {5794#true} call #t~ret8 := main(); {5794#true} is VALID [2022-04-08 05:44:41,577 INFO L290 TraceCheckUtils]: 5: Hoare triple {5794#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {5794#true} is VALID [2022-04-08 05:44:41,577 INFO L272 TraceCheckUtils]: 6: Hoare triple {5794#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,577 INFO L290 TraceCheckUtils]: 7: Hoare triple {5794#true} ~cond := #in~cond; {5820#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:44:41,577 INFO L290 TraceCheckUtils]: 8: Hoare triple {5820#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:44:41,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:44:41,578 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} {5794#true} #78#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-08 05:44:41,578 INFO L272 TraceCheckUtils]: 11: Hoare triple {5831#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,578 INFO L290 TraceCheckUtils]: 12: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,578 INFO L290 TraceCheckUtils]: 13: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,579 INFO L290 TraceCheckUtils]: 14: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,583 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5794#true} {5831#(<= 1 main_~x~0)} #80#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-08 05:44:41,584 INFO L290 TraceCheckUtils]: 16: Hoare triple {5831#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,584 INFO L272 TraceCheckUtils]: 17: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,584 INFO L290 TraceCheckUtils]: 18: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,584 INFO L290 TraceCheckUtils]: 19: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,585 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #82#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,585 INFO L272 TraceCheckUtils]: 22: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,585 INFO L290 TraceCheckUtils]: 23: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,585 INFO L290 TraceCheckUtils]: 24: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,585 INFO L290 TraceCheckUtils]: 25: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,586 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #84#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,586 INFO L290 TraceCheckUtils]: 27: Hoare triple {5850#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,586 INFO L290 TraceCheckUtils]: 28: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,587 INFO L290 TraceCheckUtils]: 29: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,587 INFO L290 TraceCheckUtils]: 30: Hoare triple {5890#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,588 INFO L290 TraceCheckUtils]: 31: Hoare triple {5890#(<= 1 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,588 INFO L272 TraceCheckUtils]: 32: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,588 INFO L290 TraceCheckUtils]: 33: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,588 INFO L290 TraceCheckUtils]: 34: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,588 INFO L290 TraceCheckUtils]: 35: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,589 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #86#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,589 INFO L272 TraceCheckUtils]: 37: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,589 INFO L290 TraceCheckUtils]: 38: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,589 INFO L290 TraceCheckUtils]: 39: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,589 INFO L290 TraceCheckUtils]: 40: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,590 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #88#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,590 INFO L272 TraceCheckUtils]: 42: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,590 INFO L290 TraceCheckUtils]: 43: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,590 INFO L290 TraceCheckUtils]: 44: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,590 INFO L290 TraceCheckUtils]: 45: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,591 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #90#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,591 INFO L272 TraceCheckUtils]: 47: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,591 INFO L290 TraceCheckUtils]: 48: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,591 INFO L290 TraceCheckUtils]: 49: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,591 INFO L290 TraceCheckUtils]: 50: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,592 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #92#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,593 INFO L290 TraceCheckUtils]: 52: Hoare triple {5890#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,593 INFO L290 TraceCheckUtils]: 53: Hoare triple {5890#(<= 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; {5963#(<= 1 main_~b~0)} is VALID [2022-04-08 05:44:41,593 INFO L290 TraceCheckUtils]: 54: Hoare triple {5963#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-08 05:44:41,593 INFO L290 TraceCheckUtils]: 55: Hoare triple {5963#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-08 05:44:41,594 INFO L290 TraceCheckUtils]: 56: Hoare triple {5963#(<= 1 main_~b~0)} assume !(0 != ~b~0); {5795#false} is VALID [2022-04-08 05:44:41,594 INFO L272 TraceCheckUtils]: 57: Hoare triple {5795#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {5795#false} is VALID [2022-04-08 05:44:41,594 INFO L290 TraceCheckUtils]: 58: Hoare triple {5795#false} ~cond := #in~cond; {5795#false} is VALID [2022-04-08 05:44:41,594 INFO L290 TraceCheckUtils]: 59: Hoare triple {5795#false} assume 0 == ~cond; {5795#false} is VALID [2022-04-08 05:44:41,594 INFO L290 TraceCheckUtils]: 60: Hoare triple {5795#false} assume !false; {5795#false} is VALID [2022-04-08 05:44:41,594 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 12 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-08 05:44:41,594 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:44:41,876 INFO L290 TraceCheckUtils]: 60: Hoare triple {5795#false} assume !false; {5795#false} is VALID [2022-04-08 05:44:41,877 INFO L290 TraceCheckUtils]: 59: Hoare triple {5795#false} assume 0 == ~cond; {5795#false} is VALID [2022-04-08 05:44:41,877 INFO L290 TraceCheckUtils]: 58: Hoare triple {5795#false} ~cond := #in~cond; {5795#false} is VALID [2022-04-08 05:44:41,877 INFO L272 TraceCheckUtils]: 57: Hoare triple {5795#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {5795#false} is VALID [2022-04-08 05:44:41,877 INFO L290 TraceCheckUtils]: 56: Hoare triple {5963#(<= 1 main_~b~0)} assume !(0 != ~b~0); {5795#false} is VALID [2022-04-08 05:44:41,877 INFO L290 TraceCheckUtils]: 55: Hoare triple {5963#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-08 05:44:41,878 INFO L290 TraceCheckUtils]: 54: Hoare triple {5963#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-08 05:44:41,878 INFO L290 TraceCheckUtils]: 53: Hoare triple {5890#(<= 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; {5963#(<= 1 main_~b~0)} is VALID [2022-04-08 05:44:41,878 INFO L290 TraceCheckUtils]: 52: Hoare triple {5890#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,879 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #92#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,879 INFO L290 TraceCheckUtils]: 50: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,879 INFO L290 TraceCheckUtils]: 49: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,879 INFO L290 TraceCheckUtils]: 48: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,879 INFO L272 TraceCheckUtils]: 47: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,880 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #90#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,880 INFO L290 TraceCheckUtils]: 45: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,880 INFO L290 TraceCheckUtils]: 44: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,880 INFO L290 TraceCheckUtils]: 43: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,880 INFO L272 TraceCheckUtils]: 42: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,881 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #88#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,881 INFO L290 TraceCheckUtils]: 40: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,881 INFO L290 TraceCheckUtils]: 39: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,881 INFO L290 TraceCheckUtils]: 38: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,881 INFO L272 TraceCheckUtils]: 37: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,881 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #86#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,881 INFO L290 TraceCheckUtils]: 35: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,882 INFO L290 TraceCheckUtils]: 34: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,882 INFO L290 TraceCheckUtils]: 33: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,882 INFO L272 TraceCheckUtils]: 32: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,882 INFO L290 TraceCheckUtils]: 31: Hoare triple {5890#(<= 1 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,882 INFO L290 TraceCheckUtils]: 30: Hoare triple {5890#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,883 INFO L290 TraceCheckUtils]: 29: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5890#(<= 1 main_~c~0)} is VALID [2022-04-08 05:44:41,883 INFO L290 TraceCheckUtils]: 28: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,883 INFO L290 TraceCheckUtils]: 27: Hoare triple {5850#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,884 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #84#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,884 INFO L290 TraceCheckUtils]: 25: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,884 INFO L290 TraceCheckUtils]: 24: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,884 INFO L290 TraceCheckUtils]: 23: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,884 INFO L272 TraceCheckUtils]: 22: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,884 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #82#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,884 INFO L290 TraceCheckUtils]: 20: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,884 INFO L290 TraceCheckUtils]: 19: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,884 INFO L290 TraceCheckUtils]: 18: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,885 INFO L272 TraceCheckUtils]: 17: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,888 INFO L290 TraceCheckUtils]: 16: Hoare triple {5831#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5850#(<= 1 main_~a~0)} is VALID [2022-04-08 05:44:41,889 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5794#true} {5831#(<= 1 main_~x~0)} #80#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-08 05:44:41,889 INFO L290 TraceCheckUtils]: 14: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-08 05:44:41,889 INFO L290 TraceCheckUtils]: 12: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-08 05:44:41,889 INFO L272 TraceCheckUtils]: 11: Hoare triple {5831#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,889 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} {5794#true} #78#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-08 05:44:41,890 INFO L290 TraceCheckUtils]: 9: Hoare triple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:44:41,890 INFO L290 TraceCheckUtils]: 8: Hoare triple {6144#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:44:41,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {5794#true} ~cond := #in~cond; {6144#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 05:44:41,890 INFO L272 TraceCheckUtils]: 6: Hoare triple {5794#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-08 05:44:41,891 INFO L290 TraceCheckUtils]: 5: Hoare triple {5794#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {5794#true} is VALID [2022-04-08 05:44:41,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {5794#true} call #t~ret8 := main(); {5794#true} is VALID [2022-04-08 05:44:41,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5794#true} {5794#true} #98#return; {5794#true} is VALID [2022-04-08 05:44:41,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-08 05:44:41,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {5794#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);~counter~0 := 0; {5794#true} is VALID [2022-04-08 05:44:41,891 INFO L272 TraceCheckUtils]: 0: Hoare triple {5794#true} call ULTIMATE.init(); {5794#true} is VALID [2022-04-08 05:44:41,891 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 12 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-08 05:44:41,891 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:44:41,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [101462153] [2022-04-08 05:44:41,891 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:44:41,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [93289800] [2022-04-08 05:44:41,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [93289800] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:44:41,892 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:44:41,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 05:44:41,892 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:44:41,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1919048281] [2022-04-08 05:44:41,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1919048281] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:44:41,892 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:44:41,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:44:41,892 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1740210343] [2022-04-08 05:44:41,892 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:44:41,893 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-08 05:44:41,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:44:41,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:44:41,924 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:41,924 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:44:41,924 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:41,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:44:41,924 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:44:41,924 INFO L87 Difference]: Start difference. First operand 103 states and 126 transitions. Second operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:44:42,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:42,897 INFO L93 Difference]: Finished difference Result 182 states and 256 transitions. [2022-04-08 05:44:42,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:44:42,897 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-08 05:44:42,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:44:42,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:44:42,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 147 transitions. [2022-04-08 05:44:42,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:44:42,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 147 transitions. [2022-04-08 05:44:42,902 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 147 transitions. [2022-04-08 05:44:43,069 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:43,073 INFO L225 Difference]: With dead ends: 182 [2022-04-08 05:44:43,074 INFO L226 Difference]: Without dead ends: 174 [2022-04-08 05:44:43,074 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 113 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:44:43,074 INFO L913 BasicCegarLoop]: 71 mSDtfsCounter, 59 mSDsluCounter, 246 mSDsCounter, 0 mSdLazyCounter, 161 mSolverCounterSat, 71 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 317 SdHoareTripleChecker+Invalid, 232 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 71 IncrementalHoareTripleChecker+Valid, 161 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:44:43,075 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [64 Valid, 317 Invalid, 232 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [71 Valid, 161 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 05:44:43,075 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-08 05:44:43,344 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 146. [2022-04-08 05:44:43,344 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:44:43,345 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:43,346 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:43,346 INFO L87 Difference]: Start difference. First operand 174 states. Second operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:43,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:43,356 INFO L93 Difference]: Finished difference Result 174 states and 246 transitions. [2022-04-08 05:44:43,356 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 246 transitions. [2022-04-08 05:44:43,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:43,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:43,358 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 174 states. [2022-04-08 05:44:43,359 INFO L87 Difference]: Start difference. First operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 174 states. [2022-04-08 05:44:43,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:43,371 INFO L93 Difference]: Finished difference Result 174 states and 246 transitions. [2022-04-08 05:44:43,371 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 246 transitions. [2022-04-08 05:44:43,372 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:43,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:43,372 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:44:43,372 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:44:43,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:43,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 199 transitions. [2022-04-08 05:44:43,377 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 199 transitions. Word has length 61 [2022-04-08 05:44:43,377 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:44:43,377 INFO L478 AbstractCegarLoop]: Abstraction has 146 states and 199 transitions. [2022-04-08 05:44:43,377 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 05:44:43,377 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 146 states and 199 transitions. [2022-04-08 05:44:43,598 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 199 edges. 199 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:43,598 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 199 transitions. [2022-04-08 05:44:43,599 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2022-04-08 05:44:43,599 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:44:43,599 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:44:43,621 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-08 05:44:43,807 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-08 05:44:43,808 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:44:43,808 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:44:43,808 INFO L85 PathProgramCache]: Analyzing trace with hash 1537891564, now seen corresponding path program 1 times [2022-04-08 05:44:43,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:43,808 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1698985788] [2022-04-08 05:44:43,808 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:44:43,809 INFO L85 PathProgramCache]: Analyzing trace with hash 1537891564, now seen corresponding path program 2 times [2022-04-08 05:44:43,809 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:44:43,809 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [653462926] [2022-04-08 05:44:43,809 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:44:43,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:44:43,820 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:44:43,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [304272793] [2022-04-08 05:44:43,820 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:44:43,820 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:44:43,821 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:44:43,821 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:44:43,827 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-08 05:44:43,873 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:44:43,873 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:44:43,874 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:44:43,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:44:43,888 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:44:44,145 INFO L272 TraceCheckUtils]: 0: Hoare triple {7186#true} call ULTIMATE.init(); {7186#true} is VALID [2022-04-08 05:44:44,145 INFO L290 TraceCheckUtils]: 1: Hoare triple {7186#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);~counter~0 := 0; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,146 INFO L290 TraceCheckUtils]: 2: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,146 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7194#(<= ~counter~0 0)} {7186#true} #98#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {7194#(<= ~counter~0 0)} call #t~ret8 := main(); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,147 INFO L290 TraceCheckUtils]: 5: Hoare triple {7194#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,147 INFO L272 TraceCheckUtils]: 6: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,147 INFO L290 TraceCheckUtils]: 7: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,148 INFO L290 TraceCheckUtils]: 8: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,148 INFO L290 TraceCheckUtils]: 9: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,148 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #78#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,149 INFO L272 TraceCheckUtils]: 11: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,149 INFO L290 TraceCheckUtils]: 12: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,149 INFO L290 TraceCheckUtils]: 13: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,149 INFO L290 TraceCheckUtils]: 14: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,150 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #80#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,150 INFO L290 TraceCheckUtils]: 16: Hoare triple {7194#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,151 INFO L272 TraceCheckUtils]: 17: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,151 INFO L290 TraceCheckUtils]: 18: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,151 INFO L290 TraceCheckUtils]: 19: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,151 INFO L290 TraceCheckUtils]: 20: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,152 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #82#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,152 INFO L272 TraceCheckUtils]: 22: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,153 INFO L290 TraceCheckUtils]: 24: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,153 INFO L290 TraceCheckUtils]: 25: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,153 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #84#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:44,154 INFO L290 TraceCheckUtils]: 27: Hoare triple {7194#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7273#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:44,154 INFO L290 TraceCheckUtils]: 28: Hoare triple {7273#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {7273#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:44,154 INFO L290 TraceCheckUtils]: 29: Hoare triple {7273#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7273#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:44,155 INFO L290 TraceCheckUtils]: 30: Hoare triple {7273#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,155 INFO L290 TraceCheckUtils]: 31: Hoare triple {7283#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,156 INFO L272 TraceCheckUtils]: 32: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,156 INFO L290 TraceCheckUtils]: 33: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,156 INFO L290 TraceCheckUtils]: 34: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,157 INFO L290 TraceCheckUtils]: 35: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,157 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #86#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,158 INFO L272 TraceCheckUtils]: 37: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,158 INFO L290 TraceCheckUtils]: 38: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,158 INFO L290 TraceCheckUtils]: 39: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,158 INFO L290 TraceCheckUtils]: 40: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,159 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #88#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,160 INFO L272 TraceCheckUtils]: 42: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,160 INFO L290 TraceCheckUtils]: 43: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,160 INFO L290 TraceCheckUtils]: 44: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,160 INFO L290 TraceCheckUtils]: 45: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,161 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #90#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,162 INFO L272 TraceCheckUtils]: 47: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,162 INFO L290 TraceCheckUtils]: 48: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,162 INFO L290 TraceCheckUtils]: 49: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,162 INFO L290 TraceCheckUtils]: 50: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,163 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #92#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,163 INFO L290 TraceCheckUtils]: 52: Hoare triple {7283#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {7283#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:44,164 INFO L290 TraceCheckUtils]: 53: Hoare triple {7283#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7353#(<= |main_#t~post7| 2)} is VALID [2022-04-08 05:44:44,164 INFO L290 TraceCheckUtils]: 54: Hoare triple {7353#(<= |main_#t~post7| 2)} assume !(#t~post7 < 20);havoc #t~post7; {7187#false} is VALID [2022-04-08 05:44:44,164 INFO L290 TraceCheckUtils]: 55: Hoare triple {7187#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; {7187#false} is VALID [2022-04-08 05:44:44,164 INFO L290 TraceCheckUtils]: 56: Hoare triple {7187#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7187#false} is VALID [2022-04-08 05:44:44,164 INFO L290 TraceCheckUtils]: 57: Hoare triple {7187#false} assume !(#t~post6 < 20);havoc #t~post6; {7187#false} is VALID [2022-04-08 05:44:44,164 INFO L272 TraceCheckUtils]: 58: Hoare triple {7187#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {7187#false} is VALID [2022-04-08 05:44:44,164 INFO L290 TraceCheckUtils]: 59: Hoare triple {7187#false} ~cond := #in~cond; {7187#false} is VALID [2022-04-08 05:44:44,165 INFO L290 TraceCheckUtils]: 60: Hoare triple {7187#false} assume 0 == ~cond; {7187#false} is VALID [2022-04-08 05:44:44,165 INFO L290 TraceCheckUtils]: 61: Hoare triple {7187#false} assume !false; {7187#false} is VALID [2022-04-08 05:44:44,165 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:44,165 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:44:44,432 INFO L290 TraceCheckUtils]: 61: Hoare triple {7187#false} assume !false; {7187#false} is VALID [2022-04-08 05:44:44,432 INFO L290 TraceCheckUtils]: 60: Hoare triple {7187#false} assume 0 == ~cond; {7187#false} is VALID [2022-04-08 05:44:44,432 INFO L290 TraceCheckUtils]: 59: Hoare triple {7187#false} ~cond := #in~cond; {7187#false} is VALID [2022-04-08 05:44:44,432 INFO L272 TraceCheckUtils]: 58: Hoare triple {7187#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {7187#false} is VALID [2022-04-08 05:44:44,433 INFO L290 TraceCheckUtils]: 57: Hoare triple {7187#false} assume !(#t~post6 < 20);havoc #t~post6; {7187#false} is VALID [2022-04-08 05:44:44,433 INFO L290 TraceCheckUtils]: 56: Hoare triple {7187#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7187#false} is VALID [2022-04-08 05:44:44,433 INFO L290 TraceCheckUtils]: 55: Hoare triple {7187#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; {7187#false} is VALID [2022-04-08 05:44:44,433 INFO L290 TraceCheckUtils]: 54: Hoare triple {7399#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {7187#false} is VALID [2022-04-08 05:44:44,433 INFO L290 TraceCheckUtils]: 53: Hoare triple {7403#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7399#(< |main_#t~post7| 20)} is VALID [2022-04-08 05:44:44,434 INFO L290 TraceCheckUtils]: 52: Hoare triple {7403#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {7403#(< ~counter~0 20)} is VALID [2022-04-08 05:44:44,434 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {7186#true} {7403#(< ~counter~0 20)} #92#return; {7403#(< ~counter~0 20)} is VALID [2022-04-08 05:44:44,434 INFO L290 TraceCheckUtils]: 50: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,434 INFO L290 TraceCheckUtils]: 49: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,435 INFO L290 TraceCheckUtils]: 48: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,435 INFO L272 TraceCheckUtils]: 47: Hoare triple {7403#(< ~counter~0 20)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,435 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7186#true} {7403#(< ~counter~0 20)} #90#return; {7403#(< ~counter~0 20)} is VALID [2022-04-08 05:44:44,435 INFO L290 TraceCheckUtils]: 45: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,435 INFO L290 TraceCheckUtils]: 44: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,435 INFO L290 TraceCheckUtils]: 43: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,436 INFO L272 TraceCheckUtils]: 42: Hoare triple {7403#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,436 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7186#true} {7403#(< ~counter~0 20)} #88#return; {7403#(< ~counter~0 20)} is VALID [2022-04-08 05:44:44,436 INFO L290 TraceCheckUtils]: 40: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,436 INFO L290 TraceCheckUtils]: 39: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,436 INFO L290 TraceCheckUtils]: 38: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,436 INFO L272 TraceCheckUtils]: 37: Hoare triple {7403#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,437 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7186#true} {7403#(< ~counter~0 20)} #86#return; {7403#(< ~counter~0 20)} is VALID [2022-04-08 05:44:44,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,437 INFO L290 TraceCheckUtils]: 34: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,437 INFO L290 TraceCheckUtils]: 33: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,437 INFO L272 TraceCheckUtils]: 32: Hoare triple {7403#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,437 INFO L290 TraceCheckUtils]: 31: Hoare triple {7403#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {7403#(< ~counter~0 20)} is VALID [2022-04-08 05:44:44,438 INFO L290 TraceCheckUtils]: 30: Hoare triple {7473#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7403#(< ~counter~0 20)} is VALID [2022-04-08 05:44:44,438 INFO L290 TraceCheckUtils]: 29: Hoare triple {7473#(< ~counter~0 19)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7473#(< ~counter~0 19)} is VALID [2022-04-08 05:44:44,439 INFO L290 TraceCheckUtils]: 28: Hoare triple {7473#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {7473#(< ~counter~0 19)} is VALID [2022-04-08 05:44:44,439 INFO L290 TraceCheckUtils]: 27: Hoare triple {7483#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7473#(< ~counter~0 19)} is VALID [2022-04-08 05:44:44,440 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7186#true} {7483#(< ~counter~0 18)} #84#return; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,440 INFO L290 TraceCheckUtils]: 25: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,440 INFO L290 TraceCheckUtils]: 24: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,442 INFO L290 TraceCheckUtils]: 23: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,442 INFO L272 TraceCheckUtils]: 22: Hoare triple {7483#(< ~counter~0 18)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,444 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7186#true} {7483#(< ~counter~0 18)} #82#return; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,444 INFO L290 TraceCheckUtils]: 20: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,444 INFO L290 TraceCheckUtils]: 19: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,444 INFO L290 TraceCheckUtils]: 18: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,445 INFO L272 TraceCheckUtils]: 17: Hoare triple {7483#(< ~counter~0 18)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,445 INFO L290 TraceCheckUtils]: 16: Hoare triple {7483#(< ~counter~0 18)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,445 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7186#true} {7483#(< ~counter~0 18)} #80#return; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,445 INFO L290 TraceCheckUtils]: 14: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,445 INFO L290 TraceCheckUtils]: 13: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,445 INFO L290 TraceCheckUtils]: 12: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,446 INFO L272 TraceCheckUtils]: 11: Hoare triple {7483#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,446 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7186#true} {7483#(< ~counter~0 18)} #78#return; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,446 INFO L290 TraceCheckUtils]: 9: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-08 05:44:44,446 INFO L290 TraceCheckUtils]: 8: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-08 05:44:44,446 INFO L290 TraceCheckUtils]: 7: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-08 05:44:44,446 INFO L272 TraceCheckUtils]: 6: Hoare triple {7483#(< ~counter~0 18)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7186#true} is VALID [2022-04-08 05:44:44,447 INFO L290 TraceCheckUtils]: 5: Hoare triple {7483#(< ~counter~0 18)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,447 INFO L272 TraceCheckUtils]: 4: Hoare triple {7483#(< ~counter~0 18)} call #t~ret8 := main(); {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,447 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7483#(< ~counter~0 18)} {7186#true} #98#return; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {7483#(< ~counter~0 18)} assume true; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,448 INFO L290 TraceCheckUtils]: 1: Hoare triple {7186#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);~counter~0 := 0; {7483#(< ~counter~0 18)} is VALID [2022-04-08 05:44:44,448 INFO L272 TraceCheckUtils]: 0: Hoare triple {7186#true} call ULTIMATE.init(); {7186#true} is VALID [2022-04-08 05:44:44,448 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:44,448 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:44:44,449 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [653462926] [2022-04-08 05:44:44,449 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:44:44,449 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [304272793] [2022-04-08 05:44:44,449 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [304272793] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:44:44,449 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:44:44,449 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 05:44:44,449 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:44:44,449 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1698985788] [2022-04-08 05:44:44,449 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1698985788] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:44:44,449 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:44:44,449 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:44:44,449 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1776349918] [2022-04-08 05:44:44,449 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:44:44,450 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 62 [2022-04-08 05:44:44,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:44:44,450 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:44,483 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:44,483 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:44:44,483 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:44,483 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:44:44,484 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:44:44,484 INFO L87 Difference]: Start difference. First operand 146 states and 199 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:44,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:44,858 INFO L93 Difference]: Finished difference Result 183 states and 250 transitions. [2022-04-08 05:44:44,858 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 05:44:44,859 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 62 [2022-04-08 05:44:44,859 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:44:44,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:44,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 95 transitions. [2022-04-08 05:44:44,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:44,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 95 transitions. [2022-04-08 05:44:44,862 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 95 transitions. [2022-04-08 05:44:44,936 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:44,939 INFO L225 Difference]: With dead ends: 183 [2022-04-08 05:44:44,939 INFO L226 Difference]: Without dead ends: 146 [2022-04-08 05:44:44,940 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2022-04-08 05:44:44,940 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 16 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:44:44,940 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 143 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:44:44,941 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-04-08 05:44:45,186 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 146. [2022-04-08 05:44:45,186 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:44:45,187 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:45,187 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:45,187 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:45,192 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:45,192 INFO L93 Difference]: Finished difference Result 146 states and 198 transitions. [2022-04-08 05:44:45,192 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 198 transitions. [2022-04-08 05:44:45,193 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:45,193 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:45,193 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 146 states. [2022-04-08 05:44:45,194 INFO L87 Difference]: Start difference. First operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 146 states. [2022-04-08 05:44:45,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:45,198 INFO L93 Difference]: Finished difference Result 146 states and 198 transitions. [2022-04-08 05:44:45,198 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 198 transitions. [2022-04-08 05:44:45,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:45,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:45,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:44:45,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:44:45,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 05:44:45,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 198 transitions. [2022-04-08 05:44:45,204 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 198 transitions. Word has length 62 [2022-04-08 05:44:45,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:44:45,205 INFO L478 AbstractCegarLoop]: Abstraction has 146 states and 198 transitions. [2022-04-08 05:44:45,205 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:45,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 146 states and 198 transitions. [2022-04-08 05:44:45,484 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 198 edges. 198 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:45,485 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 198 transitions. [2022-04-08 05:44:45,485 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-08 05:44:45,485 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:44:45,485 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 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-08 05:44:45,511 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-08 05:44:45,686 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-08 05:44:45,686 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:44:45,686 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:44:45,686 INFO L85 PathProgramCache]: Analyzing trace with hash -385934262, now seen corresponding path program 1 times [2022-04-08 05:44:45,686 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:45,686 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [77074319] [2022-04-08 05:44:45,687 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:44:45,687 INFO L85 PathProgramCache]: Analyzing trace with hash -385934262, now seen corresponding path program 2 times [2022-04-08 05:44:45,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:44:45,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1029100545] [2022-04-08 05:44:45,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:44:45,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:44:45,698 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:44:45,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2084575709] [2022-04-08 05:44:45,699 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:44:45,699 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:44:45,699 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:44:45,700 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:44:45,728 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-08 05:44:45,762 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:44:45,762 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:44:45,763 INFO L263 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 05:44:45,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:44:45,777 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:44:46,067 INFO L272 TraceCheckUtils]: 0: Hoare triple {8519#true} call ULTIMATE.init(); {8519#true} is VALID [2022-04-08 05:44:46,068 INFO L290 TraceCheckUtils]: 1: Hoare triple {8519#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);~counter~0 := 0; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,068 INFO L290 TraceCheckUtils]: 2: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,068 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8527#(<= ~counter~0 0)} {8519#true} #98#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,069 INFO L272 TraceCheckUtils]: 4: Hoare triple {8527#(<= ~counter~0 0)} call #t~ret8 := main(); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {8527#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,069 INFO L272 TraceCheckUtils]: 6: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,070 INFO L290 TraceCheckUtils]: 7: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,070 INFO L290 TraceCheckUtils]: 8: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,070 INFO L290 TraceCheckUtils]: 9: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,071 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #78#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,071 INFO L272 TraceCheckUtils]: 11: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,072 INFO L290 TraceCheckUtils]: 14: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,072 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #80#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,073 INFO L290 TraceCheckUtils]: 16: Hoare triple {8527#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,074 INFO L272 TraceCheckUtils]: 17: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,074 INFO L290 TraceCheckUtils]: 18: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,074 INFO L290 TraceCheckUtils]: 19: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,074 INFO L290 TraceCheckUtils]: 20: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,075 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #82#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,075 INFO L272 TraceCheckUtils]: 22: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,075 INFO L290 TraceCheckUtils]: 23: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,076 INFO L290 TraceCheckUtils]: 24: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,076 INFO L290 TraceCheckUtils]: 25: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,076 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #84#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-08 05:44:46,077 INFO L290 TraceCheckUtils]: 27: Hoare triple {8527#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8606#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:46,077 INFO L290 TraceCheckUtils]: 28: Hoare triple {8606#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {8606#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:46,078 INFO L290 TraceCheckUtils]: 29: Hoare triple {8606#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8606#(<= ~counter~0 1)} is VALID [2022-04-08 05:44:46,078 INFO L290 TraceCheckUtils]: 30: Hoare triple {8606#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,078 INFO L290 TraceCheckUtils]: 31: Hoare triple {8616#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,079 INFO L272 TraceCheckUtils]: 32: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,079 INFO L290 TraceCheckUtils]: 33: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,089 INFO L290 TraceCheckUtils]: 34: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,089 INFO L290 TraceCheckUtils]: 35: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,090 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #86#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,090 INFO L272 TraceCheckUtils]: 37: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,090 INFO L290 TraceCheckUtils]: 38: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,091 INFO L290 TraceCheckUtils]: 39: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,092 INFO L290 TraceCheckUtils]: 40: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,093 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #88#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,093 INFO L272 TraceCheckUtils]: 42: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,093 INFO L290 TraceCheckUtils]: 43: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,094 INFO L290 TraceCheckUtils]: 44: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,094 INFO L290 TraceCheckUtils]: 45: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,095 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #90#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,095 INFO L272 TraceCheckUtils]: 47: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,095 INFO L290 TraceCheckUtils]: 48: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,096 INFO L290 TraceCheckUtils]: 49: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,096 INFO L290 TraceCheckUtils]: 50: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,097 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #92#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,097 INFO L290 TraceCheckUtils]: 52: Hoare triple {8616#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,097 INFO L290 TraceCheckUtils]: 53: Hoare triple {8616#(<= ~counter~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; {8616#(<= ~counter~0 2)} is VALID [2022-04-08 05:44:46,098 INFO L290 TraceCheckUtils]: 54: Hoare triple {8616#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8689#(<= ~counter~0 3)} is VALID [2022-04-08 05:44:46,098 INFO L290 TraceCheckUtils]: 55: Hoare triple {8689#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {8689#(<= ~counter~0 3)} is VALID [2022-04-08 05:44:46,098 INFO L290 TraceCheckUtils]: 56: Hoare triple {8689#(<= ~counter~0 3)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8689#(<= ~counter~0 3)} is VALID [2022-04-08 05:44:46,099 INFO L290 TraceCheckUtils]: 57: Hoare triple {8689#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8699#(<= |main_#t~post7| 3)} is VALID [2022-04-08 05:44:46,099 INFO L290 TraceCheckUtils]: 58: Hoare triple {8699#(<= |main_#t~post7| 3)} assume !(#t~post7 < 20);havoc #t~post7; {8520#false} is VALID [2022-04-08 05:44:46,099 INFO L290 TraceCheckUtils]: 59: Hoare triple {8520#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; {8520#false} is VALID [2022-04-08 05:44:46,099 INFO L290 TraceCheckUtils]: 60: Hoare triple {8520#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8520#false} is VALID [2022-04-08 05:44:46,099 INFO L290 TraceCheckUtils]: 61: Hoare triple {8520#false} assume !(#t~post6 < 20);havoc #t~post6; {8520#false} is VALID [2022-04-08 05:44:46,099 INFO L272 TraceCheckUtils]: 62: Hoare triple {8520#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {8520#false} is VALID [2022-04-08 05:44:46,099 INFO L290 TraceCheckUtils]: 63: Hoare triple {8520#false} ~cond := #in~cond; {8520#false} is VALID [2022-04-08 05:44:46,100 INFO L290 TraceCheckUtils]: 64: Hoare triple {8520#false} assume 0 == ~cond; {8520#false} is VALID [2022-04-08 05:44:46,100 INFO L290 TraceCheckUtils]: 65: Hoare triple {8520#false} assume !false; {8520#false} is VALID [2022-04-08 05:44:46,100 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:46,100 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:44:46,376 INFO L290 TraceCheckUtils]: 65: Hoare triple {8520#false} assume !false; {8520#false} is VALID [2022-04-08 05:44:46,377 INFO L290 TraceCheckUtils]: 64: Hoare triple {8520#false} assume 0 == ~cond; {8520#false} is VALID [2022-04-08 05:44:46,377 INFO L290 TraceCheckUtils]: 63: Hoare triple {8520#false} ~cond := #in~cond; {8520#false} is VALID [2022-04-08 05:44:46,377 INFO L272 TraceCheckUtils]: 62: Hoare triple {8520#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {8520#false} is VALID [2022-04-08 05:44:46,377 INFO L290 TraceCheckUtils]: 61: Hoare triple {8520#false} assume !(#t~post6 < 20);havoc #t~post6; {8520#false} is VALID [2022-04-08 05:44:46,377 INFO L290 TraceCheckUtils]: 60: Hoare triple {8520#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8520#false} is VALID [2022-04-08 05:44:46,378 INFO L290 TraceCheckUtils]: 59: Hoare triple {8520#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; {8520#false} is VALID [2022-04-08 05:44:46,378 INFO L290 TraceCheckUtils]: 58: Hoare triple {8745#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {8520#false} is VALID [2022-04-08 05:44:46,379 INFO L290 TraceCheckUtils]: 57: Hoare triple {8749#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8745#(< |main_#t~post7| 20)} is VALID [2022-04-08 05:44:46,380 INFO L290 TraceCheckUtils]: 56: Hoare triple {8749#(< ~counter~0 20)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8749#(< ~counter~0 20)} is VALID [2022-04-08 05:44:46,380 INFO L290 TraceCheckUtils]: 55: Hoare triple {8749#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {8749#(< ~counter~0 20)} is VALID [2022-04-08 05:44:46,382 INFO L290 TraceCheckUtils]: 54: Hoare triple {8759#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8749#(< ~counter~0 20)} is VALID [2022-04-08 05:44:46,383 INFO L290 TraceCheckUtils]: 53: Hoare triple {8759#(< ~counter~0 19)} ~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; {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,383 INFO L290 TraceCheckUtils]: 52: Hoare triple {8759#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,384 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8519#true} {8759#(< ~counter~0 19)} #92#return; {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,385 INFO L290 TraceCheckUtils]: 50: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,385 INFO L290 TraceCheckUtils]: 49: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,385 INFO L290 TraceCheckUtils]: 48: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,385 INFO L272 TraceCheckUtils]: 47: Hoare triple {8759#(< ~counter~0 19)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,386 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8519#true} {8759#(< ~counter~0 19)} #90#return; {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,386 INFO L290 TraceCheckUtils]: 45: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,386 INFO L290 TraceCheckUtils]: 44: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,386 INFO L290 TraceCheckUtils]: 43: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,386 INFO L272 TraceCheckUtils]: 42: Hoare triple {8759#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,386 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8519#true} {8759#(< ~counter~0 19)} #88#return; {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,387 INFO L290 TraceCheckUtils]: 40: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,387 INFO L290 TraceCheckUtils]: 39: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,387 INFO L290 TraceCheckUtils]: 38: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,387 INFO L272 TraceCheckUtils]: 37: Hoare triple {8759#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,387 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8519#true} {8759#(< ~counter~0 19)} #86#return; {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,387 INFO L290 TraceCheckUtils]: 35: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,387 INFO L290 TraceCheckUtils]: 34: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,388 INFO L290 TraceCheckUtils]: 33: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,388 INFO L272 TraceCheckUtils]: 32: Hoare triple {8759#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,388 INFO L290 TraceCheckUtils]: 31: Hoare triple {8759#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,388 INFO L290 TraceCheckUtils]: 30: Hoare triple {8832#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8759#(< ~counter~0 19)} is VALID [2022-04-08 05:44:46,389 INFO L290 TraceCheckUtils]: 29: Hoare triple {8832#(< ~counter~0 18)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8832#(< ~counter~0 18)} is VALID [2022-04-08 05:44:46,389 INFO L290 TraceCheckUtils]: 28: Hoare triple {8832#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {8832#(< ~counter~0 18)} is VALID [2022-04-08 05:44:46,389 INFO L290 TraceCheckUtils]: 27: Hoare triple {8842#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8832#(< ~counter~0 18)} is VALID [2022-04-08 05:44:46,390 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8519#true} {8842#(< ~counter~0 17)} #84#return; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,390 INFO L290 TraceCheckUtils]: 25: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,390 INFO L290 TraceCheckUtils]: 24: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,390 INFO L290 TraceCheckUtils]: 23: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,390 INFO L272 TraceCheckUtils]: 22: Hoare triple {8842#(< ~counter~0 17)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,391 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8519#true} {8842#(< ~counter~0 17)} #82#return; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,391 INFO L290 TraceCheckUtils]: 20: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,391 INFO L290 TraceCheckUtils]: 19: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,391 INFO L290 TraceCheckUtils]: 18: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,391 INFO L272 TraceCheckUtils]: 17: Hoare triple {8842#(< ~counter~0 17)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,391 INFO L290 TraceCheckUtils]: 16: Hoare triple {8842#(< ~counter~0 17)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,392 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8519#true} {8842#(< ~counter~0 17)} #80#return; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,392 INFO L290 TraceCheckUtils]: 13: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,392 INFO L290 TraceCheckUtils]: 12: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,392 INFO L272 TraceCheckUtils]: 11: Hoare triple {8842#(< ~counter~0 17)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,392 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8519#true} {8842#(< ~counter~0 17)} #78#return; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,392 INFO L290 TraceCheckUtils]: 9: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-08 05:44:46,392 INFO L290 TraceCheckUtils]: 8: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-08 05:44:46,392 INFO L290 TraceCheckUtils]: 7: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-08 05:44:46,393 INFO L272 TraceCheckUtils]: 6: Hoare triple {8842#(< ~counter~0 17)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8519#true} is VALID [2022-04-08 05:44:46,393 INFO L290 TraceCheckUtils]: 5: Hoare triple {8842#(< ~counter~0 17)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,393 INFO L272 TraceCheckUtils]: 4: Hoare triple {8842#(< ~counter~0 17)} call #t~ret8 := main(); {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,393 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8842#(< ~counter~0 17)} {8519#true} #98#return; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {8842#(< ~counter~0 17)} assume true; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {8519#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);~counter~0 := 0; {8842#(< ~counter~0 17)} is VALID [2022-04-08 05:44:46,394 INFO L272 TraceCheckUtils]: 0: Hoare triple {8519#true} call ULTIMATE.init(); {8519#true} is VALID [2022-04-08 05:44:46,395 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:44:46,395 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:44:46,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1029100545] [2022-04-08 05:44:46,395 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:44:46,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2084575709] [2022-04-08 05:44:46,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2084575709] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:44:46,395 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:44:46,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 05:44:46,395 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:44:46,396 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [77074319] [2022-04-08 05:44:46,396 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [77074319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:44:46,396 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:44:46,396 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:44:46,396 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [427033684] [2022-04-08 05:44:46,396 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:44:46,396 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 05:44:46,396 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:44:46,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:46,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:46,431 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:44:46,431 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:46,431 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:44:46,432 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:44:46,432 INFO L87 Difference]: Start difference. First operand 146 states and 198 transitions. Second operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:46,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:46,909 INFO L93 Difference]: Finished difference Result 253 states and 351 transitions. [2022-04-08 05:44:46,909 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:44:46,909 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 05:44:46,910 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:44:46,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:46,911 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-08 05:44:46,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:46,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-08 05:44:46,913 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 114 transitions. [2022-04-08 05:44:47,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:47,017 INFO L225 Difference]: With dead ends: 253 [2022-04-08 05:44:47,018 INFO L226 Difference]: Without dead ends: 173 [2022-04-08 05:44:47,019 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=70, Invalid=112, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:44:47,019 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 29 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:44:47,019 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 155 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:44:47,020 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 173 states. [2022-04-08 05:44:47,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 173 to 171. [2022-04-08 05:44:47,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:44:47,269 INFO L82 GeneralOperation]: Start isEquivalent. First operand 173 states. Second operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:44:47,269 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:44:47,269 INFO L87 Difference]: Start difference. First operand 173 states. Second operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:44:47,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:47,274 INFO L93 Difference]: Finished difference Result 173 states and 225 transitions. [2022-04-08 05:44:47,274 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 225 transitions. [2022-04-08 05:44:47,275 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:47,275 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:47,275 INFO L74 IsIncluded]: Start isIncluded. First operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-08 05:44:47,276 INFO L87 Difference]: Start difference. First operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-08 05:44:47,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:44:47,280 INFO L93 Difference]: Finished difference Result 173 states and 225 transitions. [2022-04-08 05:44:47,280 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 225 transitions. [2022-04-08 05:44:47,281 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:44:47,281 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:44:47,281 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:44:47,281 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:44:47,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:44:47,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 171 states to 171 states and 223 transitions. [2022-04-08 05:44:47,286 INFO L78 Accepts]: Start accepts. Automaton has 171 states and 223 transitions. Word has length 66 [2022-04-08 05:44:47,286 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:44:47,287 INFO L478 AbstractCegarLoop]: Abstraction has 171 states and 223 transitions. [2022-04-08 05:44:47,287 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:44:47,287 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 171 states and 223 transitions. [2022-04-08 05:44:47,540 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 223 edges. 223 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:44:47,540 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 223 transitions. [2022-04-08 05:44:47,540 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-08 05:44:47,540 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:44:47,540 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:44:47,556 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2022-04-08 05:44:47,741 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-08 05:44:47,741 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:44:47,741 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:44:47,741 INFO L85 PathProgramCache]: Analyzing trace with hash 792554045, now seen corresponding path program 1 times [2022-04-08 05:44:47,741 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:44:47,742 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [637965240] [2022-04-08 05:44:47,742 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:44:47,742 INFO L85 PathProgramCache]: Analyzing trace with hash 792554045, now seen corresponding path program 2 times [2022-04-08 05:44:47,742 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:44:47,742 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1835268856] [2022-04-08 05:44:47,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:44:47,743 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:44:47,761 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:44:47,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1382641741] [2022-04-08 05:44:47,761 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:44:47,761 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:44:47,762 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:44:47,763 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:44:47,764 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-08 05:44:47,820 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:44:47,820 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:44:47,821 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-08 05:44:47,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:44:47,834 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:44:48,130 INFO L272 TraceCheckUtils]: 0: Hoare triple {10124#true} call ULTIMATE.init(); {10124#true} is VALID [2022-04-08 05:44:48,130 INFO L290 TraceCheckUtils]: 1: Hoare triple {10124#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);~counter~0 := 0; {10124#true} is VALID [2022-04-08 05:44:48,130 INFO L290 TraceCheckUtils]: 2: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,130 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10124#true} {10124#true} #98#return; {10124#true} is VALID [2022-04-08 05:44:48,130 INFO L272 TraceCheckUtils]: 4: Hoare triple {10124#true} call #t~ret8 := main(); {10124#true} is VALID [2022-04-08 05:44:48,130 INFO L290 TraceCheckUtils]: 5: Hoare triple {10124#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L272 TraceCheckUtils]: 6: Hoare triple {10124#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10124#true} {10124#true} #78#return; {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L272 TraceCheckUtils]: 11: Hoare triple {10124#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L290 TraceCheckUtils]: 12: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L290 TraceCheckUtils]: 13: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L290 TraceCheckUtils]: 14: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,131 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10124#true} {10124#true} #80#return; {10124#true} is VALID [2022-04-08 05:44:48,132 INFO L290 TraceCheckUtils]: 16: Hoare triple {10124#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:44:48,132 INFO L272 TraceCheckUtils]: 17: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,132 INFO L290 TraceCheckUtils]: 18: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,132 INFO L290 TraceCheckUtils]: 19: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,132 INFO L290 TraceCheckUtils]: 20: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,133 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10124#true} {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #82#return; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:44:48,133 INFO L272 TraceCheckUtils]: 22: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,133 INFO L290 TraceCheckUtils]: 23: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,133 INFO L290 TraceCheckUtils]: 24: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,133 INFO L290 TraceCheckUtils]: 25: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,133 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10124#true} {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #84#return; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:44:48,134 INFO L290 TraceCheckUtils]: 27: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:44:48,134 INFO L290 TraceCheckUtils]: 28: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:44:48,134 INFO L290 TraceCheckUtils]: 29: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,135 INFO L290 TraceCheckUtils]: 30: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,135 INFO L290 TraceCheckUtils]: 31: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,135 INFO L272 TraceCheckUtils]: 32: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,135 INFO L290 TraceCheckUtils]: 33: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,135 INFO L290 TraceCheckUtils]: 34: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,135 INFO L290 TraceCheckUtils]: 35: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,136 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10124#true} {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #86#return; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,136 INFO L272 TraceCheckUtils]: 37: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,136 INFO L290 TraceCheckUtils]: 38: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,136 INFO L290 TraceCheckUtils]: 39: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,136 INFO L290 TraceCheckUtils]: 40: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,137 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10124#true} {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #88#return; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,137 INFO L272 TraceCheckUtils]: 42: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,137 INFO L290 TraceCheckUtils]: 43: Hoare triple {10124#true} ~cond := #in~cond; {10260#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:44:48,138 INFO L290 TraceCheckUtils]: 44: Hoare triple {10260#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:44:48,138 INFO L290 TraceCheckUtils]: 45: Hoare triple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:44:48,139 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #90#return; {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,139 INFO L272 TraceCheckUtils]: 47: Hoare triple {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:44:48,139 INFO L290 TraceCheckUtils]: 48: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,139 INFO L290 TraceCheckUtils]: 49: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,139 INFO L290 TraceCheckUtils]: 50: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,139 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {10124#true} {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #92#return; {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,140 INFO L290 TraceCheckUtils]: 52: Hoare triple {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:44:48,140 INFO L290 TraceCheckUtils]: 53: Hoare triple {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:44:48,141 INFO L290 TraceCheckUtils]: 54: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:44:48,141 INFO L290 TraceCheckUtils]: 55: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post6 < 20);havoc #t~post6; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:44:48,142 INFO L290 TraceCheckUtils]: 56: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:44:48,142 INFO L290 TraceCheckUtils]: 57: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:44:48,142 INFO L290 TraceCheckUtils]: 58: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:44:48,142 INFO L272 TraceCheckUtils]: 59: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~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)); {10124#true} is VALID [2022-04-08 05:44:48,142 INFO L290 TraceCheckUtils]: 60: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:44:48,143 INFO L290 TraceCheckUtils]: 61: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:44:48,143 INFO L290 TraceCheckUtils]: 62: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:44:48,143 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {10124#true} {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #86#return; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:44:48,144 INFO L272 TraceCheckUtils]: 64: Hoare triple {10293#(and (= main_~p~0 0) (= 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)); {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:44:48,144 INFO L290 TraceCheckUtils]: 65: Hoare triple {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10331#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:44:48,145 INFO L290 TraceCheckUtils]: 66: Hoare triple {10331#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10125#false} is VALID [2022-04-08 05:44:48,145 INFO L290 TraceCheckUtils]: 67: Hoare triple {10125#false} assume !false; {10125#false} is VALID [2022-04-08 05:44:48,145 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 15 proven. 14 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 05:44:48,145 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:45:01,749 INFO L290 TraceCheckUtils]: 67: Hoare triple {10125#false} assume !false; {10125#false} is VALID [2022-04-08 05:45:01,749 INFO L290 TraceCheckUtils]: 66: Hoare triple {10331#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10125#false} is VALID [2022-04-08 05:45:01,750 INFO L290 TraceCheckUtils]: 65: Hoare triple {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10331#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:45:01,751 INFO L272 TraceCheckUtils]: 64: Hoare triple {10347#(= 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)); {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:45:01,752 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {10124#true} {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:45:01,752 INFO L290 TraceCheckUtils]: 62: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,752 INFO L290 TraceCheckUtils]: 61: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,752 INFO L290 TraceCheckUtils]: 60: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,752 INFO L272 TraceCheckUtils]: 59: Hoare triple {10347#(= main_~a~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)); {10124#true} is VALID [2022-04-08 05:45:01,753 INFO L290 TraceCheckUtils]: 58: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:45:01,753 INFO L290 TraceCheckUtils]: 57: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:45:01,754 INFO L290 TraceCheckUtils]: 56: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:45:01,754 INFO L290 TraceCheckUtils]: 55: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:45:01,755 INFO L290 TraceCheckUtils]: 54: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:45:01,755 INFO L290 TraceCheckUtils]: 53: Hoare triple {10381#(= 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; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:45:01,756 INFO L290 TraceCheckUtils]: 52: Hoare triple {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:45:01,757 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {10124#true} {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #92#return; {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:45:01,757 INFO L290 TraceCheckUtils]: 50: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,757 INFO L290 TraceCheckUtils]: 49: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,757 INFO L290 TraceCheckUtils]: 48: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,757 INFO L272 TraceCheckUtils]: 47: Hoare triple {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,758 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} {10124#true} #90#return; {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:45:01,758 INFO L290 TraceCheckUtils]: 45: Hoare triple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:45:01,758 INFO L290 TraceCheckUtils]: 44: Hoare triple {10412#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:45:01,759 INFO L290 TraceCheckUtils]: 43: Hoare triple {10124#true} ~cond := #in~cond; {10412#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:45:01,759 INFO L272 TraceCheckUtils]: 42: Hoare triple {10124#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10124#true} {10124#true} #88#return; {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L290 TraceCheckUtils]: 40: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L290 TraceCheckUtils]: 39: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L290 TraceCheckUtils]: 38: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L272 TraceCheckUtils]: 37: Hoare triple {10124#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10124#true} {10124#true} #86#return; {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L290 TraceCheckUtils]: 35: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L290 TraceCheckUtils]: 34: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L290 TraceCheckUtils]: 33: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,759 INFO L272 TraceCheckUtils]: 32: Hoare triple {10124#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 31: Hoare triple {10124#true} assume !!(#t~post7 < 20);havoc #t~post7; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 30: Hoare triple {10124#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 29: Hoare triple {10124#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 28: Hoare triple {10124#true} assume !!(#t~post6 < 20);havoc #t~post6; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 27: Hoare triple {10124#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10124#true} {10124#true} #84#return; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 24: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 23: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L272 TraceCheckUtils]: 22: Hoare triple {10124#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10124#true} {10124#true} #82#return; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 20: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 19: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,760 INFO L290 TraceCheckUtils]: 18: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L272 TraceCheckUtils]: 17: Hoare triple {10124#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 16: Hoare triple {10124#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10124#true} {10124#true} #80#return; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 14: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 13: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 12: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L272 TraceCheckUtils]: 11: Hoare triple {10124#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10124#true} {10124#true} #78#return; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 9: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 8: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 7: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L272 TraceCheckUtils]: 6: Hoare triple {10124#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-08 05:45:01,761 INFO L290 TraceCheckUtils]: 5: Hoare triple {10124#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {10124#true} is VALID [2022-04-08 05:45:01,762 INFO L272 TraceCheckUtils]: 4: Hoare triple {10124#true} call #t~ret8 := main(); {10124#true} is VALID [2022-04-08 05:45:01,762 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10124#true} {10124#true} #98#return; {10124#true} is VALID [2022-04-08 05:45:01,762 INFO L290 TraceCheckUtils]: 2: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-08 05:45:01,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {10124#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);~counter~0 := 0; {10124#true} is VALID [2022-04-08 05:45:01,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {10124#true} call ULTIMATE.init(); {10124#true} is VALID [2022-04-08 05:45:01,762 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 22 proven. 7 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 05:45:01,762 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:45:01,762 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1835268856] [2022-04-08 05:45:01,762 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:45:01,763 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1382641741] [2022-04-08 05:45:01,763 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1382641741] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:45:01,763 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:45:01,763 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 13 [2022-04-08 05:45:01,763 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:45:01,763 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [637965240] [2022-04-08 05:45:01,763 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [637965240] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:45:01,763 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:45:01,763 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 05:45:01,763 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [962640052] [2022-04-08 05:45:01,763 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:45:01,764 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-08 05:45:01,764 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:45:01,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-08 05:45:01,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:45:01,800 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 05:45:01,801 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:45:01,801 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 05:45:01,801 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=126, Unknown=0, NotChecked=0, Total=156 [2022-04-08 05:45:01,801 INFO L87 Difference]: Start difference. First operand 171 states and 223 transitions. Second operand has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-08 05:45:03,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:45:03,160 INFO L93 Difference]: Finished difference Result 195 states and 259 transitions. [2022-04-08 05:45:03,160 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 05:45:03,160 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-08 05:45:03,161 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:45:03,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-08 05:45:03,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 97 transitions. [2022-04-08 05:45:03,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-08 05:45:03,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 97 transitions. [2022-04-08 05:45:03,164 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 97 transitions. [2022-04-08 05:45:03,251 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-08 05:45:03,256 INFO L225 Difference]: With dead ends: 195 [2022-04-08 05:45:03,256 INFO L226 Difference]: Without dead ends: 193 [2022-04-08 05:45:03,256 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 139 GetRequests, 123 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=218, Unknown=0, NotChecked=0, Total=272 [2022-04-08 05:45:03,257 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 22 mSDsluCounter, 248 mSDsCounter, 0 mSdLazyCounter, 312 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 295 SdHoareTripleChecker+Invalid, 320 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 312 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 05:45:03,257 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 295 Invalid, 320 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 312 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 05:45:03,257 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 193 states. [2022-04-08 05:45:03,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 193 to 190. [2022-04-08 05:45:03,536 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:45:03,536 INFO L82 GeneralOperation]: Start isEquivalent. First operand 193 states. Second operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:45:03,536 INFO L74 IsIncluded]: Start isIncluded. First operand 193 states. Second operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:45:03,537 INFO L87 Difference]: Start difference. First operand 193 states. Second operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:45:03,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:45:03,559 INFO L93 Difference]: Finished difference Result 193 states and 257 transitions. [2022-04-08 05:45:03,559 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 257 transitions. [2022-04-08 05:45:03,561 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:45:03,561 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:45:03,561 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 193 states. [2022-04-08 05:45:03,562 INFO L87 Difference]: Start difference. First operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 193 states. [2022-04-08 05:45:03,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:45:03,567 INFO L93 Difference]: Finished difference Result 193 states and 257 transitions. [2022-04-08 05:45:03,567 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 257 transitions. [2022-04-08 05:45:03,568 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:45:03,568 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:45:03,568 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:45:03,568 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:45:03,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:45:03,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 254 transitions. [2022-04-08 05:45:03,574 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 254 transitions. Word has length 68 [2022-04-08 05:45:03,574 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:45:03,574 INFO L478 AbstractCegarLoop]: Abstraction has 190 states and 254 transitions. [2022-04-08 05:45:03,575 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-08 05:45:03,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 254 transitions. [2022-04-08 05:45:03,908 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:45:03,909 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 254 transitions. [2022-04-08 05:45:03,911 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-08 05:45:03,911 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:45:03,911 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:45:03,932 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 05:45:04,127 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-08 05:45:04,128 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:45:04,128 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:45:04,128 INFO L85 PathProgramCache]: Analyzing trace with hash 783638790, now seen corresponding path program 3 times [2022-04-08 05:45:04,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:45:04,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1439504373] [2022-04-08 05:45:04,128 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:45:04,129 INFO L85 PathProgramCache]: Analyzing trace with hash 783638790, now seen corresponding path program 4 times [2022-04-08 05:45:04,129 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:45:04,129 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1507761487] [2022-04-08 05:45:04,129 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:45:04,129 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:45:04,140 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:45:04,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1189983683] [2022-04-08 05:45:04,140 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:45:04,141 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:45:04,141 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:45:04,152 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:45:04,165 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-08 05:45:04,206 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:45:04,206 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:45:04,207 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-08 05:45:04,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:45:04,220 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:45:10,987 INFO L272 TraceCheckUtils]: 0: Hoare triple {11708#true} call ULTIMATE.init(); {11708#true} is VALID [2022-04-08 05:45:10,988 INFO L290 TraceCheckUtils]: 1: Hoare triple {11708#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);~counter~0 := 0; {11708#true} is VALID [2022-04-08 05:45:10,988 INFO L290 TraceCheckUtils]: 2: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,988 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11708#true} {11708#true} #98#return; {11708#true} is VALID [2022-04-08 05:45:10,988 INFO L272 TraceCheckUtils]: 4: Hoare triple {11708#true} call #t~ret8 := main(); {11708#true} is VALID [2022-04-08 05:45:10,988 INFO L290 TraceCheckUtils]: 5: Hoare triple {11708#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {11708#true} is VALID [2022-04-08 05:45:10,988 INFO L272 TraceCheckUtils]: 6: Hoare triple {11708#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11708#true} is VALID [2022-04-08 05:45:10,988 INFO L290 TraceCheckUtils]: 7: Hoare triple {11708#true} ~cond := #in~cond; {11734#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:45:10,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {11734#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11738#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:45:10,989 INFO L290 TraceCheckUtils]: 9: Hoare triple {11738#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11738#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:45:10,989 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11738#(not (= |assume_abort_if_not_#in~cond| 0))} {11708#true} #78#return; {11745#(<= 1 main_~x~0)} is VALID [2022-04-08 05:45:10,989 INFO L272 TraceCheckUtils]: 11: Hoare triple {11745#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11708#true} is VALID [2022-04-08 05:45:10,989 INFO L290 TraceCheckUtils]: 12: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:10,990 INFO L290 TraceCheckUtils]: 13: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:10,990 INFO L290 TraceCheckUtils]: 14: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,990 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11708#true} {11745#(<= 1 main_~x~0)} #80#return; {11745#(<= 1 main_~x~0)} is VALID [2022-04-08 05:45:10,990 INFO L290 TraceCheckUtils]: 16: Hoare triple {11745#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,991 INFO L272 TraceCheckUtils]: 17: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {11708#true} is VALID [2022-04-08 05:45:10,991 INFO L290 TraceCheckUtils]: 18: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:10,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:10,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,991 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11708#true} {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,992 INFO L272 TraceCheckUtils]: 22: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {11708#true} is VALID [2022-04-08 05:45:10,992 INFO L290 TraceCheckUtils]: 23: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:10,992 INFO L290 TraceCheckUtils]: 24: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:10,992 INFO L290 TraceCheckUtils]: 25: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,992 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11708#true} {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,993 INFO L290 TraceCheckUtils]: 27: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,993 INFO L290 TraceCheckUtils]: 28: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,994 INFO L290 TraceCheckUtils]: 29: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,994 INFO L290 TraceCheckUtils]: 30: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,994 INFO L290 TraceCheckUtils]: 31: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,995 INFO L272 TraceCheckUtils]: 32: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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)); {11708#true} is VALID [2022-04-08 05:45:10,995 INFO L290 TraceCheckUtils]: 33: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:10,995 INFO L290 TraceCheckUtils]: 34: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:10,995 INFO L290 TraceCheckUtils]: 35: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,995 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #86#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,995 INFO L272 TraceCheckUtils]: 37: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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)); {11708#true} is VALID [2022-04-08 05:45:10,996 INFO L290 TraceCheckUtils]: 38: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:10,996 INFO L290 TraceCheckUtils]: 39: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:10,996 INFO L290 TraceCheckUtils]: 40: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,996 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #88#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,996 INFO L272 TraceCheckUtils]: 42: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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)); {11708#true} is VALID [2022-04-08 05:45:10,997 INFO L290 TraceCheckUtils]: 43: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:10,997 INFO L290 TraceCheckUtils]: 44: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:10,997 INFO L290 TraceCheckUtils]: 45: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,997 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #90#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,997 INFO L272 TraceCheckUtils]: 47: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11708#true} is VALID [2022-04-08 05:45:10,998 INFO L290 TraceCheckUtils]: 48: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:10,998 INFO L290 TraceCheckUtils]: 49: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:10,998 INFO L290 TraceCheckUtils]: 50: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:10,998 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #92#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,999 INFO L290 TraceCheckUtils]: 52: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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); {11874#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:45:10,999 INFO L290 TraceCheckUtils]: 53: Hoare triple {11874#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 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; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,000 INFO L290 TraceCheckUtils]: 54: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,000 INFO L290 TraceCheckUtils]: 55: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,001 INFO L290 TraceCheckUtils]: 56: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,001 INFO L290 TraceCheckUtils]: 57: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,001 INFO L290 TraceCheckUtils]: 58: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,002 INFO L272 TraceCheckUtils]: 59: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11708#true} is VALID [2022-04-08 05:45:11,002 INFO L290 TraceCheckUtils]: 60: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:11,002 INFO L290 TraceCheckUtils]: 61: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:11,002 INFO L290 TraceCheckUtils]: 62: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:11,002 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {11708#true} {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #86#return; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,003 INFO L272 TraceCheckUtils]: 64: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11708#true} is VALID [2022-04-08 05:45:11,003 INFO L290 TraceCheckUtils]: 65: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-08 05:45:11,003 INFO L290 TraceCheckUtils]: 66: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-08 05:45:11,003 INFO L290 TraceCheckUtils]: 67: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-08 05:45:11,003 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {11708#true} {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #88#return; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:45:11,004 INFO L272 TraceCheckUtils]: 69: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11927#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:45:11,004 INFO L290 TraceCheckUtils]: 70: Hoare triple {11927#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11931#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:45:11,005 INFO L290 TraceCheckUtils]: 71: Hoare triple {11931#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11709#false} is VALID [2022-04-08 05:45:11,005 INFO L290 TraceCheckUtils]: 72: Hoare triple {11709#false} assume !false; {11709#false} is VALID [2022-04-08 05:45:11,005 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 12 proven. 17 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2022-04-08 05:45:11,005 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:46:36,788 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:46:36,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1507761487] [2022-04-08 05:46:36,789 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:46:36,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1189983683] [2022-04-08 05:46:36,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1189983683] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:46:36,789 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:46:36,789 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-08 05:46:36,790 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:46:36,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1439504373] [2022-04-08 05:46:36,790 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1439504373] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:46:36,790 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:46:36,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 05:46:36,790 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [70501720] [2022-04-08 05:46:36,790 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:46:36,790 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-08 05:46:36,791 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:46:36,791 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:46:36,836 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:46:36,836 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 05:46:36,836 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:46:36,836 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 05:46:36,837 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:46:36,837 INFO L87 Difference]: Start difference. First operand 190 states and 254 transitions. Second operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:46:38,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:46:38,294 INFO L93 Difference]: Finished difference Result 199 states and 262 transitions. [2022-04-08 05:46:38,294 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:46:38,294 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-08 05:46:38,294 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:46:38,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:46:38,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-08 05:46:38,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:46:38,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-08 05:46:38,297 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2022-04-08 05:46:38,401 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-08 05:46:38,405 INFO L225 Difference]: With dead ends: 199 [2022-04-08 05:46:38,405 INFO L226 Difference]: Without dead ends: 197 [2022-04-08 05:46:38,405 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=63, Invalid=279, Unknown=0, NotChecked=0, Total=342 [2022-04-08 05:46:38,406 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 39 mSDsluCounter, 252 mSDsCounter, 0 mSdLazyCounter, 321 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 303 SdHoareTripleChecker+Invalid, 336 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 321 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:46:38,406 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 303 Invalid, 336 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 321 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:46:38,406 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-08 05:46:38,711 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 194. [2022-04-08 05:46:38,711 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:46:38,712 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:46:38,712 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:46:38,712 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:46:38,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:46:38,718 INFO L93 Difference]: Finished difference Result 197 states and 260 transitions. [2022-04-08 05:46:38,718 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 260 transitions. [2022-04-08 05:46:38,718 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:46:38,719 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:46:38,719 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 197 states. [2022-04-08 05:46:38,719 INFO L87 Difference]: Start difference. First operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 197 states. [2022-04-08 05:46:38,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:46:38,724 INFO L93 Difference]: Finished difference Result 197 states and 260 transitions. [2022-04-08 05:46:38,724 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 260 transitions. [2022-04-08 05:46:38,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:46:38,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:46:38,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:46:38,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:46:38,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:46:38,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 257 transitions. [2022-04-08 05:46:38,731 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 257 transitions. Word has length 73 [2022-04-08 05:46:38,731 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:46:38,731 INFO L478 AbstractCegarLoop]: Abstraction has 194 states and 257 transitions. [2022-04-08 05:46:38,732 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 05:46:38,732 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 257 transitions. [2022-04-08 05:46:39,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 257 edges. 257 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:46:39,134 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 257 transitions. [2022-04-08 05:46:39,134 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2022-04-08 05:46:39,134 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:46:39,135 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 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-08 05:46:39,158 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-08 05:46:39,335 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:46:39,335 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:46:39,336 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:46:39,336 INFO L85 PathProgramCache]: Analyzing trace with hash 1625446301, now seen corresponding path program 5 times [2022-04-08 05:46:39,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:46:39,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1829351611] [2022-04-08 05:46:39,336 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:46:39,336 INFO L85 PathProgramCache]: Analyzing trace with hash 1625446301, now seen corresponding path program 6 times [2022-04-08 05:46:39,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:46:39,337 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [124613113] [2022-04-08 05:46:39,337 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:46:39,337 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:46:39,347 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:46:39,347 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1787752201] [2022-04-08 05:46:39,347 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:46:39,347 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:46:39,348 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:46:39,348 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:46:39,351 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-08 05:46:39,403 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:46:39,404 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:46:39,405 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-08 05:46:39,427 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:46:39,428 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:46:41,567 INFO L272 TraceCheckUtils]: 0: Hoare triple {13195#true} call ULTIMATE.init(); {13195#true} is VALID [2022-04-08 05:46:41,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {13195#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);~counter~0 := 0; {13195#true} is VALID [2022-04-08 05:46:41,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,568 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13195#true} {13195#true} #98#return; {13195#true} is VALID [2022-04-08 05:46:41,568 INFO L272 TraceCheckUtils]: 4: Hoare triple {13195#true} call #t~ret8 := main(); {13195#true} is VALID [2022-04-08 05:46:41,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {13195#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {13195#true} is VALID [2022-04-08 05:46:41,568 INFO L272 TraceCheckUtils]: 6: Hoare triple {13195#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,568 INFO L290 TraceCheckUtils]: 7: Hoare triple {13195#true} ~cond := #in~cond; {13221#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:46:41,569 INFO L290 TraceCheckUtils]: 8: Hoare triple {13221#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {13225#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:46:41,569 INFO L290 TraceCheckUtils]: 9: Hoare triple {13225#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {13225#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:46:41,569 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13225#(not (= |assume_abort_if_not_#in~cond| 0))} {13195#true} #78#return; {13232#(<= 1 main_~x~0)} is VALID [2022-04-08 05:46:41,569 INFO L272 TraceCheckUtils]: 11: Hoare triple {13232#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,570 INFO L290 TraceCheckUtils]: 12: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,570 INFO L290 TraceCheckUtils]: 13: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,570 INFO L290 TraceCheckUtils]: 14: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,570 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13195#true} {13232#(<= 1 main_~x~0)} #80#return; {13232#(<= 1 main_~x~0)} is VALID [2022-04-08 05:46:41,571 INFO L290 TraceCheckUtils]: 16: Hoare triple {13232#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,571 INFO L272 TraceCheckUtils]: 17: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,571 INFO L290 TraceCheckUtils]: 18: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,571 INFO L290 TraceCheckUtils]: 19: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,571 INFO L290 TraceCheckUtils]: 20: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,572 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13195#true} {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,572 INFO L272 TraceCheckUtils]: 22: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,572 INFO L290 TraceCheckUtils]: 23: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,572 INFO L290 TraceCheckUtils]: 24: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,572 INFO L290 TraceCheckUtils]: 25: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,573 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13195#true} {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,573 INFO L290 TraceCheckUtils]: 27: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,573 INFO L290 TraceCheckUtils]: 28: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,574 INFO L290 TraceCheckUtils]: 29: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,574 INFO L290 TraceCheckUtils]: 30: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,575 INFO L290 TraceCheckUtils]: 31: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,575 INFO L272 TraceCheckUtils]: 32: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {13195#true} is VALID [2022-04-08 05:46:41,575 INFO L290 TraceCheckUtils]: 33: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,575 INFO L290 TraceCheckUtils]: 34: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,575 INFO L290 TraceCheckUtils]: 35: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,576 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #86#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,576 INFO L272 TraceCheckUtils]: 37: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {13195#true} is VALID [2022-04-08 05:46:41,576 INFO L290 TraceCheckUtils]: 38: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,576 INFO L290 TraceCheckUtils]: 39: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,576 INFO L290 TraceCheckUtils]: 40: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,585 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #88#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,585 INFO L272 TraceCheckUtils]: 42: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {13195#true} is VALID [2022-04-08 05:46:41,585 INFO L290 TraceCheckUtils]: 43: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,585 INFO L290 TraceCheckUtils]: 44: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,585 INFO L290 TraceCheckUtils]: 45: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,586 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #90#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,586 INFO L272 TraceCheckUtils]: 47: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,586 INFO L290 TraceCheckUtils]: 48: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,586 INFO L290 TraceCheckUtils]: 49: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,587 INFO L290 TraceCheckUtils]: 50: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,587 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #92#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,588 INFO L290 TraceCheckUtils]: 52: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {13361#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:46:41,589 INFO L290 TraceCheckUtils]: 53: Hoare triple {13361#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,589 INFO L290 TraceCheckUtils]: 54: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,590 INFO L290 TraceCheckUtils]: 55: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,590 INFO L290 TraceCheckUtils]: 56: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,591 INFO L290 TraceCheckUtils]: 57: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,595 INFO L290 TraceCheckUtils]: 58: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,595 INFO L272 TraceCheckUtils]: 59: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,596 INFO L290 TraceCheckUtils]: 60: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,596 INFO L290 TraceCheckUtils]: 61: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,596 INFO L290 TraceCheckUtils]: 62: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,597 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {13195#true} {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,597 INFO L272 TraceCheckUtils]: 64: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,597 INFO L290 TraceCheckUtils]: 65: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-08 05:46:41,597 INFO L290 TraceCheckUtils]: 66: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-08 05:46:41,597 INFO L290 TraceCheckUtils]: 67: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-08 05:46:41,598 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {13195#true} {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,598 INFO L272 TraceCheckUtils]: 69: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13195#true} is VALID [2022-04-08 05:46:41,598 INFO L290 TraceCheckUtils]: 70: Hoare triple {13195#true} ~cond := #in~cond; {13417#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:46:41,599 INFO L290 TraceCheckUtils]: 71: Hoare triple {13417#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:46:41,599 INFO L290 TraceCheckUtils]: 72: Hoare triple {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:46:41,600 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:46:41,601 INFO L272 TraceCheckUtils]: 74: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {13431#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:46:41,601 INFO L290 TraceCheckUtils]: 75: Hoare triple {13431#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13435#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:46:41,601 INFO L290 TraceCheckUtils]: 76: Hoare triple {13435#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13196#false} is VALID [2022-04-08 05:46:41,602 INFO L290 TraceCheckUtils]: 77: Hoare triple {13196#false} assume !false; {13196#false} is VALID [2022-04-08 05:46:41,602 INFO L134 CoverageAnalysis]: Checked inductivity of 131 backedges. 31 proven. 19 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2022-04-08 05:46:41,602 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:47:38,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:47:38,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [124613113] [2022-04-08 05:47:38,439 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:47:38,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1787752201] [2022-04-08 05:47:38,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1787752201] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:47:38,439 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:47:38,439 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-04-08 05:47:38,440 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:47:38,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1829351611] [2022-04-08 05:47:38,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1829351611] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:47:38,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:47:38,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 05:47:38,440 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1665128164] [2022-04-08 05:47:38,440 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:47:38,441 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 78 [2022-04-08 05:47:38,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:47:38,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:47:38,495 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:38,495 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 05:47:38,495 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:47:38,496 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 05:47:38,496 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=175, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:47:38,496 INFO L87 Difference]: Start difference. First operand 194 states and 257 transitions. Second operand has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:47:44,116 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:44,117 INFO L93 Difference]: Finished difference Result 203 states and 265 transitions. [2022-04-08 05:47:44,117 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 05:47:44,117 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 78 [2022-04-08 05:47:44,117 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:47:44,117 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:47:44,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 97 transitions. [2022-04-08 05:47:44,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:47:44,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 97 transitions. [2022-04-08 05:47:44,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 97 transitions. [2022-04-08 05:47:44,249 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-08 05:47:44,253 INFO L225 Difference]: With dead ends: 203 [2022-04-08 05:47:44,253 INFO L226 Difference]: Without dead ends: 201 [2022-04-08 05:47:44,254 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 67 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=62, Invalid=318, Unknown=0, NotChecked=0, Total=380 [2022-04-08 05:47:44,255 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 55 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 413 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 443 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 413 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:47:44,256 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 230 Invalid, 443 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 413 Invalid, 0 Unknown, 0 Unchecked, 2.1s Time] [2022-04-08 05:47:44,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 201 states. [2022-04-08 05:47:44,636 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 201 to 198. [2022-04-08 05:47:44,637 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:47:44,637 INFO L82 GeneralOperation]: Start isEquivalent. First operand 201 states. Second operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:47:44,638 INFO L74 IsIncluded]: Start isIncluded. First operand 201 states. Second operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:47:44,638 INFO L87 Difference]: Start difference. First operand 201 states. Second operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:47:44,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:44,643 INFO L93 Difference]: Finished difference Result 201 states and 263 transitions. [2022-04-08 05:47:44,643 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 263 transitions. [2022-04-08 05:47:44,644 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:47:44,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:47:44,644 INFO L74 IsIncluded]: Start isIncluded. First operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 201 states. [2022-04-08 05:47:44,645 INFO L87 Difference]: Start difference. First operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 201 states. [2022-04-08 05:47:44,650 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:44,650 INFO L93 Difference]: Finished difference Result 201 states and 263 transitions. [2022-04-08 05:47:44,650 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 263 transitions. [2022-04-08 05:47:44,651 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:47:44,651 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:47:44,651 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:47:44,651 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:47:44,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:47:44,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 198 states to 198 states and 260 transitions. [2022-04-08 05:47:44,657 INFO L78 Accepts]: Start accepts. Automaton has 198 states and 260 transitions. Word has length 78 [2022-04-08 05:47:44,657 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:47:44,657 INFO L478 AbstractCegarLoop]: Abstraction has 198 states and 260 transitions. [2022-04-08 05:47:44,657 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:47:44,657 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 198 states and 260 transitions. [2022-04-08 05:47:44,976 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 260 edges. 260 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:44,977 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 260 transitions. [2022-04-08 05:47:44,977 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2022-04-08 05:47:44,977 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:47:44,977 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:47:44,996 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-08 05:47:45,187 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-08 05:47:45,188 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:47:45,188 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:47:45,188 INFO L85 PathProgramCache]: Analyzing trace with hash -1849570232, now seen corresponding path program 3 times [2022-04-08 05:47:45,188 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:47:45,188 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1775615950] [2022-04-08 05:47:45,188 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:47:45,189 INFO L85 PathProgramCache]: Analyzing trace with hash -1849570232, now seen corresponding path program 4 times [2022-04-08 05:47:45,189 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:47:45,189 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [940337646] [2022-04-08 05:47:45,189 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:47:45,189 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:47:45,199 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:47:45,199 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [987283054] [2022-04-08 05:47:45,199 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:47:45,200 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:47:45,200 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:47:45,201 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:47:45,215 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-08 05:47:45,261 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:47:45,261 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:47:45,262 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 05:47:45,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:47:45,284 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:47:46,093 INFO L272 TraceCheckUtils]: 0: Hoare triple {14672#true} call ULTIMATE.init(); {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L290 TraceCheckUtils]: 1: Hoare triple {14672#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);~counter~0 := 0; {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14672#true} {14672#true} #98#return; {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L272 TraceCheckUtils]: 4: Hoare triple {14672#true} call #t~ret8 := main(); {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {14672#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L272 TraceCheckUtils]: 6: Hoare triple {14672#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L290 TraceCheckUtils]: 7: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L290 TraceCheckUtils]: 8: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L290 TraceCheckUtils]: 9: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,094 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14672#true} {14672#true} #78#return; {14672#true} is VALID [2022-04-08 05:47:46,095 INFO L272 TraceCheckUtils]: 11: Hoare triple {14672#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,095 INFO L290 TraceCheckUtils]: 12: Hoare triple {14672#true} ~cond := #in~cond; {14713#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:47:46,095 INFO L290 TraceCheckUtils]: 13: Hoare triple {14713#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {14717#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:47:46,095 INFO L290 TraceCheckUtils]: 14: Hoare triple {14717#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {14717#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:47:46,096 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14717#(not (= |assume_abort_if_not_#in~cond| 0))} {14672#true} #80#return; {14724#(<= 1 main_~y~0)} is VALID [2022-04-08 05:47:46,096 INFO L290 TraceCheckUtils]: 16: Hoare triple {14724#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {14728#(<= 1 main_~b~0)} is VALID [2022-04-08 05:47:46,096 INFO L272 TraceCheckUtils]: 17: Hoare triple {14728#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,096 INFO L290 TraceCheckUtils]: 18: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,096 INFO L290 TraceCheckUtils]: 19: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,097 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14672#true} {14728#(<= 1 main_~b~0)} #82#return; {14728#(<= 1 main_~b~0)} is VALID [2022-04-08 05:47:46,097 INFO L272 TraceCheckUtils]: 22: Hoare triple {14728#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,097 INFO L290 TraceCheckUtils]: 24: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,097 INFO L290 TraceCheckUtils]: 25: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,098 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14672#true} {14728#(<= 1 main_~b~0)} #84#return; {14728#(<= 1 main_~b~0)} is VALID [2022-04-08 05:47:46,098 INFO L290 TraceCheckUtils]: 27: Hoare triple {14728#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14728#(<= 1 main_~b~0)} is VALID [2022-04-08 05:47:46,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {14728#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {14728#(<= 1 main_~b~0)} is VALID [2022-04-08 05:47:46,098 INFO L290 TraceCheckUtils]: 29: Hoare triple {14728#(<= 1 main_~b~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,099 INFO L290 TraceCheckUtils]: 30: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 20);havoc #t~post7; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,099 INFO L272 TraceCheckUtils]: 32: Hoare triple {14768#(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)); {14672#true} is VALID [2022-04-08 05:47:46,099 INFO L290 TraceCheckUtils]: 33: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,099 INFO L290 TraceCheckUtils]: 34: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,100 INFO L290 TraceCheckUtils]: 35: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,100 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #86#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,100 INFO L272 TraceCheckUtils]: 37: Hoare triple {14768#(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)); {14672#true} is VALID [2022-04-08 05:47:46,100 INFO L290 TraceCheckUtils]: 38: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,100 INFO L290 TraceCheckUtils]: 39: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,100 INFO L290 TraceCheckUtils]: 40: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,108 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #88#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,108 INFO L272 TraceCheckUtils]: 42: Hoare triple {14768#(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)); {14672#true} is VALID [2022-04-08 05:47:46,108 INFO L290 TraceCheckUtils]: 43: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,108 INFO L290 TraceCheckUtils]: 44: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,108 INFO L290 TraceCheckUtils]: 45: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,109 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #90#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,109 INFO L272 TraceCheckUtils]: 47: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,110 INFO L290 TraceCheckUtils]: 48: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,110 INFO L290 TraceCheckUtils]: 49: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,110 INFO L290 TraceCheckUtils]: 50: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,111 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #92#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,112 INFO L290 TraceCheckUtils]: 52: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,112 INFO L290 TraceCheckUtils]: 53: Hoare triple {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,113 INFO L290 TraceCheckUtils]: 54: Hoare triple {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} assume !!(#t~post7 < 20);havoc #t~post7; {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,113 INFO L272 TraceCheckUtils]: 55: Hoare triple {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,113 INFO L290 TraceCheckUtils]: 56: Hoare triple {14672#true} ~cond := #in~cond; {14851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:47:46,114 INFO L290 TraceCheckUtils]: 57: Hoare triple {14851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:47:46,114 INFO L290 TraceCheckUtils]: 58: Hoare triple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:47:46,127 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #86#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,127 INFO L272 TraceCheckUtils]: 60: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,127 INFO L290 TraceCheckUtils]: 61: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,127 INFO L290 TraceCheckUtils]: 62: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,127 INFO L290 TraceCheckUtils]: 63: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,128 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14672#true} {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #88#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,128 INFO L272 TraceCheckUtils]: 65: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,128 INFO L290 TraceCheckUtils]: 66: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,128 INFO L290 TraceCheckUtils]: 67: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,128 INFO L290 TraceCheckUtils]: 68: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,129 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {14672#true} {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #90#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,129 INFO L272 TraceCheckUtils]: 70: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:46,129 INFO L290 TraceCheckUtils]: 71: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:46,129 INFO L290 TraceCheckUtils]: 72: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:46,129 INFO L290 TraceCheckUtils]: 73: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:46,130 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14672#true} {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #92#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,132 INFO L290 TraceCheckUtils]: 75: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,132 INFO L290 TraceCheckUtils]: 76: Hoare triple {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,132 INFO L290 TraceCheckUtils]: 77: Hoare triple {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} assume !!(#t~post7 < 20);havoc #t~post7; {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} is VALID [2022-04-08 05:47:46,133 INFO L272 TraceCheckUtils]: 78: Hoare triple {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:47:46,134 INFO L290 TraceCheckUtils]: 79: Hoare triple {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14925#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:47:46,134 INFO L290 TraceCheckUtils]: 80: Hoare triple {14925#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14673#false} is VALID [2022-04-08 05:47:46,134 INFO L290 TraceCheckUtils]: 81: Hoare triple {14673#false} assume !false; {14673#false} is VALID [2022-04-08 05:47:46,134 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 30 proven. 29 refuted. 0 times theorem prover too weak. 106 trivial. 0 not checked. [2022-04-08 05:47:46,134 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:47:52,619 INFO L290 TraceCheckUtils]: 81: Hoare triple {14673#false} assume !false; {14673#false} is VALID [2022-04-08 05:47:52,620 INFO L290 TraceCheckUtils]: 80: Hoare triple {14925#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14673#false} is VALID [2022-04-08 05:47:52,620 INFO L290 TraceCheckUtils]: 79: Hoare triple {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14925#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:47:52,621 INFO L272 TraceCheckUtils]: 78: Hoare triple {14941#(= 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)); {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:47:52,621 INFO L290 TraceCheckUtils]: 77: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:47:52,621 INFO L290 TraceCheckUtils]: 76: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:47:52,623 INFO L290 TraceCheckUtils]: 75: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:47:52,624 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14672#true} {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #92#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:47:52,624 INFO L290 TraceCheckUtils]: 73: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,624 INFO L290 TraceCheckUtils]: 72: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,624 INFO L290 TraceCheckUtils]: 71: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,624 INFO L272 TraceCheckUtils]: 70: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,625 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {14672#true} {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #90#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:47:52,625 INFO L290 TraceCheckUtils]: 68: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,625 INFO L290 TraceCheckUtils]: 67: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,625 INFO L290 TraceCheckUtils]: 66: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,625 INFO L272 TraceCheckUtils]: 65: Hoare triple {14941#(= 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)); {14672#true} is VALID [2022-04-08 05:47:52,626 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14672#true} {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #88#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:47:52,626 INFO L290 TraceCheckUtils]: 63: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,626 INFO L290 TraceCheckUtils]: 62: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,626 INFO L290 TraceCheckUtils]: 61: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,626 INFO L272 TraceCheckUtils]: 60: Hoare triple {14941#(= 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)); {14672#true} is VALID [2022-04-08 05:47:52,627 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} {14672#true} #86#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:47:52,627 INFO L290 TraceCheckUtils]: 58: Hoare triple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:47:52,627 INFO L290 TraceCheckUtils]: 57: Hoare triple {15008#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 56: Hoare triple {14672#true} ~cond := #in~cond; {15008#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:47:52,628 INFO L272 TraceCheckUtils]: 55: Hoare triple {14672#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 54: Hoare triple {14672#true} assume !!(#t~post7 < 20);havoc #t~post7; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 53: Hoare triple {14672#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 52: Hoare triple {14672#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {14672#true} {14672#true} #92#return; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 50: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 49: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 48: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L272 TraceCheckUtils]: 47: Hoare triple {14672#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14672#true} {14672#true} #90#return; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 45: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,628 INFO L290 TraceCheckUtils]: 44: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 43: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L272 TraceCheckUtils]: 42: Hoare triple {14672#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14672#true} {14672#true} #88#return; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 40: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 39: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 38: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L272 TraceCheckUtils]: 37: Hoare triple {14672#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14672#true} {14672#true} #86#return; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 35: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 34: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 33: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L272 TraceCheckUtils]: 32: Hoare triple {14672#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 31: Hoare triple {14672#true} assume !!(#t~post7 < 20);havoc #t~post7; {14672#true} is VALID [2022-04-08 05:47:52,629 INFO L290 TraceCheckUtils]: 30: Hoare triple {14672#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 29: Hoare triple {14672#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 28: Hoare triple {14672#true} assume !!(#t~post6 < 20);havoc #t~post6; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 27: Hoare triple {14672#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14672#true} {14672#true} #84#return; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 25: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 24: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 23: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L272 TraceCheckUtils]: 22: Hoare triple {14672#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14672#true} {14672#true} #82#return; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 20: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 19: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 18: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L272 TraceCheckUtils]: 17: Hoare triple {14672#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,630 INFO L290 TraceCheckUtils]: 16: Hoare triple {14672#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14672#true} {14672#true} #80#return; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 14: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 13: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 12: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L272 TraceCheckUtils]: 11: Hoare triple {14672#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14672#true} {14672#true} #78#return; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 8: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 7: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L272 TraceCheckUtils]: 6: Hoare triple {14672#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 5: Hoare triple {14672#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L272 TraceCheckUtils]: 4: Hoare triple {14672#true} call #t~ret8 := main(); {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14672#true} {14672#true} #98#return; {14672#true} is VALID [2022-04-08 05:47:52,631 INFO L290 TraceCheckUtils]: 2: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-08 05:47:52,632 INFO L290 TraceCheckUtils]: 1: Hoare triple {14672#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);~counter~0 := 0; {14672#true} is VALID [2022-04-08 05:47:52,632 INFO L272 TraceCheckUtils]: 0: Hoare triple {14672#true} call ULTIMATE.init(); {14672#true} is VALID [2022-04-08 05:47:52,632 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 37 proven. 10 refuted. 0 times theorem prover too weak. 118 trivial. 0 not checked. [2022-04-08 05:47:52,632 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:47:52,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [940337646] [2022-04-08 05:47:52,632 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:47:52,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [987283054] [2022-04-08 05:47:52,632 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [987283054] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:47:52,632 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:47:52,632 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 7] total 16 [2022-04-08 05:47:52,633 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:47:52,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1775615950] [2022-04-08 05:47:52,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1775615950] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:47:52,633 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:47:52,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 05:47:52,633 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [370841908] [2022-04-08 05:47:52,633 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:47:52,634 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 82 [2022-04-08 05:47:52,634 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:47:52,634 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:47:52,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:52,679 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 05:47:52,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:47:52,680 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 05:47:52,680 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=199, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:47:52,680 INFO L87 Difference]: Start difference. First operand 198 states and 260 transitions. Second operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:47:55,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:55,685 INFO L93 Difference]: Finished difference Result 212 states and 278 transitions. [2022-04-08 05:47:55,685 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 05:47:55,686 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 82 [2022-04-08 05:47:55,686 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:47:55,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:47:55,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 106 transitions. [2022-04-08 05:47:55,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:47:55,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 106 transitions. [2022-04-08 05:47:55,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 106 transitions. [2022-04-08 05:47:55,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:55,812 INFO L225 Difference]: With dead ends: 212 [2022-04-08 05:47:55,812 INFO L226 Difference]: Without dead ends: 210 [2022-04-08 05:47:55,812 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 170 GetRequests, 147 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=84, Invalid=422, Unknown=0, NotChecked=0, Total=506 [2022-04-08 05:47:55,813 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 55 mSDsluCounter, 183 mSDsCounter, 0 mSdLazyCounter, 457 mSolverCounterSat, 51 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 223 SdHoareTripleChecker+Invalid, 508 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 51 IncrementalHoareTripleChecker+Valid, 457 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:47:55,813 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 223 Invalid, 508 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [51 Valid, 457 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-04-08 05:47:55,814 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 210 states. [2022-04-08 05:47:56,199 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 210 to 203. [2022-04-08 05:47:56,199 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:47:56,199 INFO L82 GeneralOperation]: Start isEquivalent. First operand 210 states. Second operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:56,200 INFO L74 IsIncluded]: Start isIncluded. First operand 210 states. Second operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:56,200 INFO L87 Difference]: Start difference. First operand 210 states. Second operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:56,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:56,206 INFO L93 Difference]: Finished difference Result 210 states and 276 transitions. [2022-04-08 05:47:56,206 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 276 transitions. [2022-04-08 05:47:56,207 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:47:56,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:47:56,207 INFO L74 IsIncluded]: Start isIncluded. First operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-08 05:47:56,207 INFO L87 Difference]: Start difference. First operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-08 05:47:56,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:56,213 INFO L93 Difference]: Finished difference Result 210 states and 276 transitions. [2022-04-08 05:47:56,213 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 276 transitions. [2022-04-08 05:47:56,213 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:47:56,214 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:47:56,214 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:47:56,214 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:47:56,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:56,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 203 states to 203 states and 265 transitions. [2022-04-08 05:47:56,220 INFO L78 Accepts]: Start accepts. Automaton has 203 states and 265 transitions. Word has length 82 [2022-04-08 05:47:56,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:47:56,220 INFO L478 AbstractCegarLoop]: Abstraction has 203 states and 265 transitions. [2022-04-08 05:47:56,220 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:47:56,220 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 203 states and 265 transitions. [2022-04-08 05:47:56,623 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 265 edges. 265 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:56,623 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 265 transitions. [2022-04-08 05:47:56,624 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-08 05:47:56,624 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:47:56,624 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:47:56,648 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-08 05:47:56,825 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-08 05:47:56,825 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:47:56,825 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:47:56,825 INFO L85 PathProgramCache]: Analyzing trace with hash 1768368813, now seen corresponding path program 1 times [2022-04-08 05:47:56,825 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:47:56,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1922095413] [2022-04-08 05:47:56,826 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:47:56,826 INFO L85 PathProgramCache]: Analyzing trace with hash 1768368813, now seen corresponding path program 2 times [2022-04-08 05:47:56,826 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:47:56,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1735564954] [2022-04-08 05:47:56,826 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:47:56,827 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:47:56,841 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:47:56,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1443966835] [2022-04-08 05:47:56,841 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:47:56,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:47:56,841 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:47:56,842 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:47:56,866 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-08 05:47:56,902 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:47:56,902 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:47:56,903 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 05:47:56,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:47:56,918 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:47:57,245 INFO L272 TraceCheckUtils]: 0: Hoare triple {16443#true} call ULTIMATE.init(); {16443#true} is VALID [2022-04-08 05:47:57,246 INFO L290 TraceCheckUtils]: 1: Hoare triple {16443#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);~counter~0 := 0; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,246 INFO L290 TraceCheckUtils]: 2: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,246 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16451#(<= ~counter~0 0)} {16443#true} #98#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,247 INFO L272 TraceCheckUtils]: 4: Hoare triple {16451#(<= ~counter~0 0)} call #t~ret8 := main(); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,247 INFO L290 TraceCheckUtils]: 5: Hoare triple {16451#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,248 INFO L272 TraceCheckUtils]: 6: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,248 INFO L290 TraceCheckUtils]: 7: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,248 INFO L290 TraceCheckUtils]: 8: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,249 INFO L290 TraceCheckUtils]: 9: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,249 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #78#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,250 INFO L272 TraceCheckUtils]: 11: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,250 INFO L290 TraceCheckUtils]: 12: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,250 INFO L290 TraceCheckUtils]: 13: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,251 INFO L290 TraceCheckUtils]: 14: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,251 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #80#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,251 INFO L290 TraceCheckUtils]: 16: Hoare triple {16451#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,252 INFO L272 TraceCheckUtils]: 17: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,252 INFO L290 TraceCheckUtils]: 18: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,253 INFO L290 TraceCheckUtils]: 19: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,253 INFO L290 TraceCheckUtils]: 20: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,253 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #82#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,254 INFO L272 TraceCheckUtils]: 22: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,254 INFO L290 TraceCheckUtils]: 23: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,255 INFO L290 TraceCheckUtils]: 24: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,255 INFO L290 TraceCheckUtils]: 25: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,255 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #84#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-08 05:47:57,256 INFO L290 TraceCheckUtils]: 27: Hoare triple {16451#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16530#(<= ~counter~0 1)} is VALID [2022-04-08 05:47:57,257 INFO L290 TraceCheckUtils]: 28: Hoare triple {16530#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {16530#(<= ~counter~0 1)} is VALID [2022-04-08 05:47:57,257 INFO L290 TraceCheckUtils]: 29: Hoare triple {16530#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16530#(<= ~counter~0 1)} is VALID [2022-04-08 05:47:57,258 INFO L290 TraceCheckUtils]: 30: Hoare triple {16530#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,258 INFO L290 TraceCheckUtils]: 31: Hoare triple {16540#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,259 INFO L272 TraceCheckUtils]: 32: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,259 INFO L290 TraceCheckUtils]: 33: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,259 INFO L290 TraceCheckUtils]: 34: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,260 INFO L290 TraceCheckUtils]: 35: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,261 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #86#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,261 INFO L272 TraceCheckUtils]: 37: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,262 INFO L290 TraceCheckUtils]: 38: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,262 INFO L290 TraceCheckUtils]: 39: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,263 INFO L290 TraceCheckUtils]: 40: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,263 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #88#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,264 INFO L272 TraceCheckUtils]: 42: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,264 INFO L290 TraceCheckUtils]: 43: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,265 INFO L290 TraceCheckUtils]: 44: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,265 INFO L290 TraceCheckUtils]: 45: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,266 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #90#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,267 INFO L272 TraceCheckUtils]: 47: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,267 INFO L290 TraceCheckUtils]: 48: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,268 INFO L290 TraceCheckUtils]: 49: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,268 INFO L290 TraceCheckUtils]: 50: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,269 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #92#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,269 INFO L290 TraceCheckUtils]: 52: Hoare triple {16540#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16540#(<= ~counter~0 2)} is VALID [2022-04-08 05:47:57,270 INFO L290 TraceCheckUtils]: 53: Hoare triple {16540#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,270 INFO L290 TraceCheckUtils]: 54: Hoare triple {16610#(<= ~counter~0 3)} assume !!(#t~post7 < 20);havoc #t~post7; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,271 INFO L272 TraceCheckUtils]: 55: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,271 INFO L290 TraceCheckUtils]: 56: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,271 INFO L290 TraceCheckUtils]: 57: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,271 INFO L290 TraceCheckUtils]: 58: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,272 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #86#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,272 INFO L272 TraceCheckUtils]: 60: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,273 INFO L290 TraceCheckUtils]: 61: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,273 INFO L290 TraceCheckUtils]: 62: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,273 INFO L290 TraceCheckUtils]: 63: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,274 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #88#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,274 INFO L272 TraceCheckUtils]: 65: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,275 INFO L290 TraceCheckUtils]: 66: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,275 INFO L290 TraceCheckUtils]: 67: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,275 INFO L290 TraceCheckUtils]: 68: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,276 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #90#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,276 INFO L272 TraceCheckUtils]: 70: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,277 INFO L290 TraceCheckUtils]: 71: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,277 INFO L290 TraceCheckUtils]: 72: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,277 INFO L290 TraceCheckUtils]: 73: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,278 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #92#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,278 INFO L290 TraceCheckUtils]: 75: Hoare triple {16610#(<= ~counter~0 3)} assume !(~c~0 >= ~b~0); {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,278 INFO L290 TraceCheckUtils]: 76: Hoare triple {16610#(<= ~counter~0 3)} ~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; {16610#(<= ~counter~0 3)} is VALID [2022-04-08 05:47:57,279 INFO L290 TraceCheckUtils]: 77: Hoare triple {16610#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16683#(<= |main_#t~post6| 3)} is VALID [2022-04-08 05:47:57,279 INFO L290 TraceCheckUtils]: 78: Hoare triple {16683#(<= |main_#t~post6| 3)} assume !(#t~post6 < 20);havoc #t~post6; {16444#false} is VALID [2022-04-08 05:47:57,279 INFO L272 TraceCheckUtils]: 79: Hoare triple {16444#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {16444#false} is VALID [2022-04-08 05:47:57,279 INFO L290 TraceCheckUtils]: 80: Hoare triple {16444#false} ~cond := #in~cond; {16444#false} is VALID [2022-04-08 05:47:57,279 INFO L290 TraceCheckUtils]: 81: Hoare triple {16444#false} assume 0 == ~cond; {16444#false} is VALID [2022-04-08 05:47:57,279 INFO L290 TraceCheckUtils]: 82: Hoare triple {16444#false} assume !false; {16444#false} is VALID [2022-04-08 05:47:57,280 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 16 proven. 73 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-08 05:47:57,280 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:47:57,615 INFO L290 TraceCheckUtils]: 82: Hoare triple {16444#false} assume !false; {16444#false} is VALID [2022-04-08 05:47:57,615 INFO L290 TraceCheckUtils]: 81: Hoare triple {16444#false} assume 0 == ~cond; {16444#false} is VALID [2022-04-08 05:47:57,615 INFO L290 TraceCheckUtils]: 80: Hoare triple {16444#false} ~cond := #in~cond; {16444#false} is VALID [2022-04-08 05:47:57,615 INFO L272 TraceCheckUtils]: 79: Hoare triple {16444#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {16444#false} is VALID [2022-04-08 05:47:57,615 INFO L290 TraceCheckUtils]: 78: Hoare triple {16711#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {16444#false} is VALID [2022-04-08 05:47:57,616 INFO L290 TraceCheckUtils]: 77: Hoare triple {16715#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16711#(< |main_#t~post6| 20)} is VALID [2022-04-08 05:47:57,616 INFO L290 TraceCheckUtils]: 76: Hoare triple {16715#(< ~counter~0 20)} ~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; {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,616 INFO L290 TraceCheckUtils]: 75: Hoare triple {16715#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,617 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {16443#true} {16715#(< ~counter~0 20)} #92#return; {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,617 INFO L290 TraceCheckUtils]: 73: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,617 INFO L290 TraceCheckUtils]: 72: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,617 INFO L290 TraceCheckUtils]: 71: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,617 INFO L272 TraceCheckUtils]: 70: Hoare triple {16715#(< ~counter~0 20)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,618 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {16443#true} {16715#(< ~counter~0 20)} #90#return; {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,618 INFO L290 TraceCheckUtils]: 68: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,618 INFO L290 TraceCheckUtils]: 67: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,618 INFO L290 TraceCheckUtils]: 66: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,618 INFO L272 TraceCheckUtils]: 65: Hoare triple {16715#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,619 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16443#true} {16715#(< ~counter~0 20)} #88#return; {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,619 INFO L290 TraceCheckUtils]: 63: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,619 INFO L290 TraceCheckUtils]: 62: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,619 INFO L290 TraceCheckUtils]: 61: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,619 INFO L272 TraceCheckUtils]: 60: Hoare triple {16715#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,619 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16443#true} {16715#(< ~counter~0 20)} #86#return; {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,619 INFO L290 TraceCheckUtils]: 58: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,619 INFO L290 TraceCheckUtils]: 57: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,620 INFO L290 TraceCheckUtils]: 56: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,620 INFO L272 TraceCheckUtils]: 55: Hoare triple {16715#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,620 INFO L290 TraceCheckUtils]: 54: Hoare triple {16715#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,621 INFO L290 TraceCheckUtils]: 53: Hoare triple {16788#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16715#(< ~counter~0 20)} is VALID [2022-04-08 05:47:57,621 INFO L290 TraceCheckUtils]: 52: Hoare triple {16788#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16788#(< ~counter~0 19)} is VALID [2022-04-08 05:47:57,622 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {16443#true} {16788#(< ~counter~0 19)} #92#return; {16788#(< ~counter~0 19)} is VALID [2022-04-08 05:47:57,622 INFO L290 TraceCheckUtils]: 50: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,622 INFO L290 TraceCheckUtils]: 49: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,622 INFO L290 TraceCheckUtils]: 48: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,622 INFO L272 TraceCheckUtils]: 47: Hoare triple {16788#(< ~counter~0 19)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,622 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16443#true} {16788#(< ~counter~0 19)} #90#return; {16788#(< ~counter~0 19)} is VALID [2022-04-08 05:47:57,622 INFO L290 TraceCheckUtils]: 45: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,622 INFO L290 TraceCheckUtils]: 44: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,623 INFO L290 TraceCheckUtils]: 43: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,623 INFO L272 TraceCheckUtils]: 42: Hoare triple {16788#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,623 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16443#true} {16788#(< ~counter~0 19)} #88#return; {16788#(< ~counter~0 19)} is VALID [2022-04-08 05:47:57,623 INFO L290 TraceCheckUtils]: 40: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,623 INFO L290 TraceCheckUtils]: 39: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,623 INFO L290 TraceCheckUtils]: 38: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,623 INFO L272 TraceCheckUtils]: 37: Hoare triple {16788#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,624 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16443#true} {16788#(< ~counter~0 19)} #86#return; {16788#(< ~counter~0 19)} is VALID [2022-04-08 05:47:57,624 INFO L290 TraceCheckUtils]: 35: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,624 INFO L290 TraceCheckUtils]: 34: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,624 INFO L290 TraceCheckUtils]: 33: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,624 INFO L272 TraceCheckUtils]: 32: Hoare triple {16788#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,625 INFO L290 TraceCheckUtils]: 31: Hoare triple {16788#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {16788#(< ~counter~0 19)} is VALID [2022-04-08 05:47:57,625 INFO L290 TraceCheckUtils]: 30: Hoare triple {16858#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16788#(< ~counter~0 19)} is VALID [2022-04-08 05:47:57,625 INFO L290 TraceCheckUtils]: 29: Hoare triple {16858#(< ~counter~0 18)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16858#(< ~counter~0 18)} is VALID [2022-04-08 05:47:57,626 INFO L290 TraceCheckUtils]: 28: Hoare triple {16858#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {16858#(< ~counter~0 18)} is VALID [2022-04-08 05:47:57,626 INFO L290 TraceCheckUtils]: 27: Hoare triple {16868#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16858#(< ~counter~0 18)} is VALID [2022-04-08 05:47:57,626 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16443#true} {16868#(< ~counter~0 17)} #84#return; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,627 INFO L290 TraceCheckUtils]: 25: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,627 INFO L290 TraceCheckUtils]: 24: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,627 INFO L290 TraceCheckUtils]: 23: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,627 INFO L272 TraceCheckUtils]: 22: Hoare triple {16868#(< ~counter~0 17)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,627 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16443#true} {16868#(< ~counter~0 17)} #82#return; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,627 INFO L290 TraceCheckUtils]: 20: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,627 INFO L290 TraceCheckUtils]: 19: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,627 INFO L290 TraceCheckUtils]: 18: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,627 INFO L272 TraceCheckUtils]: 17: Hoare triple {16868#(< ~counter~0 17)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,628 INFO L290 TraceCheckUtils]: 16: Hoare triple {16868#(< ~counter~0 17)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,628 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16443#true} {16868#(< ~counter~0 17)} #80#return; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,628 INFO L290 TraceCheckUtils]: 14: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,628 INFO L290 TraceCheckUtils]: 13: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,628 INFO L290 TraceCheckUtils]: 12: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,628 INFO L272 TraceCheckUtils]: 11: Hoare triple {16868#(< ~counter~0 17)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,629 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16443#true} {16868#(< ~counter~0 17)} #78#return; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,629 INFO L290 TraceCheckUtils]: 9: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-08 05:47:57,629 INFO L290 TraceCheckUtils]: 8: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-08 05:47:57,629 INFO L290 TraceCheckUtils]: 7: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-08 05:47:57,629 INFO L272 TraceCheckUtils]: 6: Hoare triple {16868#(< ~counter~0 17)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16443#true} is VALID [2022-04-08 05:47:57,629 INFO L290 TraceCheckUtils]: 5: Hoare triple {16868#(< ~counter~0 17)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,630 INFO L272 TraceCheckUtils]: 4: Hoare triple {16868#(< ~counter~0 17)} call #t~ret8 := main(); {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,630 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16868#(< ~counter~0 17)} {16443#true} #98#return; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,630 INFO L290 TraceCheckUtils]: 2: Hoare triple {16868#(< ~counter~0 17)} assume true; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,631 INFO L290 TraceCheckUtils]: 1: Hoare triple {16443#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);~counter~0 := 0; {16868#(< ~counter~0 17)} is VALID [2022-04-08 05:47:57,631 INFO L272 TraceCheckUtils]: 0: Hoare triple {16443#true} call ULTIMATE.init(); {16443#true} is VALID [2022-04-08 05:47:57,631 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-08 05:47:57,631 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:47:57,631 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1735564954] [2022-04-08 05:47:57,631 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:47:57,631 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1443966835] [2022-04-08 05:47:57,631 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1443966835] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:47:57,632 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:47:57,632 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 05:47:57,632 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:47:57,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1922095413] [2022-04-08 05:47:57,632 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1922095413] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:47:57,632 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:47:57,632 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:47:57,632 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [548626430] [2022-04-08 05:47:57,632 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:47:57,633 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-08 05:47:57,633 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:47:57,633 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:47:57,676 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:57,676 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:47:57,676 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:47:57,676 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:47:57,676 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:47:57,676 INFO L87 Difference]: Start difference. First operand 203 states and 265 transitions. Second operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:47:58,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:58,235 INFO L93 Difference]: Finished difference Result 214 states and 277 transitions. [2022-04-08 05:47:58,235 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:47:58,235 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-08 05:47:58,235 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:47:58,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:47:58,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-08 05:47:58,237 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:47:58,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-08 05:47:58,238 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-04-08 05:47:58,332 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:58,336 INFO L225 Difference]: With dead ends: 214 [2022-04-08 05:47:58,336 INFO L226 Difference]: Without dead ends: 206 [2022-04-08 05:47:58,336 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 167 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:47:58,337 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 18 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 67 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:47:58,337 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 160 Invalid, 67 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:47:58,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2022-04-08 05:47:58,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 206. [2022-04-08 05:47:58,725 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:47:58,725 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:58,726 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:58,726 INFO L87 Difference]: Start difference. First operand 206 states. Second operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:58,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:58,731 INFO L93 Difference]: Finished difference Result 206 states and 268 transitions. [2022-04-08 05:47:58,731 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 268 transitions. [2022-04-08 05:47:58,732 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:47:58,732 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:47:58,732 INFO L74 IsIncluded]: Start isIncluded. First operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 206 states. [2022-04-08 05:47:58,733 INFO L87 Difference]: Start difference. First operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 206 states. [2022-04-08 05:47:58,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:47:58,737 INFO L93 Difference]: Finished difference Result 206 states and 268 transitions. [2022-04-08 05:47:58,738 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 268 transitions. [2022-04-08 05:47:58,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:47:58,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:47:58,738 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:47:58,738 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:47:58,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-08 05:47:58,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 206 states to 206 states and 268 transitions. [2022-04-08 05:47:58,745 INFO L78 Accepts]: Start accepts. Automaton has 206 states and 268 transitions. Word has length 83 [2022-04-08 05:47:58,745 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:47:58,745 INFO L478 AbstractCegarLoop]: Abstraction has 206 states and 268 transitions. [2022-04-08 05:47:58,746 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:47:58,746 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 206 states and 268 transitions. [2022-04-08 05:47:59,101 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 268 edges. 268 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:47:59,101 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 268 transitions. [2022-04-08 05:47:59,101 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 85 [2022-04-08 05:47:59,101 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:47:59,101 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:47:59,118 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-08 05:47:59,303 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-08 05:47:59,303 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:47:59,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:47:59,304 INFO L85 PathProgramCache]: Analyzing trace with hash -1017110725, now seen corresponding path program 1 times [2022-04-08 05:47:59,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:47:59,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [722883056] [2022-04-08 05:47:59,304 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:47:59,304 INFO L85 PathProgramCache]: Analyzing trace with hash -1017110725, now seen corresponding path program 2 times [2022-04-08 05:47:59,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:47:59,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1885364755] [2022-04-08 05:47:59,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:47:59,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:47:59,324 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:47:59,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [278154886] [2022-04-08 05:47:59,324 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:47:59,324 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:47:59,325 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:47:59,325 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:47:59,334 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-08 05:47:59,387 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:47:59,387 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:47:59,388 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-08 05:47:59,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:47:59,403 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:47:59,983 INFO L272 TraceCheckUtils]: 0: Hoare triple {18208#true} call ULTIMATE.init(); {18208#true} is VALID [2022-04-08 05:47:59,983 INFO L290 TraceCheckUtils]: 1: Hoare triple {18208#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);~counter~0 := 0; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18208#true} {18208#true} #98#return; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {18208#true} call #t~ret8 := main(); {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {18208#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L272 TraceCheckUtils]: 6: Hoare triple {18208#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L290 TraceCheckUtils]: 7: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L290 TraceCheckUtils]: 8: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L290 TraceCheckUtils]: 9: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18208#true} {18208#true} #78#return; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L272 TraceCheckUtils]: 11: Hoare triple {18208#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L290 TraceCheckUtils]: 12: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,984 INFO L290 TraceCheckUtils]: 13: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,985 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18208#true} {18208#true} #80#return; {18208#true} is VALID [2022-04-08 05:47:59,985 INFO L290 TraceCheckUtils]: 16: Hoare triple {18208#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {18261#(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-08 05:47:59,985 INFO L272 TraceCheckUtils]: 17: Hoare triple {18261#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:47:59,986 INFO L290 TraceCheckUtils]: 18: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,986 INFO L290 TraceCheckUtils]: 19: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,986 INFO L290 TraceCheckUtils]: 20: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,986 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18208#true} {18261#(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))} #82#return; {18261#(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-08 05:47:59,986 INFO L272 TraceCheckUtils]: 22: Hoare triple {18261#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:47:59,986 INFO L290 TraceCheckUtils]: 23: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,987 INFO L290 TraceCheckUtils]: 24: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,987 INFO L290 TraceCheckUtils]: 25: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,987 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18208#true} {18261#(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))} #84#return; {18261#(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-08 05:47:59,988 INFO L290 TraceCheckUtils]: 27: Hoare triple {18261#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18261#(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-08 05:47:59,988 INFO L290 TraceCheckUtils]: 28: Hoare triple {18261#(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 !!(#t~post6 < 20);havoc #t~post6; {18261#(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-08 05:47:59,988 INFO L290 TraceCheckUtils]: 29: Hoare triple {18261#(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);~c~0 := ~a~0;~k~0 := 0; {18301#(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-08 05:47:59,989 INFO L290 TraceCheckUtils]: 30: Hoare triple {18301#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18301#(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-08 05:47:59,989 INFO L290 TraceCheckUtils]: 31: Hoare triple {18301#(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 !!(#t~post7 < 20);havoc #t~post7; {18301#(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-08 05:47:59,989 INFO L272 TraceCheckUtils]: 32: Hoare triple {18301#(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)); {18208#true} is VALID [2022-04-08 05:47:59,989 INFO L290 TraceCheckUtils]: 33: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,989 INFO L290 TraceCheckUtils]: 34: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,989 INFO L290 TraceCheckUtils]: 35: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,990 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18208#true} {18301#(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))} #86#return; {18301#(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-08 05:47:59,990 INFO L272 TraceCheckUtils]: 37: Hoare triple {18301#(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)); {18208#true} is VALID [2022-04-08 05:47:59,990 INFO L290 TraceCheckUtils]: 38: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,990 INFO L290 TraceCheckUtils]: 39: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,990 INFO L290 TraceCheckUtils]: 40: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,991 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18208#true} {18301#(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))} #88#return; {18301#(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-08 05:47:59,991 INFO L272 TraceCheckUtils]: 42: Hoare triple {18301#(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)); {18208#true} is VALID [2022-04-08 05:47:59,991 INFO L290 TraceCheckUtils]: 43: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,991 INFO L290 TraceCheckUtils]: 44: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,991 INFO L290 TraceCheckUtils]: 45: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,992 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18208#true} {18301#(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))} #90#return; {18301#(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-08 05:47:59,992 INFO L272 TraceCheckUtils]: 47: Hoare triple {18301#(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 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:47:59,992 INFO L290 TraceCheckUtils]: 48: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,992 INFO L290 TraceCheckUtils]: 49: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,992 INFO L290 TraceCheckUtils]: 50: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,993 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {18208#true} {18301#(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))} #92#return; {18301#(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-08 05:47:59,994 INFO L290 TraceCheckUtils]: 52: Hoare triple {18301#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,994 INFO L290 TraceCheckUtils]: 53: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,994 INFO L290 TraceCheckUtils]: 54: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,994 INFO L272 TraceCheckUtils]: 55: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:47:59,995 INFO L290 TraceCheckUtils]: 56: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,995 INFO L290 TraceCheckUtils]: 57: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,995 INFO L290 TraceCheckUtils]: 58: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,995 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #86#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,995 INFO L272 TraceCheckUtils]: 60: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= 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)); {18208#true} is VALID [2022-04-08 05:47:59,995 INFO L290 TraceCheckUtils]: 61: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,996 INFO L290 TraceCheckUtils]: 62: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,996 INFO L290 TraceCheckUtils]: 63: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,996 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #88#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,996 INFO L272 TraceCheckUtils]: 65: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= 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)); {18208#true} is VALID [2022-04-08 05:47:59,996 INFO L290 TraceCheckUtils]: 66: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,996 INFO L290 TraceCheckUtils]: 67: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,997 INFO L290 TraceCheckUtils]: 68: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,997 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #90#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,997 INFO L272 TraceCheckUtils]: 70: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:47:59,997 INFO L290 TraceCheckUtils]: 71: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:47:59,997 INFO L290 TraceCheckUtils]: 72: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:47:59,997 INFO L290 TraceCheckUtils]: 73: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:47:59,998 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #92#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,999 INFO L290 TraceCheckUtils]: 75: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:47:59,999 INFO L290 TraceCheckUtils]: 76: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 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; {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 05:47:59,999 INFO L290 TraceCheckUtils]: 77: Hoare triple {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 05:48:00,000 INFO L290 TraceCheckUtils]: 78: Hoare triple {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 05:48:00,000 INFO L290 TraceCheckUtils]: 79: Hoare triple {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {18454#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 05:48:00,001 INFO L272 TraceCheckUtils]: 80: Hoare triple {18454#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:48:00,001 INFO L290 TraceCheckUtils]: 81: Hoare triple {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:00,002 INFO L290 TraceCheckUtils]: 82: Hoare triple {18462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18209#false} is VALID [2022-04-08 05:48:00,002 INFO L290 TraceCheckUtils]: 83: Hoare triple {18209#false} assume !false; {18209#false} is VALID [2022-04-08 05:48:00,002 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 16 proven. 10 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-08 05:48:00,002 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:48:00,542 INFO L290 TraceCheckUtils]: 83: Hoare triple {18209#false} assume !false; {18209#false} is VALID [2022-04-08 05:48:00,543 INFO L290 TraceCheckUtils]: 82: Hoare triple {18462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18209#false} is VALID [2022-04-08 05:48:00,543 INFO L290 TraceCheckUtils]: 81: Hoare triple {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:00,544 INFO L272 TraceCheckUtils]: 80: Hoare triple {18478#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:48:00,544 INFO L290 TraceCheckUtils]: 79: Hoare triple {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {18478#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-08 05:48:00,545 INFO L290 TraceCheckUtils]: 78: Hoare triple {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 05:48:00,545 INFO L290 TraceCheckUtils]: 77: Hoare triple {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 05:48:01,385 INFO L290 TraceCheckUtils]: 76: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 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; {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 05:48:01,386 INFO L290 TraceCheckUtils]: 75: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} assume !(~c~0 >= ~b~0); {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,387 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #92#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,387 INFO L290 TraceCheckUtils]: 73: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,387 INFO L290 TraceCheckUtils]: 72: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,387 INFO L290 TraceCheckUtils]: 71: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,387 INFO L272 TraceCheckUtils]: 70: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,388 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #90#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,388 INFO L290 TraceCheckUtils]: 68: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,388 INFO L290 TraceCheckUtils]: 67: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,388 INFO L290 TraceCheckUtils]: 66: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,388 INFO L272 TraceCheckUtils]: 65: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,389 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #88#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,389 INFO L290 TraceCheckUtils]: 63: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,389 INFO L290 TraceCheckUtils]: 62: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,389 INFO L290 TraceCheckUtils]: 61: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,389 INFO L272 TraceCheckUtils]: 60: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,390 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #86#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,390 INFO L290 TraceCheckUtils]: 58: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,390 INFO L290 TraceCheckUtils]: 57: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,390 INFO L290 TraceCheckUtils]: 56: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,390 INFO L272 TraceCheckUtils]: 55: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,390 INFO L290 TraceCheckUtils]: 54: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} assume !!(#t~post7 < 20);havoc #t~post7; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,391 INFO L290 TraceCheckUtils]: 53: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,698 INFO L290 TraceCheckUtils]: 52: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-08 05:48:01,699 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #92#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-08 05:48:01,699 INFO L290 TraceCheckUtils]: 50: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,699 INFO L290 TraceCheckUtils]: 49: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,699 INFO L290 TraceCheckUtils]: 48: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,699 INFO L272 TraceCheckUtils]: 47: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,700 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #90#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-08 05:48:01,700 INFO L290 TraceCheckUtils]: 45: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,700 INFO L290 TraceCheckUtils]: 44: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,700 INFO L290 TraceCheckUtils]: 43: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,700 INFO L272 TraceCheckUtils]: 42: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,701 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #88#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-08 05:48:01,701 INFO L290 TraceCheckUtils]: 40: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,701 INFO L290 TraceCheckUtils]: 39: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,701 INFO L290 TraceCheckUtils]: 38: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,701 INFO L272 TraceCheckUtils]: 37: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,702 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #86#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-08 05:48:01,702 INFO L290 TraceCheckUtils]: 35: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,702 INFO L290 TraceCheckUtils]: 34: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,702 INFO L290 TraceCheckUtils]: 33: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,702 INFO L272 TraceCheckUtils]: 32: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,702 INFO L290 TraceCheckUtils]: 31: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} assume !!(#t~post7 < 20);havoc #t~post7; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-08 05:48:01,703 INFO L290 TraceCheckUtils]: 30: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-08 05:48:01,703 INFO L290 TraceCheckUtils]: 29: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-08 05:48:01,704 INFO L290 TraceCheckUtils]: 28: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post6 < 20);havoc #t~post6; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:48:01,704 INFO L290 TraceCheckUtils]: 27: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:48:01,705 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18208#true} {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #84#return; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:48:01,705 INFO L290 TraceCheckUtils]: 25: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,705 INFO L290 TraceCheckUtils]: 24: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,705 INFO L290 TraceCheckUtils]: 23: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,705 INFO L272 TraceCheckUtils]: 22: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,706 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18208#true} {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #82#return; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:48:01,706 INFO L290 TraceCheckUtils]: 20: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,706 INFO L290 TraceCheckUtils]: 19: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,706 INFO L290 TraceCheckUtils]: 18: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,706 INFO L272 TraceCheckUtils]: 17: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 16: Hoare triple {18208#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:48:01,707 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18208#true} {18208#true} #80#return; {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 14: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 13: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 12: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L272 TraceCheckUtils]: 11: Hoare triple {18208#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18208#true} {18208#true} #78#return; {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 9: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 8: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 7: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L272 TraceCheckUtils]: 6: Hoare triple {18208#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L290 TraceCheckUtils]: 5: Hoare triple {18208#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {18208#true} is VALID [2022-04-08 05:48:01,707 INFO L272 TraceCheckUtils]: 4: Hoare triple {18208#true} call #t~ret8 := main(); {18208#true} is VALID [2022-04-08 05:48:01,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18208#true} {18208#true} #98#return; {18208#true} is VALID [2022-04-08 05:48:01,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-08 05:48:01,708 INFO L290 TraceCheckUtils]: 1: Hoare triple {18208#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);~counter~0 := 0; {18208#true} is VALID [2022-04-08 05:48:01,708 INFO L272 TraceCheckUtils]: 0: Hoare triple {18208#true} call ULTIMATE.init(); {18208#true} is VALID [2022-04-08 05:48:01,708 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 16 proven. 10 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-08 05:48:01,708 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:48:01,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1885364755] [2022-04-08 05:48:01,709 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:48:01,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [278154886] [2022-04-08 05:48:01,709 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [278154886] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:48:01,709 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:48:01,709 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 05:48:01,709 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:48:01,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [722883056] [2022-04-08 05:48:01,709 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [722883056] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:48:01,709 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:48:01,709 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:48:01,709 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [603036829] [2022-04-08 05:48:01,710 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:48:01,710 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 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 84 [2022-04-08 05:48:01,710 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:48:01,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 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-08 05:48:01,761 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:01,761 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:48:01,761 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:01,761 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:48:01,761 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:48:01,762 INFO L87 Difference]: Start difference. First operand 206 states and 268 transitions. Second operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 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-08 05:48:03,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:03,223 INFO L93 Difference]: Finished difference Result 234 states and 311 transitions. [2022-04-08 05:48:03,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:48:03,224 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 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 84 [2022-04-08 05:48:03,224 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:48:03,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 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-08 05:48:03,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-08 05:48:03,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 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-08 05:48:03,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-08 05:48:03,229 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 114 transitions. [2022-04-08 05:48:03,345 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:03,351 INFO L225 Difference]: With dead ends: 234 [2022-04-08 05:48:03,351 INFO L226 Difference]: Without dead ends: 232 [2022-04-08 05:48:03,351 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 154 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=61, Invalid=245, Unknown=0, NotChecked=0, Total=306 [2022-04-08 05:48:03,352 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 25 mSDsluCounter, 247 mSDsCounter, 0 mSdLazyCounter, 313 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 307 SdHoareTripleChecker+Invalid, 334 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 313 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:48:03,352 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 307 Invalid, 334 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 313 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:48:03,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 232 states. [2022-04-08 05:48:03,703 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 232 to 229. [2022-04-08 05:48:03,703 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:48:03,703 INFO L82 GeneralOperation]: Start isEquivalent. First operand 232 states. Second operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 05:48:03,704 INFO L74 IsIncluded]: Start isIncluded. First operand 232 states. Second operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 05:48:03,704 INFO L87 Difference]: Start difference. First operand 232 states. Second operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 05:48:03,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:03,713 INFO L93 Difference]: Finished difference Result 232 states and 309 transitions. [2022-04-08 05:48:03,713 INFO L276 IsEmpty]: Start isEmpty. Operand 232 states and 309 transitions. [2022-04-08 05:48:03,714 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:03,714 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:03,715 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) Second operand 232 states. [2022-04-08 05:48:03,715 INFO L87 Difference]: Start difference. First operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) Second operand 232 states. [2022-04-08 05:48:03,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:03,724 INFO L93 Difference]: Finished difference Result 232 states and 309 transitions. [2022-04-08 05:48:03,724 INFO L276 IsEmpty]: Start isEmpty. Operand 232 states and 309 transitions. [2022-04-08 05:48:03,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:03,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:03,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:48:03,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:48:03,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 05:48:03,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 306 transitions. [2022-04-08 05:48:03,735 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 306 transitions. Word has length 84 [2022-04-08 05:48:03,735 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:48:03,736 INFO L478 AbstractCegarLoop]: Abstraction has 229 states and 306 transitions. [2022-04-08 05:48:03,736 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 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-08 05:48:03,736 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 306 transitions. [2022-04-08 05:48:04,186 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 306 edges. 306 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:04,186 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 306 transitions. [2022-04-08 05:48:04,187 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-08 05:48:04,187 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:48:04,187 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:48:04,211 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-08 05:48:04,387 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:48:04,388 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:48:04,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:48:04,388 INFO L85 PathProgramCache]: Analyzing trace with hash 1676300815, now seen corresponding path program 3 times [2022-04-08 05:48:04,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:04,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [839213459] [2022-04-08 05:48:04,389 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:48:04,389 INFO L85 PathProgramCache]: Analyzing trace with hash 1676300815, now seen corresponding path program 4 times [2022-04-08 05:48:04,389 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:48:04,389 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [838086304] [2022-04-08 05:48:04,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:48:04,389 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:48:04,407 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:48:04,408 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1566180828] [2022-04-08 05:48:04,408 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:48:04,408 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:48:04,408 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:48:04,412 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:48:04,431 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-08 05:48:04,474 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:48:04,475 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:48:04,476 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 05:48:04,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:48:04,491 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:48:04,688 INFO L272 TraceCheckUtils]: 0: Hoare triple {20123#true} call ULTIMATE.init(); {20123#true} is VALID [2022-04-08 05:48:04,688 INFO L290 TraceCheckUtils]: 1: Hoare triple {20123#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);~counter~0 := 0; {20123#true} is VALID [2022-04-08 05:48:04,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20123#true} {20123#true} #98#return; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L272 TraceCheckUtils]: 4: Hoare triple {20123#true} call #t~ret8 := main(); {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 5: Hoare triple {20123#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L272 TraceCheckUtils]: 6: Hoare triple {20123#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 7: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 8: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 9: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20123#true} {20123#true} #78#return; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L272 TraceCheckUtils]: 11: Hoare triple {20123#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 12: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 13: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 14: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20123#true} {20123#true} #80#return; {20123#true} is VALID [2022-04-08 05:48:04,689 INFO L290 TraceCheckUtils]: 16: Hoare triple {20123#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L272 TraceCheckUtils]: 17: Hoare triple {20123#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 18: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 19: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 20: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20123#true} {20123#true} #82#return; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L272 TraceCheckUtils]: 22: Hoare triple {20123#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 23: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 24: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 25: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20123#true} {20123#true} #84#return; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 27: Hoare triple {20123#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 28: Hoare triple {20123#true} assume !!(#t~post6 < 20);havoc #t~post6; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 29: Hoare triple {20123#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {20123#true} is VALID [2022-04-08 05:48:04,690 INFO L290 TraceCheckUtils]: 30: Hoare triple {20123#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 31: Hoare triple {20123#true} assume !!(#t~post7 < 20);havoc #t~post7; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L272 TraceCheckUtils]: 32: Hoare triple {20123#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 33: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 34: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 35: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {20123#true} {20123#true} #86#return; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L272 TraceCheckUtils]: 37: Hoare triple {20123#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 38: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 39: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 40: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {20123#true} {20123#true} #88#return; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L272 TraceCheckUtils]: 42: Hoare triple {20123#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 43: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,691 INFO L290 TraceCheckUtils]: 44: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L290 TraceCheckUtils]: 45: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {20123#true} {20123#true} #90#return; {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L272 TraceCheckUtils]: 47: Hoare triple {20123#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L290 TraceCheckUtils]: 48: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L290 TraceCheckUtils]: 49: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L290 TraceCheckUtils]: 50: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {20123#true} {20123#true} #92#return; {20123#true} is VALID [2022-04-08 05:48:04,692 INFO L290 TraceCheckUtils]: 52: Hoare triple {20123#true} assume !(~c~0 >= ~b~0); {20284#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:48:04,693 INFO L290 TraceCheckUtils]: 53: Hoare triple {20284#(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; {20288#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:48:04,693 INFO L290 TraceCheckUtils]: 54: Hoare triple {20288#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20288#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:48:04,693 INFO L290 TraceCheckUtils]: 55: Hoare triple {20288#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {20288#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:48:04,694 INFO L290 TraceCheckUtils]: 56: Hoare triple {20288#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:48:04,694 INFO L290 TraceCheckUtils]: 57: Hoare triple {20298#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:48:04,694 INFO L290 TraceCheckUtils]: 58: Hoare triple {20298#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:48:04,694 INFO L272 TraceCheckUtils]: 59: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,694 INFO L290 TraceCheckUtils]: 60: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,694 INFO L290 TraceCheckUtils]: 61: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,694 INFO L290 TraceCheckUtils]: 62: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,695 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #86#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:48:04,695 INFO L272 TraceCheckUtils]: 64: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,695 INFO L290 TraceCheckUtils]: 65: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,695 INFO L290 TraceCheckUtils]: 66: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,695 INFO L290 TraceCheckUtils]: 67: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,696 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #88#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:48:04,696 INFO L272 TraceCheckUtils]: 69: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,696 INFO L290 TraceCheckUtils]: 70: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,696 INFO L290 TraceCheckUtils]: 71: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,696 INFO L290 TraceCheckUtils]: 72: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,697 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #90#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:48:04,697 INFO L272 TraceCheckUtils]: 74: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20123#true} is VALID [2022-04-08 05:48:04,697 INFO L290 TraceCheckUtils]: 75: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-08 05:48:04,697 INFO L290 TraceCheckUtils]: 76: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-08 05:48:04,697 INFO L290 TraceCheckUtils]: 77: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-08 05:48:04,697 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #92#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:48:04,698 INFO L290 TraceCheckUtils]: 79: Hoare triple {20298#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {20124#false} is VALID [2022-04-08 05:48:04,698 INFO L290 TraceCheckUtils]: 80: Hoare triple {20124#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; {20124#false} is VALID [2022-04-08 05:48:04,698 INFO L290 TraceCheckUtils]: 81: Hoare triple {20124#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20124#false} is VALID [2022-04-08 05:48:04,698 INFO L290 TraceCheckUtils]: 82: Hoare triple {20124#false} assume !(#t~post6 < 20);havoc #t~post6; {20124#false} is VALID [2022-04-08 05:48:04,698 INFO L272 TraceCheckUtils]: 83: Hoare triple {20124#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {20124#false} is VALID [2022-04-08 05:48:04,698 INFO L290 TraceCheckUtils]: 84: Hoare triple {20124#false} ~cond := #in~cond; {20124#false} is VALID [2022-04-08 05:48:04,698 INFO L290 TraceCheckUtils]: 85: Hoare triple {20124#false} assume 0 == ~cond; {20124#false} is VALID [2022-04-08 05:48:04,698 INFO L290 TraceCheckUtils]: 86: Hoare triple {20124#false} assume !false; {20124#false} is VALID [2022-04-08 05:48:04,699 INFO L134 CoverageAnalysis]: Checked inductivity of 167 backedges. 31 proven. 0 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-08 05:48:04,699 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:48:04,699 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:48:04,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [838086304] [2022-04-08 05:48:04,699 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:48:04,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1566180828] [2022-04-08 05:48:04,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1566180828] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:48:04,699 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:48:04,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:48:04,700 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:48:04,700 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [839213459] [2022-04-08 05:48:04,700 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [839213459] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:48:04,700 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:48:04,700 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:48:04,700 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [579593644] [2022-04-08 05:48:04,700 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:48:04,700 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 87 [2022-04-08 05:48:04,701 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:48:04,701 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:48:04,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:04,756 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:48:04,756 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:04,757 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:48:04,757 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:48:04,757 INFO L87 Difference]: Start difference. First operand 229 states and 306 transitions. Second operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:48:05,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:05,597 INFO L93 Difference]: Finished difference Result 371 states and 532 transitions. [2022-04-08 05:48:05,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:48:05,597 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 87 [2022-04-08 05:48:05,597 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:48:05,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:48:05,599 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 110 transitions. [2022-04-08 05:48:05,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:48:05,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 110 transitions. [2022-04-08 05:48:05,601 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 110 transitions. [2022-04-08 05:48:05,700 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:05,705 INFO L225 Difference]: With dead ends: 371 [2022-04-08 05:48:05,705 INFO L226 Difference]: Without dead ends: 291 [2022-04-08 05:48:05,705 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 84 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-08 05:48:05,706 INFO L913 BasicCegarLoop]: 61 mSDtfsCounter, 12 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 172 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:48:05,706 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 172 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:48:05,707 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 291 states. [2022-04-08 05:48:06,174 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 291 to 257. [2022-04-08 05:48:06,175 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:48:06,175 INFO L82 GeneralOperation]: Start isEquivalent. First operand 291 states. Second operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:48:06,176 INFO L74 IsIncluded]: Start isIncluded. First operand 291 states. Second operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:48:06,176 INFO L87 Difference]: Start difference. First operand 291 states. Second operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:48:06,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:06,185 INFO L93 Difference]: Finished difference Result 291 states and 403 transitions. [2022-04-08 05:48:06,185 INFO L276 IsEmpty]: Start isEmpty. Operand 291 states and 403 transitions. [2022-04-08 05:48:06,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:06,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:06,187 INFO L74 IsIncluded]: Start isIncluded. First operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 291 states. [2022-04-08 05:48:06,187 INFO L87 Difference]: Start difference. First operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 291 states. [2022-04-08 05:48:06,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:06,196 INFO L93 Difference]: Finished difference Result 291 states and 403 transitions. [2022-04-08 05:48:06,196 INFO L276 IsEmpty]: Start isEmpty. Operand 291 states and 403 transitions. [2022-04-08 05:48:06,197 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:06,197 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:06,197 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:48:06,197 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:48:06,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:48:06,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 257 states to 257 states and 348 transitions. [2022-04-08 05:48:06,210 INFO L78 Accepts]: Start accepts. Automaton has 257 states and 348 transitions. Word has length 87 [2022-04-08 05:48:06,211 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:48:06,211 INFO L478 AbstractCegarLoop]: Abstraction has 257 states and 348 transitions. [2022-04-08 05:48:06,211 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:48:06,211 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 257 states and 348 transitions. [2022-04-08 05:48:06,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 348 edges. 348 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:06,660 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 348 transitions. [2022-04-08 05:48:06,663 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-08 05:48:06,663 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:48:06,664 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:48:06,691 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-04-08 05:48:06,888 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:48:06,889 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:48:06,889 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:48:06,889 INFO L85 PathProgramCache]: Analyzing trace with hash -1175887352, now seen corresponding path program 1 times [2022-04-08 05:48:06,889 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:06,889 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [613049207] [2022-04-08 05:48:06,890 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:48:06,890 INFO L85 PathProgramCache]: Analyzing trace with hash -1175887352, now seen corresponding path program 2 times [2022-04-08 05:48:06,890 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:48:06,890 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1751687191] [2022-04-08 05:48:06,890 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:48:06,890 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:48:06,900 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:48:06,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [646932347] [2022-04-08 05:48:06,901 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:48:06,901 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:48:06,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:48:06,901 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:48:06,902 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-08 05:48:06,956 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:48:06,957 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:48:06,957 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-08 05:48:06,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:48:06,973 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:48:07,214 INFO L272 TraceCheckUtils]: 0: Hoare triple {22231#true} call ULTIMATE.init(); {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {22231#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);~counter~0 := 0; {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22231#true} {22231#true} #98#return; {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L272 TraceCheckUtils]: 4: Hoare triple {22231#true} call #t~ret8 := main(); {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {22231#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L272 TraceCheckUtils]: 6: Hoare triple {22231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,214 INFO L290 TraceCheckUtils]: 8: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,215 INFO L290 TraceCheckUtils]: 9: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,215 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22231#true} {22231#true} #78#return; {22231#true} is VALID [2022-04-08 05:48:07,215 INFO L272 TraceCheckUtils]: 11: Hoare triple {22231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,215 INFO L290 TraceCheckUtils]: 12: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,215 INFO L290 TraceCheckUtils]: 13: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,215 INFO L290 TraceCheckUtils]: 14: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,215 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {22231#true} {22231#true} #80#return; {22231#true} is VALID [2022-04-08 05:48:07,216 INFO L290 TraceCheckUtils]: 16: Hoare triple {22231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,216 INFO L272 TraceCheckUtils]: 17: Hoare triple {22284#(= main_~q~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,216 INFO L290 TraceCheckUtils]: 18: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,217 INFO L290 TraceCheckUtils]: 19: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,217 INFO L290 TraceCheckUtils]: 20: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,217 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #82#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,217 INFO L272 TraceCheckUtils]: 22: Hoare triple {22284#(= main_~q~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,217 INFO L290 TraceCheckUtils]: 23: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,217 INFO L290 TraceCheckUtils]: 24: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,217 INFO L290 TraceCheckUtils]: 25: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,218 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #84#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,218 INFO L290 TraceCheckUtils]: 27: Hoare triple {22284#(= main_~q~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,218 INFO L290 TraceCheckUtils]: 28: Hoare triple {22284#(= main_~q~0 0)} assume !!(#t~post6 < 20);havoc #t~post6; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,218 INFO L290 TraceCheckUtils]: 29: Hoare triple {22284#(= main_~q~0 0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,219 INFO L290 TraceCheckUtils]: 30: Hoare triple {22284#(= main_~q~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,219 INFO L290 TraceCheckUtils]: 31: Hoare triple {22284#(= main_~q~0 0)} assume !!(#t~post7 < 20);havoc #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,219 INFO L272 TraceCheckUtils]: 32: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,219 INFO L290 TraceCheckUtils]: 33: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,219 INFO L290 TraceCheckUtils]: 34: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,219 INFO L290 TraceCheckUtils]: 35: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,220 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #86#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,220 INFO L272 TraceCheckUtils]: 37: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,220 INFO L290 TraceCheckUtils]: 38: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,220 INFO L290 TraceCheckUtils]: 39: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,220 INFO L290 TraceCheckUtils]: 40: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,221 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #88#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,221 INFO L272 TraceCheckUtils]: 42: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,221 INFO L290 TraceCheckUtils]: 43: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,221 INFO L290 TraceCheckUtils]: 44: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,221 INFO L290 TraceCheckUtils]: 45: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,221 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #90#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,222 INFO L272 TraceCheckUtils]: 47: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,222 INFO L290 TraceCheckUtils]: 48: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,222 INFO L290 TraceCheckUtils]: 49: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,222 INFO L290 TraceCheckUtils]: 50: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,222 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #92#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,223 INFO L290 TraceCheckUtils]: 52: Hoare triple {22284#(= main_~q~0 0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,223 INFO L290 TraceCheckUtils]: 53: Hoare triple {22284#(= main_~q~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,223 INFO L290 TraceCheckUtils]: 54: Hoare triple {22284#(= main_~q~0 0)} assume !!(#t~post7 < 20);havoc #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,223 INFO L272 TraceCheckUtils]: 55: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,223 INFO L290 TraceCheckUtils]: 56: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,223 INFO L290 TraceCheckUtils]: 57: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,223 INFO L290 TraceCheckUtils]: 58: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,224 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #86#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,224 INFO L272 TraceCheckUtils]: 60: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,224 INFO L290 TraceCheckUtils]: 61: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,224 INFO L290 TraceCheckUtils]: 62: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,224 INFO L290 TraceCheckUtils]: 63: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,225 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #88#return; {22284#(= main_~q~0 0)} is VALID [2022-04-08 05:48:07,225 INFO L272 TraceCheckUtils]: 65: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,225 INFO L290 TraceCheckUtils]: 66: Hoare triple {22231#true} ~cond := #in~cond; {22435#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:07,225 INFO L290 TraceCheckUtils]: 67: Hoare triple {22435#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:07,226 INFO L290 TraceCheckUtils]: 68: Hoare triple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:07,226 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} {22284#(= main_~q~0 0)} #90#return; {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-08 05:48:07,226 INFO L272 TraceCheckUtils]: 70: Hoare triple {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,227 INFO L290 TraceCheckUtils]: 71: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,227 INFO L290 TraceCheckUtils]: 72: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,227 INFO L290 TraceCheckUtils]: 73: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,227 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {22231#true} {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} #92#return; {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-08 05:48:07,228 INFO L290 TraceCheckUtils]: 75: Hoare triple {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-08 05:48:07,228 INFO L290 TraceCheckUtils]: 76: Hoare triple {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 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; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:48:07,228 INFO L290 TraceCheckUtils]: 77: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:48:07,229 INFO L290 TraceCheckUtils]: 78: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post6 < 20);havoc #t~post6; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:48:07,229 INFO L290 TraceCheckUtils]: 79: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(0 != ~b~0); {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:48:07,229 INFO L272 TraceCheckUtils]: 80: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:07,229 INFO L290 TraceCheckUtils]: 81: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:07,229 INFO L290 TraceCheckUtils]: 82: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:07,230 INFO L290 TraceCheckUtils]: 83: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:07,230 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22231#true} {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #94#return; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:48:07,231 INFO L272 TraceCheckUtils]: 85: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~p~0 * ~x~0 + ~r~0 * ~y~0 == ~a~0 then 1 else 0)); {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:48:07,231 INFO L290 TraceCheckUtils]: 86: Hoare triple {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22500#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:07,231 INFO L290 TraceCheckUtils]: 87: Hoare triple {22500#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22232#false} is VALID [2022-04-08 05:48:07,231 INFO L290 TraceCheckUtils]: 88: Hoare triple {22232#false} assume !false; {22232#false} is VALID [2022-04-08 05:48:07,232 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 37 proven. 10 refuted. 0 times theorem prover too weak. 149 trivial. 0 not checked. [2022-04-08 05:48:07,232 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:48:26,859 INFO L290 TraceCheckUtils]: 88: Hoare triple {22232#false} assume !false; {22232#false} is VALID [2022-04-08 05:48:26,859 INFO L290 TraceCheckUtils]: 87: Hoare triple {22500#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22232#false} is VALID [2022-04-08 05:48:26,860 INFO L290 TraceCheckUtils]: 86: Hoare triple {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22500#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:26,860 INFO L272 TraceCheckUtils]: 85: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 + ~r~0 * ~y~0 == ~a~0 then 1 else 0)); {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:48:26,861 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22231#true} {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #94#return; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:48:26,861 INFO L290 TraceCheckUtils]: 83: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,861 INFO L290 TraceCheckUtils]: 82: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,861 INFO L290 TraceCheckUtils]: 81: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,861 INFO L272 TraceCheckUtils]: 80: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,866 INFO L290 TraceCheckUtils]: 79: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(0 != ~b~0); {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:48:26,867 INFO L290 TraceCheckUtils]: 78: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:48:26,867 INFO L290 TraceCheckUtils]: 77: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:48:26,868 INFO L290 TraceCheckUtils]: 76: Hoare triple {22544#(= 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; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:48:26,868 INFO L290 TraceCheckUtils]: 75: Hoare triple {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:48:26,869 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {22231#true} {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #92#return; {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:48:26,869 INFO L290 TraceCheckUtils]: 73: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,869 INFO L290 TraceCheckUtils]: 72: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,869 INFO L290 TraceCheckUtils]: 71: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,869 INFO L272 TraceCheckUtils]: 70: Hoare triple {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,869 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} {22231#true} #90#return; {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:48:26,870 INFO L290 TraceCheckUtils]: 68: Hoare triple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:26,870 INFO L290 TraceCheckUtils]: 67: Hoare triple {22575#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:26,870 INFO L290 TraceCheckUtils]: 66: Hoare triple {22231#true} ~cond := #in~cond; {22575#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:48:26,870 INFO L272 TraceCheckUtils]: 65: Hoare triple {22231#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22231#true} {22231#true} #88#return; {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L290 TraceCheckUtils]: 63: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L290 TraceCheckUtils]: 62: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L290 TraceCheckUtils]: 61: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L272 TraceCheckUtils]: 60: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22231#true} {22231#true} #86#return; {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L290 TraceCheckUtils]: 58: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L290 TraceCheckUtils]: 57: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L290 TraceCheckUtils]: 56: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L272 TraceCheckUtils]: 55: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,871 INFO L290 TraceCheckUtils]: 54: Hoare triple {22231#true} assume !!(#t~post7 < 20);havoc #t~post7; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 53: Hoare triple {22231#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 52: Hoare triple {22231#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {22231#true} {22231#true} #92#return; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 50: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 49: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 48: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L272 TraceCheckUtils]: 47: Hoare triple {22231#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22231#true} {22231#true} #90#return; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 45: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 44: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 43: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L272 TraceCheckUtils]: 42: Hoare triple {22231#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22231#true} {22231#true} #88#return; {22231#true} is VALID [2022-04-08 05:48:26,872 INFO L290 TraceCheckUtils]: 40: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 39: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 38: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L272 TraceCheckUtils]: 37: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22231#true} {22231#true} #86#return; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 35: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 34: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 33: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L272 TraceCheckUtils]: 32: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 31: Hoare triple {22231#true} assume !!(#t~post7 < 20);havoc #t~post7; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 30: Hoare triple {22231#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 29: Hoare triple {22231#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 28: Hoare triple {22231#true} assume !!(#t~post6 < 20);havoc #t~post6; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L290 TraceCheckUtils]: 27: Hoare triple {22231#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22231#true} is VALID [2022-04-08 05:48:26,873 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22231#true} {22231#true} #84#return; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 25: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 24: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 23: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L272 TraceCheckUtils]: 22: Hoare triple {22231#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22231#true} {22231#true} #82#return; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 20: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 19: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L272 TraceCheckUtils]: 17: Hoare triple {22231#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 16: Hoare triple {22231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {22231#true} {22231#true} #80#return; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 13: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L290 TraceCheckUtils]: 12: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,874 INFO L272 TraceCheckUtils]: 11: Hoare triple {22231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22231#true} {22231#true} #78#return; {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L290 TraceCheckUtils]: 9: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L290 TraceCheckUtils]: 8: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L290 TraceCheckUtils]: 7: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L272 TraceCheckUtils]: 6: Hoare triple {22231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L290 TraceCheckUtils]: 5: Hoare triple {22231#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L272 TraceCheckUtils]: 4: Hoare triple {22231#true} call #t~ret8 := main(); {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22231#true} {22231#true} #98#return; {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {22231#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);~counter~0 := 0; {22231#true} is VALID [2022-04-08 05:48:26,875 INFO L272 TraceCheckUtils]: 0: Hoare triple {22231#true} call ULTIMATE.init(); {22231#true} is VALID [2022-04-08 05:48:26,876 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 40 proven. 7 refuted. 0 times theorem prover too weak. 149 trivial. 0 not checked. [2022-04-08 05:48:26,876 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:48:26,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1751687191] [2022-04-08 05:48:26,876 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:48:26,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [646932347] [2022-04-08 05:48:26,876 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [646932347] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:48:26,876 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:48:26,876 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-08 05:48:26,877 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:48:26,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [613049207] [2022-04-08 05:48:26,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [613049207] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:48:26,877 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:48:26,877 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:48:26,877 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1573666678] [2022-04-08 05:48:26,877 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:48:26,877 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 89 [2022-04-08 05:48:26,878 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:48:26,878 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 05:48:26,934 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:26,934 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:48:26,935 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:26,935 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:48:26,935 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:48:26,935 INFO L87 Difference]: Start difference. First operand 257 states and 348 transitions. Second operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 05:48:28,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:28,576 INFO L93 Difference]: Finished difference Result 301 states and 415 transitions. [2022-04-08 05:48:28,576 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 05:48:28,576 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 89 [2022-04-08 05:48:28,576 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:48:28,577 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 05:48:28,578 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 89 transitions. [2022-04-08 05:48:28,578 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 05:48:28,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 89 transitions. [2022-04-08 05:48:28,579 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 89 transitions. [2022-04-08 05:48:28,663 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:28,671 INFO L225 Difference]: With dead ends: 301 [2022-04-08 05:48:28,671 INFO L226 Difference]: Without dead ends: 297 [2022-04-08 05:48:28,671 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 179 GetRequests, 166 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:48:28,672 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 24 mSDsluCounter, 212 mSDsCounter, 0 mSdLazyCounter, 242 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 246 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 242 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:48:28,672 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 259 Invalid, 246 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 242 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:48:28,673 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 297 states. [2022-04-08 05:48:29,194 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 297 to 293. [2022-04-08 05:48:29,194 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:48:29,195 INFO L82 GeneralOperation]: Start isEquivalent. First operand 297 states. Second operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 05:48:29,195 INFO L74 IsIncluded]: Start isIncluded. First operand 297 states. Second operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 05:48:29,196 INFO L87 Difference]: Start difference. First operand 297 states. Second operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 05:48:29,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:29,204 INFO L93 Difference]: Finished difference Result 297 states and 408 transitions. [2022-04-08 05:48:29,204 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 408 transitions. [2022-04-08 05:48:29,206 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:29,206 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:29,206 INFO L74 IsIncluded]: Start isIncluded. First operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) Second operand 297 states. [2022-04-08 05:48:29,207 INFO L87 Difference]: Start difference. First operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) Second operand 297 states. [2022-04-08 05:48:29,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:29,215 INFO L93 Difference]: Finished difference Result 297 states and 408 transitions. [2022-04-08 05:48:29,215 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 408 transitions. [2022-04-08 05:48:29,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:29,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:29,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:48:29,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:48:29,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 05:48:29,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 293 states to 293 states and 404 transitions. [2022-04-08 05:48:29,232 INFO L78 Accepts]: Start accepts. Automaton has 293 states and 404 transitions. Word has length 89 [2022-04-08 05:48:29,232 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:48:29,233 INFO L478 AbstractCegarLoop]: Abstraction has 293 states and 404 transitions. [2022-04-08 05:48:29,233 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 05:48:29,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 293 states and 404 transitions. [2022-04-08 05:48:29,778 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 404 edges. 404 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:29,778 INFO L276 IsEmpty]: Start isEmpty. Operand 293 states and 404 transitions. [2022-04-08 05:48:29,779 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-08 05:48:29,779 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:48:29,779 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:48:29,808 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-08 05:48:29,995 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-08 05:48:29,995 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:48:29,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:48:29,996 INFO L85 PathProgramCache]: Analyzing trace with hash -201422586, now seen corresponding path program 1 times [2022-04-08 05:48:29,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:29,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1441039675] [2022-04-08 05:48:29,996 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:48:29,996 INFO L85 PathProgramCache]: Analyzing trace with hash -201422586, now seen corresponding path program 2 times [2022-04-08 05:48:29,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:48:29,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [231979309] [2022-04-08 05:48:29,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:48:29,997 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:48:30,007 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:48:30,007 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1504917308] [2022-04-08 05:48:30,007 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:48:30,007 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:48:30,008 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:48:30,008 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:48:30,011 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-08 05:48:30,063 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:48:30,064 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:48:30,065 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 05:48:30,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:48:30,082 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:48:30,414 INFO L272 TraceCheckUtils]: 0: Hoare triple {24562#true} call ULTIMATE.init(); {24562#true} is VALID [2022-04-08 05:48:30,415 INFO L290 TraceCheckUtils]: 1: Hoare triple {24562#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);~counter~0 := 0; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,415 INFO L290 TraceCheckUtils]: 2: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,415 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24570#(<= ~counter~0 0)} {24562#true} #98#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,416 INFO L272 TraceCheckUtils]: 4: Hoare triple {24570#(<= ~counter~0 0)} call #t~ret8 := main(); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,416 INFO L290 TraceCheckUtils]: 5: Hoare triple {24570#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,416 INFO L272 TraceCheckUtils]: 6: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,417 INFO L290 TraceCheckUtils]: 7: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,419 INFO L290 TraceCheckUtils]: 9: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,420 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #78#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,420 INFO L272 TraceCheckUtils]: 11: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,420 INFO L290 TraceCheckUtils]: 12: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,421 INFO L290 TraceCheckUtils]: 13: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,421 INFO L290 TraceCheckUtils]: 14: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,422 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #80#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,422 INFO L290 TraceCheckUtils]: 16: Hoare triple {24570#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,423 INFO L272 TraceCheckUtils]: 17: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,423 INFO L290 TraceCheckUtils]: 18: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,423 INFO L290 TraceCheckUtils]: 19: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,424 INFO L290 TraceCheckUtils]: 20: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,424 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #82#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,425 INFO L272 TraceCheckUtils]: 22: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,425 INFO L290 TraceCheckUtils]: 23: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,425 INFO L290 TraceCheckUtils]: 24: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,426 INFO L290 TraceCheckUtils]: 25: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,426 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #84#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-08 05:48:30,427 INFO L290 TraceCheckUtils]: 27: Hoare triple {24570#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24649#(<= ~counter~0 1)} is VALID [2022-04-08 05:48:30,428 INFO L290 TraceCheckUtils]: 28: Hoare triple {24649#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {24649#(<= ~counter~0 1)} is VALID [2022-04-08 05:48:30,428 INFO L290 TraceCheckUtils]: 29: Hoare triple {24649#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {24649#(<= ~counter~0 1)} is VALID [2022-04-08 05:48:30,429 INFO L290 TraceCheckUtils]: 30: Hoare triple {24649#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,435 INFO L290 TraceCheckUtils]: 31: Hoare triple {24659#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,436 INFO L272 TraceCheckUtils]: 32: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,436 INFO L290 TraceCheckUtils]: 33: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,437 INFO L290 TraceCheckUtils]: 34: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,438 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #86#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,438 INFO L272 TraceCheckUtils]: 37: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,439 INFO L290 TraceCheckUtils]: 38: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,439 INFO L290 TraceCheckUtils]: 39: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,439 INFO L290 TraceCheckUtils]: 40: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,440 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #88#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,441 INFO L272 TraceCheckUtils]: 42: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,441 INFO L290 TraceCheckUtils]: 43: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,441 INFO L290 TraceCheckUtils]: 44: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,442 INFO L290 TraceCheckUtils]: 45: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,442 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #90#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,443 INFO L272 TraceCheckUtils]: 47: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,443 INFO L290 TraceCheckUtils]: 48: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,444 INFO L290 TraceCheckUtils]: 49: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,444 INFO L290 TraceCheckUtils]: 50: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,445 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #92#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,445 INFO L290 TraceCheckUtils]: 52: Hoare triple {24659#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {24659#(<= ~counter~0 2)} is VALID [2022-04-08 05:48:30,446 INFO L290 TraceCheckUtils]: 53: Hoare triple {24659#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,446 INFO L290 TraceCheckUtils]: 54: Hoare triple {24729#(<= ~counter~0 3)} assume !!(#t~post7 < 20);havoc #t~post7; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,447 INFO L272 TraceCheckUtils]: 55: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,447 INFO L290 TraceCheckUtils]: 56: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,448 INFO L290 TraceCheckUtils]: 57: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,448 INFO L290 TraceCheckUtils]: 58: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,449 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #86#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,449 INFO L272 TraceCheckUtils]: 60: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,450 INFO L290 TraceCheckUtils]: 61: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,450 INFO L290 TraceCheckUtils]: 62: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,450 INFO L290 TraceCheckUtils]: 63: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,451 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #88#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,452 INFO L272 TraceCheckUtils]: 65: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,452 INFO L290 TraceCheckUtils]: 66: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,453 INFO L290 TraceCheckUtils]: 67: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,453 INFO L290 TraceCheckUtils]: 68: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,454 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #90#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,454 INFO L272 TraceCheckUtils]: 70: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,455 INFO L290 TraceCheckUtils]: 71: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,455 INFO L290 TraceCheckUtils]: 72: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,455 INFO L290 TraceCheckUtils]: 73: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,456 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #92#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,457 INFO L290 TraceCheckUtils]: 75: Hoare triple {24729#(<= ~counter~0 3)} assume !(~c~0 >= ~b~0); {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,457 INFO L290 TraceCheckUtils]: 76: Hoare triple {24729#(<= ~counter~0 3)} ~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; {24729#(<= ~counter~0 3)} is VALID [2022-04-08 05:48:30,458 INFO L290 TraceCheckUtils]: 77: Hoare triple {24729#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24802#(<= ~counter~0 4)} is VALID [2022-04-08 05:48:30,458 INFO L290 TraceCheckUtils]: 78: Hoare triple {24802#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {24802#(<= ~counter~0 4)} is VALID [2022-04-08 05:48:30,459 INFO L290 TraceCheckUtils]: 79: Hoare triple {24802#(<= ~counter~0 4)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {24802#(<= ~counter~0 4)} is VALID [2022-04-08 05:48:30,459 INFO L290 TraceCheckUtils]: 80: Hoare triple {24802#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24812#(<= |main_#t~post7| 4)} is VALID [2022-04-08 05:48:30,460 INFO L290 TraceCheckUtils]: 81: Hoare triple {24812#(<= |main_#t~post7| 4)} assume !(#t~post7 < 20);havoc #t~post7; {24563#false} is VALID [2022-04-08 05:48:30,460 INFO L290 TraceCheckUtils]: 82: Hoare triple {24563#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; {24563#false} is VALID [2022-04-08 05:48:30,460 INFO L290 TraceCheckUtils]: 83: Hoare triple {24563#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24563#false} is VALID [2022-04-08 05:48:30,460 INFO L290 TraceCheckUtils]: 84: Hoare triple {24563#false} assume !(#t~post6 < 20);havoc #t~post6; {24563#false} is VALID [2022-04-08 05:48:30,460 INFO L272 TraceCheckUtils]: 85: Hoare triple {24563#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {24563#false} is VALID [2022-04-08 05:48:30,460 INFO L290 TraceCheckUtils]: 86: Hoare triple {24563#false} ~cond := #in~cond; {24563#false} is VALID [2022-04-08 05:48:30,460 INFO L290 TraceCheckUtils]: 87: Hoare triple {24563#false} assume 0 == ~cond; {24563#false} is VALID [2022-04-08 05:48:30,460 INFO L290 TraceCheckUtils]: 88: Hoare triple {24563#false} assume !false; {24563#false} is VALID [2022-04-08 05:48:30,461 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 21 proven. 78 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-08 05:48:30,461 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:48:30,884 INFO L290 TraceCheckUtils]: 88: Hoare triple {24563#false} assume !false; {24563#false} is VALID [2022-04-08 05:48:30,884 INFO L290 TraceCheckUtils]: 87: Hoare triple {24563#false} assume 0 == ~cond; {24563#false} is VALID [2022-04-08 05:48:30,884 INFO L290 TraceCheckUtils]: 86: Hoare triple {24563#false} ~cond := #in~cond; {24563#false} is VALID [2022-04-08 05:48:30,884 INFO L272 TraceCheckUtils]: 85: Hoare triple {24563#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {24563#false} is VALID [2022-04-08 05:48:30,884 INFO L290 TraceCheckUtils]: 84: Hoare triple {24563#false} assume !(#t~post6 < 20);havoc #t~post6; {24563#false} is VALID [2022-04-08 05:48:30,884 INFO L290 TraceCheckUtils]: 83: Hoare triple {24563#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24563#false} is VALID [2022-04-08 05:48:30,884 INFO L290 TraceCheckUtils]: 82: Hoare triple {24563#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; {24563#false} is VALID [2022-04-08 05:48:30,885 INFO L290 TraceCheckUtils]: 81: Hoare triple {24858#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {24563#false} is VALID [2022-04-08 05:48:30,885 INFO L290 TraceCheckUtils]: 80: Hoare triple {24862#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24858#(< |main_#t~post7| 20)} is VALID [2022-04-08 05:48:30,885 INFO L290 TraceCheckUtils]: 79: Hoare triple {24862#(< ~counter~0 20)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {24862#(< ~counter~0 20)} is VALID [2022-04-08 05:48:30,886 INFO L290 TraceCheckUtils]: 78: Hoare triple {24862#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {24862#(< ~counter~0 20)} is VALID [2022-04-08 05:48:30,886 INFO L290 TraceCheckUtils]: 77: Hoare triple {24872#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24862#(< ~counter~0 20)} is VALID [2022-04-08 05:48:30,887 INFO L290 TraceCheckUtils]: 76: Hoare triple {24872#(< ~counter~0 19)} ~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; {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,887 INFO L290 TraceCheckUtils]: 75: Hoare triple {24872#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,888 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {24562#true} {24872#(< ~counter~0 19)} #92#return; {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,888 INFO L290 TraceCheckUtils]: 73: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,888 INFO L290 TraceCheckUtils]: 72: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,888 INFO L290 TraceCheckUtils]: 71: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,888 INFO L272 TraceCheckUtils]: 70: Hoare triple {24872#(< ~counter~0 19)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,889 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {24562#true} {24872#(< ~counter~0 19)} #90#return; {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,889 INFO L290 TraceCheckUtils]: 68: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,889 INFO L290 TraceCheckUtils]: 67: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,889 INFO L290 TraceCheckUtils]: 66: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,889 INFO L272 TraceCheckUtils]: 65: Hoare triple {24872#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,889 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {24562#true} {24872#(< ~counter~0 19)} #88#return; {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,889 INFO L290 TraceCheckUtils]: 63: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,890 INFO L290 TraceCheckUtils]: 62: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,890 INFO L290 TraceCheckUtils]: 61: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,890 INFO L272 TraceCheckUtils]: 60: Hoare triple {24872#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,890 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24562#true} {24872#(< ~counter~0 19)} #86#return; {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,890 INFO L290 TraceCheckUtils]: 58: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,890 INFO L290 TraceCheckUtils]: 57: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,890 INFO L290 TraceCheckUtils]: 56: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,890 INFO L272 TraceCheckUtils]: 55: Hoare triple {24872#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,891 INFO L290 TraceCheckUtils]: 54: Hoare triple {24872#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,891 INFO L290 TraceCheckUtils]: 53: Hoare triple {24945#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24872#(< ~counter~0 19)} is VALID [2022-04-08 05:48:30,892 INFO L290 TraceCheckUtils]: 52: Hoare triple {24945#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {24945#(< ~counter~0 18)} is VALID [2022-04-08 05:48:30,892 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24562#true} {24945#(< ~counter~0 18)} #92#return; {24945#(< ~counter~0 18)} is VALID [2022-04-08 05:48:30,892 INFO L290 TraceCheckUtils]: 50: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,892 INFO L290 TraceCheckUtils]: 49: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,893 INFO L290 TraceCheckUtils]: 48: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,893 INFO L272 TraceCheckUtils]: 47: Hoare triple {24945#(< ~counter~0 18)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,893 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24562#true} {24945#(< ~counter~0 18)} #90#return; {24945#(< ~counter~0 18)} is VALID [2022-04-08 05:48:30,893 INFO L290 TraceCheckUtils]: 45: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,893 INFO L290 TraceCheckUtils]: 44: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,893 INFO L290 TraceCheckUtils]: 43: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,893 INFO L272 TraceCheckUtils]: 42: Hoare triple {24945#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,894 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24562#true} {24945#(< ~counter~0 18)} #88#return; {24945#(< ~counter~0 18)} is VALID [2022-04-08 05:48:30,894 INFO L290 TraceCheckUtils]: 40: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,894 INFO L290 TraceCheckUtils]: 39: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,894 INFO L290 TraceCheckUtils]: 38: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,894 INFO L272 TraceCheckUtils]: 37: Hoare triple {24945#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,895 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24562#true} {24945#(< ~counter~0 18)} #86#return; {24945#(< ~counter~0 18)} is VALID [2022-04-08 05:48:30,896 INFO L290 TraceCheckUtils]: 35: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,896 INFO L290 TraceCheckUtils]: 34: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,896 INFO L290 TraceCheckUtils]: 33: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,896 INFO L272 TraceCheckUtils]: 32: Hoare triple {24945#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,896 INFO L290 TraceCheckUtils]: 31: Hoare triple {24945#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {24945#(< ~counter~0 18)} is VALID [2022-04-08 05:48:30,897 INFO L290 TraceCheckUtils]: 30: Hoare triple {25015#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24945#(< ~counter~0 18)} is VALID [2022-04-08 05:48:30,897 INFO L290 TraceCheckUtils]: 29: Hoare triple {25015#(< ~counter~0 17)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25015#(< ~counter~0 17)} is VALID [2022-04-08 05:48:30,898 INFO L290 TraceCheckUtils]: 28: Hoare triple {25015#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {25015#(< ~counter~0 17)} is VALID [2022-04-08 05:48:30,898 INFO L290 TraceCheckUtils]: 27: Hoare triple {25025#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25015#(< ~counter~0 17)} is VALID [2022-04-08 05:48:30,899 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24562#true} {25025#(< ~counter~0 16)} #84#return; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,899 INFO L290 TraceCheckUtils]: 25: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,899 INFO L290 TraceCheckUtils]: 24: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,899 INFO L290 TraceCheckUtils]: 23: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,899 INFO L272 TraceCheckUtils]: 22: Hoare triple {25025#(< ~counter~0 16)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,899 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {24562#true} {25025#(< ~counter~0 16)} #82#return; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,900 INFO L290 TraceCheckUtils]: 20: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,900 INFO L290 TraceCheckUtils]: 18: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,900 INFO L272 TraceCheckUtils]: 17: Hoare triple {25025#(< ~counter~0 16)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,900 INFO L290 TraceCheckUtils]: 16: Hoare triple {25025#(< ~counter~0 16)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,900 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24562#true} {25025#(< ~counter~0 16)} #80#return; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,901 INFO L290 TraceCheckUtils]: 14: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,901 INFO L290 TraceCheckUtils]: 13: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,901 INFO L290 TraceCheckUtils]: 12: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,901 INFO L272 TraceCheckUtils]: 11: Hoare triple {25025#(< ~counter~0 16)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,901 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24562#true} {25025#(< ~counter~0 16)} #78#return; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,901 INFO L290 TraceCheckUtils]: 9: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-08 05:48:30,901 INFO L290 TraceCheckUtils]: 8: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-08 05:48:30,901 INFO L290 TraceCheckUtils]: 7: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-08 05:48:30,901 INFO L272 TraceCheckUtils]: 6: Hoare triple {25025#(< ~counter~0 16)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24562#true} is VALID [2022-04-08 05:48:30,902 INFO L290 TraceCheckUtils]: 5: Hoare triple {25025#(< ~counter~0 16)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,902 INFO L272 TraceCheckUtils]: 4: Hoare triple {25025#(< ~counter~0 16)} call #t~ret8 := main(); {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,902 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25025#(< ~counter~0 16)} {24562#true} #98#return; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,903 INFO L290 TraceCheckUtils]: 2: Hoare triple {25025#(< ~counter~0 16)} assume true; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,903 INFO L290 TraceCheckUtils]: 1: Hoare triple {24562#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);~counter~0 := 0; {25025#(< ~counter~0 16)} is VALID [2022-04-08 05:48:30,903 INFO L272 TraceCheckUtils]: 0: Hoare triple {24562#true} call ULTIMATE.init(); {24562#true} is VALID [2022-04-08 05:48:30,903 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 21 proven. 14 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-08 05:48:30,904 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:48:30,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [231979309] [2022-04-08 05:48:30,904 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:48:30,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1504917308] [2022-04-08 05:48:30,904 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1504917308] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:48:30,904 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:48:30,904 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 05:48:30,904 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:48:30,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1441039675] [2022-04-08 05:48:30,904 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1441039675] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:48:30,904 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:48:30,904 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:48:30,904 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [198212584] [2022-04-08 05:48:30,904 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:48:30,905 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 89 [2022-04-08 05:48:30,905 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:48:30,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:48:30,954 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:30,955 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:48:30,955 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:30,955 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:48:30,955 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:48:30,955 INFO L87 Difference]: Start difference. First operand 293 states and 404 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:48:31,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:31,840 INFO L93 Difference]: Finished difference Result 463 states and 647 transitions. [2022-04-08 05:48:31,841 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:48:31,841 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 89 [2022-04-08 05:48:31,841 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:48:31,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:48:31,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 133 transitions. [2022-04-08 05:48:31,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:48:31,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 133 transitions. [2022-04-08 05:48:31,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 133 transitions. [2022-04-08 05:48:31,947 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:48:31,955 INFO L225 Difference]: With dead ends: 463 [2022-04-08 05:48:31,955 INFO L226 Difference]: Without dead ends: 329 [2022-04-08 05:48:31,956 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 165 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=107, Invalid=165, Unknown=0, NotChecked=0, Total=272 [2022-04-08 05:48:31,956 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 46 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:48:31,956 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 177 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:48:31,957 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 329 states. [2022-04-08 05:48:32,537 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 329 to 327. [2022-04-08 05:48:32,537 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:48:32,537 INFO L82 GeneralOperation]: Start isEquivalent. First operand 329 states. Second operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:48:32,538 INFO L74 IsIncluded]: Start isIncluded. First operand 329 states. Second operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:48:32,538 INFO L87 Difference]: Start difference. First operand 329 states. Second operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:48:32,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:32,547 INFO L93 Difference]: Finished difference Result 329 states and 435 transitions. [2022-04-08 05:48:32,547 INFO L276 IsEmpty]: Start isEmpty. Operand 329 states and 435 transitions. [2022-04-08 05:48:32,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:32,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:32,549 INFO L74 IsIncluded]: Start isIncluded. First operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 329 states. [2022-04-08 05:48:32,550 INFO L87 Difference]: Start difference. First operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 329 states. [2022-04-08 05:48:32,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:48:32,558 INFO L93 Difference]: Finished difference Result 329 states and 435 transitions. [2022-04-08 05:48:32,558 INFO L276 IsEmpty]: Start isEmpty. Operand 329 states and 435 transitions. [2022-04-08 05:48:32,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:48:32,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:48:32,560 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:48:32,560 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:48:32,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:48:32,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 327 states to 327 states and 433 transitions. [2022-04-08 05:48:32,570 INFO L78 Accepts]: Start accepts. Automaton has 327 states and 433 transitions. Word has length 89 [2022-04-08 05:48:32,571 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:48:32,571 INFO L478 AbstractCegarLoop]: Abstraction has 327 states and 433 transitions. [2022-04-08 05:48:32,571 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-08 05:48:32,571 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 327 states and 433 transitions. [2022-04-08 05:48:33,269 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-08 05:48:33,269 INFO L276 IsEmpty]: Start isEmpty. Operand 327 states and 433 transitions. [2022-04-08 05:48:33,270 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 102 [2022-04-08 05:48:33,270 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:48:33,270 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:48:33,294 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-08 05:48:33,471 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-08 05:48:33,471 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:48:33,471 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:48:33,472 INFO L85 PathProgramCache]: Analyzing trace with hash 1415088729, now seen corresponding path program 1 times [2022-04-08 05:48:33,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:48:33,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2140663873] [2022-04-08 05:48:33,472 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:48:33,472 INFO L85 PathProgramCache]: Analyzing trace with hash 1415088729, now seen corresponding path program 2 times [2022-04-08 05:48:33,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:48:33,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [924215] [2022-04-08 05:48:33,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:48:33,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:48:33,489 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:48:33,490 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1788573827] [2022-04-08 05:48:33,490 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:48:33,490 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:48:33,490 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:48:33,491 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:48:33,492 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-08 05:48:33,570 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:48:33,570 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:48:33,572 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 64 conjunts are in the unsatisfiable core [2022-04-08 05:48:33,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:48:33,597 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:48:38,064 INFO L272 TraceCheckUtils]: 0: Hoare triple {27353#true} call ULTIMATE.init(); {27353#true} is VALID [2022-04-08 05:48:38,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {27353#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);~counter~0 := 0; {27353#true} is VALID [2022-04-08 05:48:38,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27353#true} {27353#true} #98#return; {27353#true} is VALID [2022-04-08 05:48:38,064 INFO L272 TraceCheckUtils]: 4: Hoare triple {27353#true} call #t~ret8 := main(); {27353#true} is VALID [2022-04-08 05:48:38,064 INFO L290 TraceCheckUtils]: 5: Hoare triple {27353#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {27353#true} is VALID [2022-04-08 05:48:38,064 INFO L272 TraceCheckUtils]: 6: Hoare triple {27353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,065 INFO L290 TraceCheckUtils]: 7: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,065 INFO L290 TraceCheckUtils]: 8: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,065 INFO L290 TraceCheckUtils]: 9: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,065 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27353#true} {27353#true} #78#return; {27353#true} is VALID [2022-04-08 05:48:38,065 INFO L272 TraceCheckUtils]: 11: Hoare triple {27353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,065 INFO L290 TraceCheckUtils]: 12: Hoare triple {27353#true} ~cond := #in~cond; {27394#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:48:38,066 INFO L290 TraceCheckUtils]: 13: Hoare triple {27394#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {27398#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:48:38,066 INFO L290 TraceCheckUtils]: 14: Hoare triple {27398#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {27398#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:48:38,067 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27398#(not (= |assume_abort_if_not_#in~cond| 0))} {27353#true} #80#return; {27405#(<= 1 main_~y~0)} is VALID [2022-04-08 05:48:38,067 INFO L290 TraceCheckUtils]: 16: Hoare triple {27405#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,067 INFO L272 TraceCheckUtils]: 17: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,067 INFO L290 TraceCheckUtils]: 18: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,068 INFO L290 TraceCheckUtils]: 19: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,068 INFO L290 TraceCheckUtils]: 20: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,068 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {27353#true} {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #82#return; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,069 INFO L272 TraceCheckUtils]: 22: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,069 INFO L290 TraceCheckUtils]: 23: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,069 INFO L290 TraceCheckUtils]: 24: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,069 INFO L290 TraceCheckUtils]: 25: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,070 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {27353#true} {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #84#return; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,070 INFO L290 TraceCheckUtils]: 27: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,071 INFO L290 TraceCheckUtils]: 28: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,071 INFO L290 TraceCheckUtils]: 29: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,072 INFO L290 TraceCheckUtils]: 30: Hoare triple {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,073 INFO L290 TraceCheckUtils]: 31: Hoare triple {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,073 INFO L272 TraceCheckUtils]: 32: Hoare triple {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,073 INFO L290 TraceCheckUtils]: 33: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,073 INFO L290 TraceCheckUtils]: 34: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,073 INFO L290 TraceCheckUtils]: 35: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,074 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {27353#true} {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #86#return; {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,074 INFO L272 TraceCheckUtils]: 37: Hoare triple {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,074 INFO L290 TraceCheckUtils]: 38: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,074 INFO L290 TraceCheckUtils]: 39: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,074 INFO L290 TraceCheckUtils]: 40: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,075 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {27353#true} {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #88#return; {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,075 INFO L272 TraceCheckUtils]: 42: Hoare triple {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,075 INFO L290 TraceCheckUtils]: 43: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,075 INFO L290 TraceCheckUtils]: 44: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,076 INFO L290 TraceCheckUtils]: 45: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,076 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {27353#true} {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #90#return; {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,077 INFO L272 TraceCheckUtils]: 47: Hoare triple {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,077 INFO L290 TraceCheckUtils]: 48: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,077 INFO L290 TraceCheckUtils]: 49: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,077 INFO L290 TraceCheckUtils]: 50: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,078 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {27353#true} {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #92#return; {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,079 INFO L290 TraceCheckUtils]: 52: Hoare triple {27449#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,080 INFO L290 TraceCheckUtils]: 53: Hoare triple {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,081 INFO L290 TraceCheckUtils]: 54: Hoare triple {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:48:38,081 INFO L272 TraceCheckUtils]: 55: Hoare triple {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,081 INFO L290 TraceCheckUtils]: 56: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:38,082 INFO L290 TraceCheckUtils]: 57: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,082 INFO L290 TraceCheckUtils]: 58: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,084 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #86#return; {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:48:38,084 INFO L272 TraceCheckUtils]: 60: Hoare triple {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,084 INFO L290 TraceCheckUtils]: 61: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,084 INFO L290 TraceCheckUtils]: 62: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,084 INFO L290 TraceCheckUtils]: 63: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,085 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {27353#true} {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:48:38,085 INFO L272 TraceCheckUtils]: 65: Hoare triple {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,086 INFO L290 TraceCheckUtils]: 66: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:38,086 INFO L290 TraceCheckUtils]: 67: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,086 INFO L290 TraceCheckUtils]: 68: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,087 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:48:38,087 INFO L272 TraceCheckUtils]: 70: Hoare triple {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,088 INFO L290 TraceCheckUtils]: 71: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:38,088 INFO L290 TraceCheckUtils]: 72: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,089 INFO L290 TraceCheckUtils]: 73: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,089 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #92#return; {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:48:38,090 INFO L290 TraceCheckUtils]: 75: Hoare triple {27543#(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_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {27592#(and (= main_~r~0 0) (<= main_~y~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (< main_~c~0 main_~y~0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))))} is VALID [2022-04-08 05:48:38,092 INFO L290 TraceCheckUtils]: 76: Hoare triple {27592#(and (= main_~r~0 0) (<= main_~y~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (< main_~c~0 main_~y~0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~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; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,092 INFO L290 TraceCheckUtils]: 77: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,093 INFO L290 TraceCheckUtils]: 78: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,093 INFO L290 TraceCheckUtils]: 79: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,094 INFO L290 TraceCheckUtils]: 80: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,095 INFO L290 TraceCheckUtils]: 81: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,095 INFO L272 TraceCheckUtils]: 82: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,095 INFO L290 TraceCheckUtils]: 83: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,095 INFO L290 TraceCheckUtils]: 84: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,095 INFO L290 TraceCheckUtils]: 85: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,096 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {27353#true} {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #86#return; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,096 INFO L272 TraceCheckUtils]: 87: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,096 INFO L290 TraceCheckUtils]: 88: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-08 05:48:38,096 INFO L290 TraceCheckUtils]: 89: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-08 05:48:38,096 INFO L290 TraceCheckUtils]: 90: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-08 05:48:38,097 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {27353#true} {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #88#return; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,097 INFO L272 TraceCheckUtils]: 92: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27353#true} is VALID [2022-04-08 05:48:38,098 INFO L290 TraceCheckUtils]: 93: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:38,098 INFO L290 TraceCheckUtils]: 94: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,098 INFO L290 TraceCheckUtils]: 95: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:48:38,099 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #90#return; {27657#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 05:48:38,102 INFO L272 TraceCheckUtils]: 97: Hoare triple {27657#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {27661#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:48:38,103 INFO L290 TraceCheckUtils]: 98: Hoare triple {27661#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27665#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:48:38,103 INFO L290 TraceCheckUtils]: 99: Hoare triple {27665#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27354#false} is VALID [2022-04-08 05:48:38,103 INFO L290 TraceCheckUtils]: 100: Hoare triple {27354#false} assume !false; {27354#false} is VALID [2022-04-08 05:48:38,104 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 84 proven. 53 refuted. 0 times theorem prover too weak. 151 trivial. 0 not checked. [2022-04-08 05:48:38,104 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:49:00,868 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:49:33,371 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:49:33,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [924215] [2022-04-08 05:49:33,371 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:49:33,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1788573827] [2022-04-08 05:49:33,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1788573827] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:49:33,371 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:49:33,371 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-04-08 05:49:33,372 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:49:33,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2140663873] [2022-04-08 05:49:33,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2140663873] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:33,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:33,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 05:49:33,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1737479971] [2022-04-08 05:49:33,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:49:33,372 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 101 [2022-04-08 05:49:33,373 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:49:33,373 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:49:33,467 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:33,467 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 05:49:33,467 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:33,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 05:49:33,468 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=369, Unknown=0, NotChecked=0, Total=462 [2022-04-08 05:49:33,468 INFO L87 Difference]: Start difference. First operand 327 states and 433 transitions. Second operand has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:49:48,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:48,716 INFO L93 Difference]: Finished difference Result 339 states and 443 transitions. [2022-04-08 05:49:48,716 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 05:49:48,716 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 101 [2022-04-08 05:49:48,717 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:49:48,717 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:49:48,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 118 transitions. [2022-04-08 05:49:48,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:49:48,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 118 transitions. [2022-04-08 05:49:48,720 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 118 transitions. [2022-04-08 05:49:48,901 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:48,909 INFO L225 Difference]: With dead ends: 339 [2022-04-08 05:49:48,909 INFO L226 Difference]: Without dead ends: 337 [2022-04-08 05:49:48,910 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 106 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 145 ImplicationChecksByTransitivity, 7.2s TimeCoverageRelationStatistics Valid=122, Invalid=528, Unknown=0, NotChecked=0, Total=650 [2022-04-08 05:49:48,910 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 49 mSDsluCounter, 289 mSDsCounter, 0 mSdLazyCounter, 745 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 337 SdHoareTripleChecker+Invalid, 774 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 745 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.8s IncrementalHoareTripleChecker+Time [2022-04-08 05:49:48,910 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [66 Valid, 337 Invalid, 774 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 745 Invalid, 0 Unknown, 0 Unchecked, 4.8s Time] [2022-04-08 05:49:48,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 337 states. [2022-04-08 05:49:49,653 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 337 to 335. [2022-04-08 05:49:49,653 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:49:49,654 INFO L82 GeneralOperation]: Start isEquivalent. First operand 337 states. Second operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:49:49,654 INFO L74 IsIncluded]: Start isIncluded. First operand 337 states. Second operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:49:49,655 INFO L87 Difference]: Start difference. First operand 337 states. Second operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:49:49,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:49,663 INFO L93 Difference]: Finished difference Result 337 states and 441 transitions. [2022-04-08 05:49:49,663 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 441 transitions. [2022-04-08 05:49:49,664 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:49,664 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:49,665 INFO L74 IsIncluded]: Start isIncluded. First operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 337 states. [2022-04-08 05:49:49,665 INFO L87 Difference]: Start difference. First operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 337 states. [2022-04-08 05:49:49,674 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:49,674 INFO L93 Difference]: Finished difference Result 337 states and 441 transitions. [2022-04-08 05:49:49,674 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 441 transitions. [2022-04-08 05:49:49,675 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:49,675 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:49,675 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:49:49,675 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:49:49,676 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:49:49,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 335 states to 335 states and 439 transitions. [2022-04-08 05:49:49,694 INFO L78 Accepts]: Start accepts. Automaton has 335 states and 439 transitions. Word has length 101 [2022-04-08 05:49:49,694 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:49:49,694 INFO L478 AbstractCegarLoop]: Abstraction has 335 states and 439 transitions. [2022-04-08 05:49:49,694 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:49:49,694 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 335 states and 439 transitions. [2022-04-08 05:49:50,430 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 439 edges. 439 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:50,430 INFO L276 IsEmpty]: Start isEmpty. Operand 335 states and 439 transitions. [2022-04-08 05:49:50,431 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-08 05:49:50,431 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:49:50,431 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:49:50,456 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-08 05:49:50,632 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:49:50,632 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:49:50,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:49:50,632 INFO L85 PathProgramCache]: Analyzing trace with hash -1524088572, now seen corresponding path program 5 times [2022-04-08 05:49:50,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:50,633 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1812019187] [2022-04-08 05:49:50,633 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:49:50,633 INFO L85 PathProgramCache]: Analyzing trace with hash -1524088572, now seen corresponding path program 6 times [2022-04-08 05:49:50,633 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:49:50,633 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [763879321] [2022-04-08 05:49:50,633 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:49:50,633 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:49:50,656 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:49:50,656 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1141385562] [2022-04-08 05:49:50,656 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:49:50,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:49:50,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:49:50,660 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:49:50,687 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-08 05:49:50,755 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 05:49:50,755 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:49:50,757 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-08 05:49:50,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:50,775 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:49:51,021 INFO L272 TraceCheckUtils]: 0: Hoare triple {29788#true} call ULTIMATE.init(); {29788#true} is VALID [2022-04-08 05:49:51,021 INFO L290 TraceCheckUtils]: 1: Hoare triple {29788#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);~counter~0 := 0; {29788#true} is VALID [2022-04-08 05:49:51,021 INFO L290 TraceCheckUtils]: 2: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29788#true} {29788#true} #98#return; {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L272 TraceCheckUtils]: 4: Hoare triple {29788#true} call #t~ret8 := main(); {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L290 TraceCheckUtils]: 5: Hoare triple {29788#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L272 TraceCheckUtils]: 6: Hoare triple {29788#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L290 TraceCheckUtils]: 7: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L290 TraceCheckUtils]: 8: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L290 TraceCheckUtils]: 9: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29788#true} {29788#true} #78#return; {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L272 TraceCheckUtils]: 11: Hoare triple {29788#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L290 TraceCheckUtils]: 12: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {29788#true} {29788#true} #80#return; {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {29788#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L272 TraceCheckUtils]: 17: Hoare triple {29788#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L290 TraceCheckUtils]: 19: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L290 TraceCheckUtils]: 20: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {29788#true} {29788#true} #82#return; {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L272 TraceCheckUtils]: 22: Hoare triple {29788#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L290 TraceCheckUtils]: 23: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,023 INFO L290 TraceCheckUtils]: 24: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 25: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29788#true} {29788#true} #84#return; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 27: Hoare triple {29788#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 28: Hoare triple {29788#true} assume !!(#t~post6 < 20);havoc #t~post6; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 29: Hoare triple {29788#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 30: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 31: Hoare triple {29788#true} assume !!(#t~post7 < 20);havoc #t~post7; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L272 TraceCheckUtils]: 32: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 33: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 34: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L290 TraceCheckUtils]: 35: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,024 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L272 TraceCheckUtils]: 37: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L290 TraceCheckUtils]: 38: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L290 TraceCheckUtils]: 39: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L290 TraceCheckUtils]: 40: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L272 TraceCheckUtils]: 42: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L290 TraceCheckUtils]: 43: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L290 TraceCheckUtils]: 44: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L290 TraceCheckUtils]: 45: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-08 05:49:51,025 INFO L272 TraceCheckUtils]: 47: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 48: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 49: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 50: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 52: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 53: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 54: Hoare triple {29788#true} assume !!(#t~post7 < 20);havoc #t~post7; {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L272 TraceCheckUtils]: 55: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 56: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 57: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,026 INFO L290 TraceCheckUtils]: 58: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L272 TraceCheckUtils]: 60: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L290 TraceCheckUtils]: 61: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L290 TraceCheckUtils]: 62: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L290 TraceCheckUtils]: 63: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L272 TraceCheckUtils]: 65: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L290 TraceCheckUtils]: 66: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L290 TraceCheckUtils]: 67: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,027 INFO L290 TraceCheckUtils]: 68: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L272 TraceCheckUtils]: 70: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L290 TraceCheckUtils]: 71: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L290 TraceCheckUtils]: 72: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L290 TraceCheckUtils]: 73: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L290 TraceCheckUtils]: 75: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L290 TraceCheckUtils]: 76: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L290 TraceCheckUtils]: 77: Hoare triple {29788#true} assume !!(#t~post7 < 20);havoc #t~post7; {29788#true} is VALID [2022-04-08 05:49:51,028 INFO L272 TraceCheckUtils]: 78: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,029 INFO L290 TraceCheckUtils]: 79: Hoare triple {29788#true} ~cond := #in~cond; {30030#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:51,029 INFO L290 TraceCheckUtils]: 80: Hoare triple {30030#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:49:51,029 INFO L290 TraceCheckUtils]: 81: Hoare triple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:49:51,030 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} {29788#true} #86#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:49:51,030 INFO L272 TraceCheckUtils]: 83: Hoare triple {30041#(= 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)); {29788#true} is VALID [2022-04-08 05:49:51,030 INFO L290 TraceCheckUtils]: 84: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,030 INFO L290 TraceCheckUtils]: 85: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,030 INFO L290 TraceCheckUtils]: 86: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,031 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #88#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:49:51,031 INFO L272 TraceCheckUtils]: 88: Hoare triple {30041#(= 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)); {29788#true} is VALID [2022-04-08 05:49:51,031 INFO L290 TraceCheckUtils]: 89: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,031 INFO L290 TraceCheckUtils]: 90: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,032 INFO L290 TraceCheckUtils]: 91: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,032 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #90#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:49:51,032 INFO L272 TraceCheckUtils]: 93: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:49:51,032 INFO L290 TraceCheckUtils]: 94: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:49:51,033 INFO L290 TraceCheckUtils]: 95: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:49:51,033 INFO L290 TraceCheckUtils]: 96: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:49:51,033 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #92#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:49:51,036 INFO L290 TraceCheckUtils]: 98: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:49:51,036 INFO L290 TraceCheckUtils]: 99: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:49:51,036 INFO L290 TraceCheckUtils]: 100: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:49:51,048 INFO L272 TraceCheckUtils]: 101: Hoare triple {30041#(= 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)); {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:49:51,049 INFO L290 TraceCheckUtils]: 102: Hoare triple {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30103#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:51,049 INFO L290 TraceCheckUtils]: 103: Hoare triple {30103#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {29789#false} is VALID [2022-04-08 05:49:51,049 INFO L290 TraceCheckUtils]: 104: Hoare triple {29789#false} assume !false; {29789#false} is VALID [2022-04-08 05:49:51,050 INFO L134 CoverageAnalysis]: Checked inductivity of 342 backedges. 64 proven. 10 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-08 05:49:51,050 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:50:01,113 INFO L290 TraceCheckUtils]: 104: Hoare triple {29789#false} assume !false; {29789#false} is VALID [2022-04-08 05:50:01,114 INFO L290 TraceCheckUtils]: 103: Hoare triple {30103#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {29789#false} is VALID [2022-04-08 05:50:01,114 INFO L290 TraceCheckUtils]: 102: Hoare triple {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30103#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:01,115 INFO L272 TraceCheckUtils]: 101: Hoare triple {30041#(= 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)); {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:01,115 INFO L290 TraceCheckUtils]: 100: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:01,116 INFO L290 TraceCheckUtils]: 99: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:01,118 INFO L290 TraceCheckUtils]: 98: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:01,119 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #92#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:01,119 INFO L290 TraceCheckUtils]: 96: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,119 INFO L290 TraceCheckUtils]: 95: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,119 INFO L290 TraceCheckUtils]: 94: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,120 INFO L272 TraceCheckUtils]: 93: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,120 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #90#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:01,120 INFO L290 TraceCheckUtils]: 91: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,121 INFO L290 TraceCheckUtils]: 90: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,121 INFO L290 TraceCheckUtils]: 89: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,121 INFO L272 TraceCheckUtils]: 88: Hoare triple {30041#(= 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)); {29788#true} is VALID [2022-04-08 05:50:01,121 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #88#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:01,122 INFO L290 TraceCheckUtils]: 86: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,122 INFO L290 TraceCheckUtils]: 85: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,122 INFO L290 TraceCheckUtils]: 84: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,122 INFO L272 TraceCheckUtils]: 83: Hoare triple {30041#(= 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)); {29788#true} is VALID [2022-04-08 05:50:01,123 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} {29788#true} #86#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:01,123 INFO L290 TraceCheckUtils]: 81: Hoare triple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:01,124 INFO L290 TraceCheckUtils]: 80: Hoare triple {30185#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:01,124 INFO L290 TraceCheckUtils]: 79: Hoare triple {29788#true} ~cond := #in~cond; {30185#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:50:01,124 INFO L272 TraceCheckUtils]: 78: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,124 INFO L290 TraceCheckUtils]: 77: Hoare triple {29788#true} assume !!(#t~post7 < 20);havoc #t~post7; {29788#true} is VALID [2022-04-08 05:50:01,124 INFO L290 TraceCheckUtils]: 76: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-08 05:50:01,124 INFO L290 TraceCheckUtils]: 75: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L290 TraceCheckUtils]: 73: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L290 TraceCheckUtils]: 72: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L290 TraceCheckUtils]: 71: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L272 TraceCheckUtils]: 70: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L290 TraceCheckUtils]: 68: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L290 TraceCheckUtils]: 67: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L290 TraceCheckUtils]: 66: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L272 TraceCheckUtils]: 65: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,125 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L290 TraceCheckUtils]: 63: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L290 TraceCheckUtils]: 62: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L290 TraceCheckUtils]: 61: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L272 TraceCheckUtils]: 60: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L290 TraceCheckUtils]: 58: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L290 TraceCheckUtils]: 57: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L290 TraceCheckUtils]: 56: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L272 TraceCheckUtils]: 55: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,126 INFO L290 TraceCheckUtils]: 54: Hoare triple {29788#true} assume !!(#t~post7 < 20);havoc #t~post7; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L290 TraceCheckUtils]: 53: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L290 TraceCheckUtils]: 52: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L290 TraceCheckUtils]: 50: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L290 TraceCheckUtils]: 49: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L290 TraceCheckUtils]: 48: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L272 TraceCheckUtils]: 47: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L290 TraceCheckUtils]: 45: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,127 INFO L290 TraceCheckUtils]: 44: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L290 TraceCheckUtils]: 43: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L272 TraceCheckUtils]: 42: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L290 TraceCheckUtils]: 40: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L290 TraceCheckUtils]: 39: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L290 TraceCheckUtils]: 38: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L272 TraceCheckUtils]: 37: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L290 TraceCheckUtils]: 35: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L290 TraceCheckUtils]: 34: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,128 INFO L290 TraceCheckUtils]: 33: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L272 TraceCheckUtils]: 32: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 31: Hoare triple {29788#true} assume !!(#t~post7 < 20);havoc #t~post7; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 30: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 29: Hoare triple {29788#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 28: Hoare triple {29788#true} assume !!(#t~post6 < 20);havoc #t~post6; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 27: Hoare triple {29788#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29788#true} {29788#true} #84#return; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 25: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 24: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,129 INFO L290 TraceCheckUtils]: 23: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L272 TraceCheckUtils]: 22: Hoare triple {29788#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {29788#true} {29788#true} #82#return; {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L290 TraceCheckUtils]: 20: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L290 TraceCheckUtils]: 19: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L290 TraceCheckUtils]: 18: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L272 TraceCheckUtils]: 17: Hoare triple {29788#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L290 TraceCheckUtils]: 16: Hoare triple {29788#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {29788#true} {29788#true} #80#return; {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L290 TraceCheckUtils]: 14: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,130 INFO L290 TraceCheckUtils]: 12: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L272 TraceCheckUtils]: 11: Hoare triple {29788#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29788#true} {29788#true} #78#return; {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L272 TraceCheckUtils]: 6: Hoare triple {29788#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L290 TraceCheckUtils]: 5: Hoare triple {29788#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L272 TraceCheckUtils]: 4: Hoare triple {29788#true} call #t~ret8 := main(); {29788#true} is VALID [2022-04-08 05:50:01,131 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29788#true} {29788#true} #98#return; {29788#true} is VALID [2022-04-08 05:50:01,132 INFO L290 TraceCheckUtils]: 2: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-08 05:50:01,132 INFO L290 TraceCheckUtils]: 1: Hoare triple {29788#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);~counter~0 := 0; {29788#true} is VALID [2022-04-08 05:50:01,132 INFO L272 TraceCheckUtils]: 0: Hoare triple {29788#true} call ULTIMATE.init(); {29788#true} is VALID [2022-04-08 05:50:01,132 INFO L134 CoverageAnalysis]: Checked inductivity of 342 backedges. 64 proven. 10 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-08 05:50:01,132 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:50:01,132 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [763879321] [2022-04-08 05:50:01,132 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:50:01,133 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1141385562] [2022-04-08 05:50:01,133 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1141385562] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:50:01,133 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:50:01,133 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2022-04-08 05:50:01,133 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:50:01,133 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1812019187] [2022-04-08 05:50:01,133 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1812019187] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:50:01,133 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:50:01,133 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:50:01,133 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [156959032] [2022-04-08 05:50:01,133 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:50:01,134 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 105 [2022-04-08 05:50:01,134 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:50:01,134 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:50:01,187 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:01,188 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:50:01,188 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:01,188 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:50:01,188 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-08 05:50:01,188 INFO L87 Difference]: Start difference. First operand 335 states and 439 transitions. Second operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:50:02,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:02,071 INFO L93 Difference]: Finished difference Result 341 states and 444 transitions. [2022-04-08 05:50:02,071 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 05:50:02,071 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 105 [2022-04-08 05:50:02,071 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:50:02,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:50:02,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 50 transitions. [2022-04-08 05:50:02,072 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:50:02,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 50 transitions. [2022-04-08 05:50:02,073 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 50 transitions. [2022-04-08 05:50:02,115 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:02,123 INFO L225 Difference]: With dead ends: 341 [2022-04-08 05:50:02,123 INFO L226 Difference]: Without dead ends: 339 [2022-04-08 05:50:02,124 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 211 GetRequests, 200 SyntacticMatches, 3 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:50:02,124 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 14 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 140 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:50:02,124 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 140 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:50:02,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 339 states. [2022-04-08 05:50:02,774 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 339 to 339. [2022-04-08 05:50:02,774 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:50:02,775 INFO L82 GeneralOperation]: Start isEquivalent. First operand 339 states. Second operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:02,775 INFO L74 IsIncluded]: Start isIncluded. First operand 339 states. Second operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:02,776 INFO L87 Difference]: Start difference. First operand 339 states. Second operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:02,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:02,789 INFO L93 Difference]: Finished difference Result 339 states and 442 transitions. [2022-04-08 05:50:02,789 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 442 transitions. [2022-04-08 05:50:02,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:02,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:02,790 INFO L74 IsIncluded]: Start isIncluded. First operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 339 states. [2022-04-08 05:50:02,790 INFO L87 Difference]: Start difference. First operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 339 states. [2022-04-08 05:50:02,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:02,799 INFO L93 Difference]: Finished difference Result 339 states and 442 transitions. [2022-04-08 05:50:02,799 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 442 transitions. [2022-04-08 05:50:02,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:02,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:02,800 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:50:02,800 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:50:02,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:02,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 339 states to 339 states and 442 transitions. [2022-04-08 05:50:02,811 INFO L78 Accepts]: Start accepts. Automaton has 339 states and 442 transitions. Word has length 105 [2022-04-08 05:50:02,811 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:50:02,811 INFO L478 AbstractCegarLoop]: Abstraction has 339 states and 442 transitions. [2022-04-08 05:50:02,811 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-08 05:50:02,811 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 339 states and 442 transitions. [2022-04-08 05:50:03,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 442 edges. 442 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:03,531 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 442 transitions. [2022-04-08 05:50:03,532 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 107 [2022-04-08 05:50:03,532 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:50:03,532 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:50:03,548 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-08 05:50:03,735 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:03,736 INFO L403 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:50:03,736 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:50:03,736 INFO L85 PathProgramCache]: Analyzing trace with hash -1026601615, now seen corresponding path program 3 times [2022-04-08 05:50:03,736 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:03,736 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2070928770] [2022-04-08 05:50:03,736 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:50:03,737 INFO L85 PathProgramCache]: Analyzing trace with hash -1026601615, now seen corresponding path program 4 times [2022-04-08 05:50:03,737 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:50:03,737 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [72849474] [2022-04-08 05:50:03,737 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:50:03,737 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:50:03,746 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:50:03,746 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1467381476] [2022-04-08 05:50:03,746 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:50:03,746 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:03,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:50:03,747 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:50:03,748 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-08 05:50:03,811 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:50:03,811 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:50:03,812 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 05:50:03,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:50:03,831 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:50:04,332 INFO L272 TraceCheckUtils]: 0: Hoare triple {32467#true} call ULTIMATE.init(); {32467#true} is VALID [2022-04-08 05:50:04,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {32467#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);~counter~0 := 0; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,334 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32475#(<= ~counter~0 0)} {32467#true} #98#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,334 INFO L272 TraceCheckUtils]: 4: Hoare triple {32475#(<= ~counter~0 0)} call #t~ret8 := main(); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,334 INFO L290 TraceCheckUtils]: 5: Hoare triple {32475#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,334 INFO L272 TraceCheckUtils]: 6: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,335 INFO L290 TraceCheckUtils]: 7: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,335 INFO L290 TraceCheckUtils]: 8: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,335 INFO L290 TraceCheckUtils]: 9: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,336 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #78#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,336 INFO L272 TraceCheckUtils]: 11: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,336 INFO L290 TraceCheckUtils]: 12: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,337 INFO L290 TraceCheckUtils]: 13: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,337 INFO L290 TraceCheckUtils]: 14: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,337 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #80#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {32475#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,338 INFO L272 TraceCheckUtils]: 17: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,338 INFO L290 TraceCheckUtils]: 18: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,339 INFO L290 TraceCheckUtils]: 19: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,339 INFO L290 TraceCheckUtils]: 20: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,339 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #82#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,340 INFO L272 TraceCheckUtils]: 22: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,340 INFO L290 TraceCheckUtils]: 23: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,340 INFO L290 TraceCheckUtils]: 24: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,340 INFO L290 TraceCheckUtils]: 25: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,341 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #84#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-08 05:50:04,342 INFO L290 TraceCheckUtils]: 27: Hoare triple {32475#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32554#(<= ~counter~0 1)} is VALID [2022-04-08 05:50:04,342 INFO L290 TraceCheckUtils]: 28: Hoare triple {32554#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {32554#(<= ~counter~0 1)} is VALID [2022-04-08 05:50:04,342 INFO L290 TraceCheckUtils]: 29: Hoare triple {32554#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {32554#(<= ~counter~0 1)} is VALID [2022-04-08 05:50:04,343 INFO L290 TraceCheckUtils]: 30: Hoare triple {32554#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,343 INFO L290 TraceCheckUtils]: 31: Hoare triple {32564#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,344 INFO L272 TraceCheckUtils]: 32: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,344 INFO L290 TraceCheckUtils]: 33: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,344 INFO L290 TraceCheckUtils]: 34: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,345 INFO L290 TraceCheckUtils]: 35: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,345 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #86#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,346 INFO L272 TraceCheckUtils]: 37: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,346 INFO L290 TraceCheckUtils]: 38: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,347 INFO L290 TraceCheckUtils]: 39: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,347 INFO L290 TraceCheckUtils]: 40: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,347 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #88#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,348 INFO L272 TraceCheckUtils]: 42: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,348 INFO L290 TraceCheckUtils]: 43: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,348 INFO L290 TraceCheckUtils]: 44: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,349 INFO L290 TraceCheckUtils]: 45: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,349 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #90#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,350 INFO L272 TraceCheckUtils]: 47: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,350 INFO L290 TraceCheckUtils]: 48: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,350 INFO L290 TraceCheckUtils]: 49: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,351 INFO L290 TraceCheckUtils]: 50: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,351 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #92#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,352 INFO L290 TraceCheckUtils]: 52: Hoare triple {32564#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32564#(<= ~counter~0 2)} is VALID [2022-04-08 05:50:04,352 INFO L290 TraceCheckUtils]: 53: Hoare triple {32564#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,353 INFO L290 TraceCheckUtils]: 54: Hoare triple {32634#(<= ~counter~0 3)} assume !!(#t~post7 < 20);havoc #t~post7; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,353 INFO L272 TraceCheckUtils]: 55: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,353 INFO L290 TraceCheckUtils]: 56: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,354 INFO L290 TraceCheckUtils]: 57: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,354 INFO L290 TraceCheckUtils]: 58: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,355 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #86#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,355 INFO L272 TraceCheckUtils]: 60: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,355 INFO L290 TraceCheckUtils]: 61: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,356 INFO L290 TraceCheckUtils]: 62: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,356 INFO L290 TraceCheckUtils]: 63: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,356 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #88#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,357 INFO L272 TraceCheckUtils]: 65: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,357 INFO L290 TraceCheckUtils]: 66: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,357 INFO L290 TraceCheckUtils]: 67: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,358 INFO L290 TraceCheckUtils]: 68: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,358 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #90#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,359 INFO L272 TraceCheckUtils]: 70: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,359 INFO L290 TraceCheckUtils]: 71: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,359 INFO L290 TraceCheckUtils]: 72: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,360 INFO L290 TraceCheckUtils]: 73: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,360 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #92#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,361 INFO L290 TraceCheckUtils]: 75: Hoare triple {32634#(<= ~counter~0 3)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32634#(<= ~counter~0 3)} is VALID [2022-04-08 05:50:04,361 INFO L290 TraceCheckUtils]: 76: Hoare triple {32634#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,362 INFO L290 TraceCheckUtils]: 77: Hoare triple {32704#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,362 INFO L272 TraceCheckUtils]: 78: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,362 INFO L290 TraceCheckUtils]: 79: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,363 INFO L290 TraceCheckUtils]: 80: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,363 INFO L290 TraceCheckUtils]: 81: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,363 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #86#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,364 INFO L272 TraceCheckUtils]: 83: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,367 INFO L290 TraceCheckUtils]: 84: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,367 INFO L290 TraceCheckUtils]: 85: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,368 INFO L290 TraceCheckUtils]: 86: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,369 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #88#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,369 INFO L272 TraceCheckUtils]: 88: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,370 INFO L290 TraceCheckUtils]: 89: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,370 INFO L290 TraceCheckUtils]: 90: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,371 INFO L290 TraceCheckUtils]: 91: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,371 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #90#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,372 INFO L272 TraceCheckUtils]: 93: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,372 INFO L290 TraceCheckUtils]: 94: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,372 INFO L290 TraceCheckUtils]: 95: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,373 INFO L290 TraceCheckUtils]: 96: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,373 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #92#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,373 INFO L290 TraceCheckUtils]: 98: Hoare triple {32704#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,374 INFO L290 TraceCheckUtils]: 99: Hoare triple {32704#(<= ~counter~0 4)} ~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; {32704#(<= ~counter~0 4)} is VALID [2022-04-08 05:50:04,374 INFO L290 TraceCheckUtils]: 100: Hoare triple {32704#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32777#(<= |main_#t~post6| 4)} is VALID [2022-04-08 05:50:04,374 INFO L290 TraceCheckUtils]: 101: Hoare triple {32777#(<= |main_#t~post6| 4)} assume !(#t~post6 < 20);havoc #t~post6; {32468#false} is VALID [2022-04-08 05:50:04,374 INFO L272 TraceCheckUtils]: 102: Hoare triple {32468#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {32468#false} is VALID [2022-04-08 05:50:04,375 INFO L290 TraceCheckUtils]: 103: Hoare triple {32468#false} ~cond := #in~cond; {32468#false} is VALID [2022-04-08 05:50:04,375 INFO L290 TraceCheckUtils]: 104: Hoare triple {32468#false} assume 0 == ~cond; {32468#false} is VALID [2022-04-08 05:50:04,375 INFO L290 TraceCheckUtils]: 105: Hoare triple {32468#false} assume !false; {32468#false} is VALID [2022-04-08 05:50:04,375 INFO L134 CoverageAnalysis]: Checked inductivity of 335 backedges. 24 proven. 215 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-08 05:50:04,375 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:50:04,794 INFO L290 TraceCheckUtils]: 105: Hoare triple {32468#false} assume !false; {32468#false} is VALID [2022-04-08 05:50:04,794 INFO L290 TraceCheckUtils]: 104: Hoare triple {32468#false} assume 0 == ~cond; {32468#false} is VALID [2022-04-08 05:50:04,795 INFO L290 TraceCheckUtils]: 103: Hoare triple {32468#false} ~cond := #in~cond; {32468#false} is VALID [2022-04-08 05:50:04,795 INFO L272 TraceCheckUtils]: 102: Hoare triple {32468#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {32468#false} is VALID [2022-04-08 05:50:04,795 INFO L290 TraceCheckUtils]: 101: Hoare triple {32805#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {32468#false} is VALID [2022-04-08 05:50:04,795 INFO L290 TraceCheckUtils]: 100: Hoare triple {32809#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32805#(< |main_#t~post6| 20)} is VALID [2022-04-08 05:50:04,796 INFO L290 TraceCheckUtils]: 99: Hoare triple {32809#(< ~counter~0 20)} ~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; {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,796 INFO L290 TraceCheckUtils]: 98: Hoare triple {32809#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,796 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {32467#true} {32809#(< ~counter~0 20)} #92#return; {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,797 INFO L290 TraceCheckUtils]: 96: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,797 INFO L290 TraceCheckUtils]: 95: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,797 INFO L290 TraceCheckUtils]: 94: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,797 INFO L272 TraceCheckUtils]: 93: Hoare triple {32809#(< ~counter~0 20)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,797 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {32467#true} {32809#(< ~counter~0 20)} #90#return; {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,797 INFO L290 TraceCheckUtils]: 91: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,797 INFO L290 TraceCheckUtils]: 90: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,798 INFO L290 TraceCheckUtils]: 89: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,798 INFO L272 TraceCheckUtils]: 88: Hoare triple {32809#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,798 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {32467#true} {32809#(< ~counter~0 20)} #88#return; {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,798 INFO L290 TraceCheckUtils]: 86: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,798 INFO L290 TraceCheckUtils]: 85: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,798 INFO L290 TraceCheckUtils]: 84: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,798 INFO L272 TraceCheckUtils]: 83: Hoare triple {32809#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,799 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {32467#true} {32809#(< ~counter~0 20)} #86#return; {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,799 INFO L290 TraceCheckUtils]: 81: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,799 INFO L290 TraceCheckUtils]: 80: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,799 INFO L290 TraceCheckUtils]: 79: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,799 INFO L272 TraceCheckUtils]: 78: Hoare triple {32809#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,800 INFO L290 TraceCheckUtils]: 77: Hoare triple {32809#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,801 INFO L290 TraceCheckUtils]: 76: Hoare triple {32882#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32809#(< ~counter~0 20)} is VALID [2022-04-08 05:50:04,801 INFO L290 TraceCheckUtils]: 75: Hoare triple {32882#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32882#(< ~counter~0 19)} is VALID [2022-04-08 05:50:04,801 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {32467#true} {32882#(< ~counter~0 19)} #92#return; {32882#(< ~counter~0 19)} is VALID [2022-04-08 05:50:04,801 INFO L290 TraceCheckUtils]: 73: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,802 INFO L290 TraceCheckUtils]: 72: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,802 INFO L290 TraceCheckUtils]: 71: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,802 INFO L272 TraceCheckUtils]: 70: Hoare triple {32882#(< ~counter~0 19)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,802 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {32467#true} {32882#(< ~counter~0 19)} #90#return; {32882#(< ~counter~0 19)} is VALID [2022-04-08 05:50:04,802 INFO L290 TraceCheckUtils]: 68: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,802 INFO L290 TraceCheckUtils]: 67: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,802 INFO L290 TraceCheckUtils]: 66: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,803 INFO L272 TraceCheckUtils]: 65: Hoare triple {32882#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,803 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {32467#true} {32882#(< ~counter~0 19)} #88#return; {32882#(< ~counter~0 19)} is VALID [2022-04-08 05:50:04,803 INFO L290 TraceCheckUtils]: 63: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,803 INFO L290 TraceCheckUtils]: 62: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,803 INFO L290 TraceCheckUtils]: 61: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,803 INFO L272 TraceCheckUtils]: 60: Hoare triple {32882#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,804 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {32467#true} {32882#(< ~counter~0 19)} #86#return; {32882#(< ~counter~0 19)} is VALID [2022-04-08 05:50:04,804 INFO L290 TraceCheckUtils]: 58: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,804 INFO L290 TraceCheckUtils]: 57: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,804 INFO L290 TraceCheckUtils]: 56: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,804 INFO L272 TraceCheckUtils]: 55: Hoare triple {32882#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,804 INFO L290 TraceCheckUtils]: 54: Hoare triple {32882#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {32882#(< ~counter~0 19)} is VALID [2022-04-08 05:50:04,805 INFO L290 TraceCheckUtils]: 53: Hoare triple {32952#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32882#(< ~counter~0 19)} is VALID [2022-04-08 05:50:04,805 INFO L290 TraceCheckUtils]: 52: Hoare triple {32952#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32952#(< ~counter~0 18)} is VALID [2022-04-08 05:50:04,806 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {32467#true} {32952#(< ~counter~0 18)} #92#return; {32952#(< ~counter~0 18)} is VALID [2022-04-08 05:50:04,806 INFO L290 TraceCheckUtils]: 50: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,806 INFO L290 TraceCheckUtils]: 49: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,806 INFO L290 TraceCheckUtils]: 48: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,806 INFO L272 TraceCheckUtils]: 47: Hoare triple {32952#(< ~counter~0 18)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,807 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {32467#true} {32952#(< ~counter~0 18)} #90#return; {32952#(< ~counter~0 18)} is VALID [2022-04-08 05:50:04,807 INFO L290 TraceCheckUtils]: 45: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,807 INFO L290 TraceCheckUtils]: 44: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,807 INFO L290 TraceCheckUtils]: 43: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,807 INFO L272 TraceCheckUtils]: 42: Hoare triple {32952#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,808 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32467#true} {32952#(< ~counter~0 18)} #88#return; {32952#(< ~counter~0 18)} is VALID [2022-04-08 05:50:04,808 INFO L290 TraceCheckUtils]: 40: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,808 INFO L290 TraceCheckUtils]: 39: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,808 INFO L290 TraceCheckUtils]: 38: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,808 INFO L272 TraceCheckUtils]: 37: Hoare triple {32952#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,809 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32467#true} {32952#(< ~counter~0 18)} #86#return; {32952#(< ~counter~0 18)} is VALID [2022-04-08 05:50:04,809 INFO L290 TraceCheckUtils]: 35: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,809 INFO L290 TraceCheckUtils]: 34: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,809 INFO L290 TraceCheckUtils]: 33: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,809 INFO L272 TraceCheckUtils]: 32: Hoare triple {32952#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,809 INFO L290 TraceCheckUtils]: 31: Hoare triple {32952#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {32952#(< ~counter~0 18)} is VALID [2022-04-08 05:50:04,810 INFO L290 TraceCheckUtils]: 30: Hoare triple {33022#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32952#(< ~counter~0 18)} is VALID [2022-04-08 05:50:04,810 INFO L290 TraceCheckUtils]: 29: Hoare triple {33022#(< ~counter~0 17)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {33022#(< ~counter~0 17)} is VALID [2022-04-08 05:50:04,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {33022#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {33022#(< ~counter~0 17)} is VALID [2022-04-08 05:50:04,811 INFO L290 TraceCheckUtils]: 27: Hoare triple {33032#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33022#(< ~counter~0 17)} is VALID [2022-04-08 05:50:04,811 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32467#true} {33032#(< ~counter~0 16)} #84#return; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,811 INFO L290 TraceCheckUtils]: 25: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,811 INFO L290 TraceCheckUtils]: 24: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,812 INFO L290 TraceCheckUtils]: 23: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,812 INFO L272 TraceCheckUtils]: 22: Hoare triple {33032#(< ~counter~0 16)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,812 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {32467#true} {33032#(< ~counter~0 16)} #82#return; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,812 INFO L290 TraceCheckUtils]: 19: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,812 INFO L290 TraceCheckUtils]: 18: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,812 INFO L272 TraceCheckUtils]: 17: Hoare triple {33032#(< ~counter~0 16)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,813 INFO L290 TraceCheckUtils]: 16: Hoare triple {33032#(< ~counter~0 16)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,813 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32467#true} {33032#(< ~counter~0 16)} #80#return; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,813 INFO L290 TraceCheckUtils]: 14: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,813 INFO L290 TraceCheckUtils]: 13: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,813 INFO L290 TraceCheckUtils]: 12: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,813 INFO L272 TraceCheckUtils]: 11: Hoare triple {33032#(< ~counter~0 16)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,814 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32467#true} {33032#(< ~counter~0 16)} #78#return; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,814 INFO L290 TraceCheckUtils]: 9: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-08 05:50:04,814 INFO L290 TraceCheckUtils]: 8: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-08 05:50:04,814 INFO L290 TraceCheckUtils]: 7: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-08 05:50:04,814 INFO L272 TraceCheckUtils]: 6: Hoare triple {33032#(< ~counter~0 16)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32467#true} is VALID [2022-04-08 05:50:04,814 INFO L290 TraceCheckUtils]: 5: Hoare triple {33032#(< ~counter~0 16)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,815 INFO L272 TraceCheckUtils]: 4: Hoare triple {33032#(< ~counter~0 16)} call #t~ret8 := main(); {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,815 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33032#(< ~counter~0 16)} {32467#true} #98#return; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,815 INFO L290 TraceCheckUtils]: 2: Hoare triple {33032#(< ~counter~0 16)} assume true; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {32467#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);~counter~0 := 0; {33032#(< ~counter~0 16)} is VALID [2022-04-08 05:50:04,816 INFO L272 TraceCheckUtils]: 0: Hoare triple {32467#true} call ULTIMATE.init(); {32467#true} is VALID [2022-04-08 05:50:04,816 INFO L134 CoverageAnalysis]: Checked inductivity of 335 backedges. 24 proven. 23 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-08 05:50:04,816 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:50:04,816 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [72849474] [2022-04-08 05:50:04,816 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:50:04,816 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1467381476] [2022-04-08 05:50:04,816 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1467381476] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:50:04,816 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:50:04,816 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 05:50:04,817 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:50:04,817 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2070928770] [2022-04-08 05:50:04,817 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2070928770] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:50:04,817 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:50:04,817 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:50:04,817 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2098415234] [2022-04-08 05:50:04,817 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:50:04,817 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 106 [2022-04-08 05:50:04,817 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:50:04,818 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:50:04,875 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:04,875 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:50:04,875 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:04,875 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:50:04,876 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:50:04,876 INFO L87 Difference]: Start difference. First operand 339 states and 442 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:50:05,775 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:05,775 INFO L93 Difference]: Finished difference Result 349 states and 452 transitions. [2022-04-08 05:50:05,775 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:50:05,775 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 106 [2022-04-08 05:50:05,776 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:50:05,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:50:05,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 112 transitions. [2022-04-08 05:50:05,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:50:05,779 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 112 transitions. [2022-04-08 05:50:05,779 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 112 transitions. [2022-04-08 05:50:05,892 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:05,901 INFO L225 Difference]: With dead ends: 349 [2022-04-08 05:50:05,901 INFO L226 Difference]: Without dead ends: 342 [2022-04-08 05:50:05,902 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 214 GetRequests, 199 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=108, Invalid=164, Unknown=0, NotChecked=0, Total=272 [2022-04-08 05:50:05,903 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 22 mSDsluCounter, 135 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 189 SdHoareTripleChecker+Invalid, 84 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:50:05,904 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 189 Invalid, 84 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:50:05,904 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 342 states. [2022-04-08 05:50:06,680 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 342 to 342. [2022-04-08 05:50:06,680 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:50:06,681 INFO L82 GeneralOperation]: Start isEquivalent. First operand 342 states. Second operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:06,681 INFO L74 IsIncluded]: Start isIncluded. First operand 342 states. Second operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:06,682 INFO L87 Difference]: Start difference. First operand 342 states. Second operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:06,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:06,690 INFO L93 Difference]: Finished difference Result 342 states and 445 transitions. [2022-04-08 05:50:06,690 INFO L276 IsEmpty]: Start isEmpty. Operand 342 states and 445 transitions. [2022-04-08 05:50:06,691 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:06,691 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:06,692 INFO L74 IsIncluded]: Start isIncluded. First operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 342 states. [2022-04-08 05:50:06,692 INFO L87 Difference]: Start difference. First operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 342 states. [2022-04-08 05:50:06,701 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:06,701 INFO L93 Difference]: Finished difference Result 342 states and 445 transitions. [2022-04-08 05:50:06,702 INFO L276 IsEmpty]: Start isEmpty. Operand 342 states and 445 transitions. [2022-04-08 05:50:06,702 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:06,702 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:06,702 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:50:06,702 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:50:06,703 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-08 05:50:06,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 342 states to 342 states and 445 transitions. [2022-04-08 05:50:06,714 INFO L78 Accepts]: Start accepts. Automaton has 342 states and 445 transitions. Word has length 106 [2022-04-08 05:50:06,714 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:50:06,714 INFO L478 AbstractCegarLoop]: Abstraction has 342 states and 445 transitions. [2022-04-08 05:50:06,714 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:50:06,714 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 342 states and 445 transitions. [2022-04-08 05:50:07,369 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 445 edges. 445 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:07,369 INFO L276 IsEmpty]: Start isEmpty. Operand 342 states and 445 transitions. [2022-04-08 05:50:07,370 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-08 05:50:07,370 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:50:07,370 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 05:50:07,386 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Ended with exit code 0 [2022-04-08 05:50:07,571 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-08 05:50:07,571 INFO L403 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:50:07,572 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:50:07,572 INFO L85 PathProgramCache]: Analyzing trace with hash -1761848073, now seen corresponding path program 3 times [2022-04-08 05:50:07,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:07,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1226923461] [2022-04-08 05:50:07,572 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:50:07,572 INFO L85 PathProgramCache]: Analyzing trace with hash -1761848073, now seen corresponding path program 4 times [2022-04-08 05:50:07,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:50:07,573 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240313464] [2022-04-08 05:50:07,573 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:50:07,573 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:50:07,588 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:50:07,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1179462905] [2022-04-08 05:50:07,588 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:50:07,588 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:07,588 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:50:07,589 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:50:07,590 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-08 05:50:07,652 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:50:07,652 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:50:07,653 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 44 conjunts are in the unsatisfiable core [2022-04-08 05:50:07,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:50:07,673 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:50:10,020 INFO L272 TraceCheckUtils]: 0: Hoare triple {35188#true} call ULTIMATE.init(); {35188#true} is VALID [2022-04-08 05:50:10,020 INFO L290 TraceCheckUtils]: 1: Hoare triple {35188#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);~counter~0 := 0; {35188#true} is VALID [2022-04-08 05:50:10,020 INFO L290 TraceCheckUtils]: 2: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,020 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35188#true} {35188#true} #98#return; {35188#true} is VALID [2022-04-08 05:50:10,020 INFO L272 TraceCheckUtils]: 4: Hoare triple {35188#true} call #t~ret8 := main(); {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L290 TraceCheckUtils]: 5: Hoare triple {35188#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L272 TraceCheckUtils]: 6: Hoare triple {35188#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L290 TraceCheckUtils]: 7: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L290 TraceCheckUtils]: 8: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L290 TraceCheckUtils]: 9: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35188#true} {35188#true} #78#return; {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L272 TraceCheckUtils]: 11: Hoare triple {35188#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L290 TraceCheckUtils]: 12: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L290 TraceCheckUtils]: 13: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L290 TraceCheckUtils]: 14: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,021 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35188#true} {35188#true} #80#return; {35188#true} is VALID [2022-04-08 05:50:10,031 INFO L290 TraceCheckUtils]: 16: Hoare triple {35188#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {35241#(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-08 05:50:10,031 INFO L272 TraceCheckUtils]: 17: Hoare triple {35241#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,031 INFO L290 TraceCheckUtils]: 18: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,032 INFO L290 TraceCheckUtils]: 19: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,032 INFO L290 TraceCheckUtils]: 20: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,033 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {35188#true} {35241#(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))} #82#return; {35241#(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-08 05:50:10,033 INFO L272 TraceCheckUtils]: 22: Hoare triple {35241#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,033 INFO L290 TraceCheckUtils]: 23: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,033 INFO L290 TraceCheckUtils]: 24: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,033 INFO L290 TraceCheckUtils]: 25: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,034 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {35188#true} {35241#(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))} #84#return; {35241#(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-08 05:50:10,034 INFO L290 TraceCheckUtils]: 27: Hoare triple {35241#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35241#(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-08 05:50:10,035 INFO L290 TraceCheckUtils]: 28: Hoare triple {35241#(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 !!(#t~post6 < 20);havoc #t~post6; {35241#(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-08 05:50:10,035 INFO L290 TraceCheckUtils]: 29: Hoare triple {35241#(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);~c~0 := ~a~0;~k~0 := 0; {35281#(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-08 05:50:10,036 INFO L290 TraceCheckUtils]: 30: Hoare triple {35281#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35281#(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-08 05:50:10,037 INFO L290 TraceCheckUtils]: 31: Hoare triple {35281#(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 !!(#t~post7 < 20);havoc #t~post7; {35281#(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-08 05:50:10,037 INFO L272 TraceCheckUtils]: 32: Hoare triple {35281#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,037 INFO L290 TraceCheckUtils]: 33: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,037 INFO L290 TraceCheckUtils]: 34: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,037 INFO L290 TraceCheckUtils]: 35: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,038 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {35188#true} {35281#(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))} #86#return; {35281#(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-08 05:50:10,038 INFO L272 TraceCheckUtils]: 37: Hoare triple {35281#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,038 INFO L290 TraceCheckUtils]: 38: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,038 INFO L290 TraceCheckUtils]: 39: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,038 INFO L290 TraceCheckUtils]: 40: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,039 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {35188#true} {35281#(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))} #88#return; {35281#(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-08 05:50:10,039 INFO L272 TraceCheckUtils]: 42: Hoare triple {35281#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,039 INFO L290 TraceCheckUtils]: 43: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,039 INFO L290 TraceCheckUtils]: 44: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,039 INFO L290 TraceCheckUtils]: 45: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,040 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {35188#true} {35281#(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))} #90#return; {35281#(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-08 05:50:10,040 INFO L272 TraceCheckUtils]: 47: Hoare triple {35281#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,041 INFO L290 TraceCheckUtils]: 48: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,041 INFO L290 TraceCheckUtils]: 49: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,041 INFO L290 TraceCheckUtils]: 50: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,042 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {35188#true} {35281#(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))} #92#return; {35281#(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-08 05:50:10,043 INFO L290 TraceCheckUtils]: 52: Hoare triple {35281#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,044 INFO L290 TraceCheckUtils]: 53: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,044 INFO L290 TraceCheckUtils]: 54: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,044 INFO L272 TraceCheckUtils]: 55: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= 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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,045 INFO L290 TraceCheckUtils]: 56: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,045 INFO L290 TraceCheckUtils]: 57: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,045 INFO L290 TraceCheckUtils]: 58: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,046 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,046 INFO L272 TraceCheckUtils]: 60: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= 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)); {35188#true} is VALID [2022-04-08 05:50:10,046 INFO L290 TraceCheckUtils]: 61: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,046 INFO L290 TraceCheckUtils]: 62: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,046 INFO L290 TraceCheckUtils]: 63: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,047 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,047 INFO L272 TraceCheckUtils]: 65: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~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)); {35188#true} is VALID [2022-04-08 05:50:10,047 INFO L290 TraceCheckUtils]: 66: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,047 INFO L290 TraceCheckUtils]: 67: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,047 INFO L290 TraceCheckUtils]: 68: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,048 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #90#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,048 INFO L272 TraceCheckUtils]: 70: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,048 INFO L290 TraceCheckUtils]: 71: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,048 INFO L290 TraceCheckUtils]: 72: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,048 INFO L290 TraceCheckUtils]: 73: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,049 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #92#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,051 INFO L290 TraceCheckUtils]: 75: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= 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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,051 INFO L290 TraceCheckUtils]: 76: Hoare triple {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,052 INFO L290 TraceCheckUtils]: 77: Hoare triple {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,052 INFO L272 TraceCheckUtils]: 78: Hoare triple {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,052 INFO L290 TraceCheckUtils]: 79: Hoare triple {35188#true} ~cond := #in~cond; {35434#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:10,053 INFO L290 TraceCheckUtils]: 80: Hoare triple {35434#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:10,053 INFO L290 TraceCheckUtils]: 81: Hoare triple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:10,055 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} #86#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,055 INFO L272 TraceCheckUtils]: 83: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= 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)); {35188#true} is VALID [2022-04-08 05:50:10,055 INFO L290 TraceCheckUtils]: 84: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,055 INFO L290 TraceCheckUtils]: 85: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,055 INFO L290 TraceCheckUtils]: 86: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,056 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {35188#true} {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #88#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,056 INFO L272 TraceCheckUtils]: 88: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= 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)); {35188#true} is VALID [2022-04-08 05:50:10,056 INFO L290 TraceCheckUtils]: 89: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,056 INFO L290 TraceCheckUtils]: 90: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,056 INFO L290 TraceCheckUtils]: 91: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,057 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {35188#true} {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #90#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,057 INFO L272 TraceCheckUtils]: 93: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:50:10,057 INFO L290 TraceCheckUtils]: 94: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:50:10,058 INFO L290 TraceCheckUtils]: 95: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:50:10,058 INFO L290 TraceCheckUtils]: 96: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:50:10,059 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {35188#true} {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #92#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,059 INFO L290 TraceCheckUtils]: 98: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {35494#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (< main_~c~0 main_~b~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:10,062 INFO L290 TraceCheckUtils]: 99: Hoare triple {35494#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (< main_~c~0 main_~b~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; {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-08 05:50:10,063 INFO L290 TraceCheckUtils]: 100: Hoare triple {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-08 05:50:10,064 INFO L290 TraceCheckUtils]: 101: Hoare triple {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-08 05:50:10,064 INFO L290 TraceCheckUtils]: 102: Hoare triple {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} assume !(0 != ~b~0); {35508#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) 0) (= (+ (* main_~y~0 2) (* main_~y~0 main_~s~0)) 0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-08 05:50:10,065 INFO L272 TraceCheckUtils]: 103: Hoare triple {35508#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) 0) (= (+ (* main_~y~0 2) (* main_~y~0 main_~s~0)) 0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:10,066 INFO L290 TraceCheckUtils]: 104: Hoare triple {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {35516#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:10,066 INFO L290 TraceCheckUtils]: 105: Hoare triple {35516#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {35189#false} is VALID [2022-04-08 05:50:10,066 INFO L290 TraceCheckUtils]: 106: Hoare triple {35189#false} assume !false; {35189#false} is VALID [2022-04-08 05:50:10,067 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 47 proven. 34 refuted. 0 times theorem prover too weak. 255 trivial. 0 not checked. [2022-04-08 05:50:10,067 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:51:35,175 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:51:38,375 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:51:40,973 INFO L290 TraceCheckUtils]: 106: Hoare triple {35189#false} assume !false; {35189#false} is VALID [2022-04-08 05:51:40,973 INFO L290 TraceCheckUtils]: 105: Hoare triple {35516#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {35189#false} is VALID [2022-04-08 05:51:40,973 INFO L290 TraceCheckUtils]: 104: Hoare triple {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {35516#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:40,974 INFO L272 TraceCheckUtils]: 103: Hoare triple {35532#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:51:40,974 INFO L290 TraceCheckUtils]: 102: Hoare triple {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {35532#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-08 05:51:40,975 INFO L290 TraceCheckUtils]: 101: Hoare triple {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 05:51:40,975 INFO L290 TraceCheckUtils]: 100: Hoare triple {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 05:51:42,977 WARN L290 TraceCheckUtils]: 99: Hoare triple {35546#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~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; {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is UNKNOWN [2022-04-08 05:51:42,978 INFO L290 TraceCheckUtils]: 98: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {35546#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:42,979 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {35188#true} {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #92#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:51:42,979 INFO L290 TraceCheckUtils]: 96: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:42,979 INFO L290 TraceCheckUtils]: 95: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:42,979 INFO L290 TraceCheckUtils]: 94: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:42,979 INFO L272 TraceCheckUtils]: 93: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:42,980 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {35188#true} {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #90#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:51:42,980 INFO L290 TraceCheckUtils]: 91: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:42,980 INFO L290 TraceCheckUtils]: 90: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:42,980 INFO L290 TraceCheckUtils]: 89: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:42,980 INFO L272 TraceCheckUtils]: 88: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:42,981 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {35188#true} {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #88#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:51:42,981 INFO L290 TraceCheckUtils]: 86: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:42,981 INFO L290 TraceCheckUtils]: 85: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:42,981 INFO L290 TraceCheckUtils]: 84: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:42,982 INFO L272 TraceCheckUtils]: 83: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:42,983 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #86#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:51:42,983 INFO L290 TraceCheckUtils]: 81: Hoare triple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:42,983 INFO L290 TraceCheckUtils]: 80: Hoare triple {35609#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:42,984 INFO L290 TraceCheckUtils]: 79: Hoare triple {35188#true} ~cond := #in~cond; {35609#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:51:42,984 INFO L272 TraceCheckUtils]: 78: Hoare triple {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= 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)); {35188#true} is VALID [2022-04-08 05:51:42,984 INFO L290 TraceCheckUtils]: 77: Hoare triple {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !!(#t~post7 < 20);havoc #t~post7; {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:51:42,985 INFO L290 TraceCheckUtils]: 76: Hoare triple {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:51:44,987 WARN L290 TraceCheckUtils]: 75: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is UNKNOWN [2022-04-08 05:51:44,989 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #92#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:44,989 INFO L290 TraceCheckUtils]: 73: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:44,989 INFO L290 TraceCheckUtils]: 72: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:44,989 INFO L290 TraceCheckUtils]: 71: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:44,989 INFO L272 TraceCheckUtils]: 70: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:44,990 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #90#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:44,990 INFO L290 TraceCheckUtils]: 68: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:44,990 INFO L290 TraceCheckUtils]: 67: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:44,990 INFO L290 TraceCheckUtils]: 66: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:44,990 INFO L272 TraceCheckUtils]: 65: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~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)); {35188#true} is VALID [2022-04-08 05:51:44,991 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #88#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:44,991 INFO L290 TraceCheckUtils]: 63: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:44,991 INFO L290 TraceCheckUtils]: 62: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:44,991 INFO L290 TraceCheckUtils]: 61: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:44,991 INFO L272 TraceCheckUtils]: 60: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~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)); {35188#true} is VALID [2022-04-08 05:51:44,992 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #86#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:44,992 INFO L290 TraceCheckUtils]: 58: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:44,992 INFO L290 TraceCheckUtils]: 57: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:44,992 INFO L290 TraceCheckUtils]: 56: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:44,992 INFO L272 TraceCheckUtils]: 55: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~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)); {35188#true} is VALID [2022-04-08 05:51:44,993 INFO L290 TraceCheckUtils]: 54: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:44,994 INFO L290 TraceCheckUtils]: 53: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:46,996 WARN L290 TraceCheckUtils]: 52: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is UNKNOWN [2022-04-08 05:51:46,997 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #92#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-08 05:51:46,997 INFO L290 TraceCheckUtils]: 50: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:46,997 INFO L290 TraceCheckUtils]: 49: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:46,997 INFO L290 TraceCheckUtils]: 48: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:46,997 INFO L272 TraceCheckUtils]: 47: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:46,998 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #90#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-08 05:51:46,998 INFO L290 TraceCheckUtils]: 45: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:46,998 INFO L290 TraceCheckUtils]: 44: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:46,998 INFO L290 TraceCheckUtils]: 43: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:46,998 INFO L272 TraceCheckUtils]: 42: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:46,999 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #88#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-08 05:51:46,999 INFO L290 TraceCheckUtils]: 40: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:46,999 INFO L290 TraceCheckUtils]: 39: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:46,999 INFO L290 TraceCheckUtils]: 38: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:47,000 INFO L272 TraceCheckUtils]: 37: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:47,000 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #86#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-08 05:51:47,000 INFO L290 TraceCheckUtils]: 35: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:47,000 INFO L290 TraceCheckUtils]: 34: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:47,000 INFO L290 TraceCheckUtils]: 33: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:47,001 INFO L272 TraceCheckUtils]: 32: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:47,001 INFO L290 TraceCheckUtils]: 31: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-08 05:51:47,002 INFO L290 TraceCheckUtils]: 30: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-08 05:51:47,002 INFO L290 TraceCheckUtils]: 29: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-08 05:51:47,003 INFO L290 TraceCheckUtils]: 28: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post6 < 20);havoc #t~post6; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:47,003 INFO L290 TraceCheckUtils]: 27: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:47,004 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {35188#true} {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #84#return; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:47,004 INFO L290 TraceCheckUtils]: 25: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:47,004 INFO L290 TraceCheckUtils]: 24: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:47,004 INFO L290 TraceCheckUtils]: 23: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:47,004 INFO L272 TraceCheckUtils]: 22: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:47,005 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {35188#true} {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #82#return; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:47,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:47,005 INFO L290 TraceCheckUtils]: 19: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:47,005 INFO L290 TraceCheckUtils]: 18: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:47,005 INFO L272 TraceCheckUtils]: 17: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:47,006 INFO L290 TraceCheckUtils]: 16: Hoare triple {35188#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:51:47,006 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35188#true} {35188#true} #80#return; {35188#true} is VALID [2022-04-08 05:51:47,006 INFO L290 TraceCheckUtils]: 14: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:47,006 INFO L290 TraceCheckUtils]: 13: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:47,006 INFO L290 TraceCheckUtils]: 12: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:47,006 INFO L272 TraceCheckUtils]: 11: Hoare triple {35188#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:47,006 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35188#true} {35188#true} #78#return; {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L272 TraceCheckUtils]: 6: Hoare triple {35188#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L290 TraceCheckUtils]: 5: Hoare triple {35188#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L272 TraceCheckUtils]: 4: Hoare triple {35188#true} call #t~ret8 := main(); {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35188#true} {35188#true} #98#return; {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {35188#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);~counter~0 := 0; {35188#true} is VALID [2022-04-08 05:51:47,007 INFO L272 TraceCheckUtils]: 0: Hoare triple {35188#true} call ULTIMATE.init(); {35188#true} is VALID [2022-04-08 05:51:47,008 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 47 proven. 34 refuted. 0 times theorem prover too weak. 255 trivial. 0 not checked. [2022-04-08 05:51:47,008 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:51:47,008 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1240313464] [2022-04-08 05:51:47,008 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:51:47,008 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1179462905] [2022-04-08 05:51:47,008 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1179462905] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:51:47,008 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:51:47,008 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 23 [2022-04-08 05:51:47,008 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:51:47,009 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1226923461] [2022-04-08 05:51:47,009 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1226923461] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:51:47,009 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:51:47,009 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 05:51:47,009 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [59856407] [2022-04-08 05:51:47,009 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:51:47,015 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) Word has length 107 [2022-04-08 05:51:47,015 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:51:47,015 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 05:51:47,097 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:47,097 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 05:51:47,097 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:47,098 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 05:51:47,098 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=416, Unknown=0, NotChecked=0, Total=506 [2022-04-08 05:51:47,098 INFO L87 Difference]: Start difference. First operand 342 states and 445 transitions. Second operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 05:51:53,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:53,957 INFO L93 Difference]: Finished difference Result 369 states and 485 transitions. [2022-04-08 05:51:53,957 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 05:51:53,958 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) Word has length 107 [2022-04-08 05:51:53,958 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:51:53,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 05:51:53,959 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-08 05:51:53,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 05:51:53,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-08 05:51:53,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 125 transitions. [2022-04-08 05:51:54,105 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:54,112 INFO L225 Difference]: With dead ends: 369 [2022-04-08 05:51:54,112 INFO L226 Difference]: Without dead ends: 366 [2022-04-08 05:51:54,112 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 218 GetRequests, 191 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 155 ImplicationChecksByTransitivity, 3.2s TimeCoverageRelationStatistics Valid=140, Invalid=616, Unknown=0, NotChecked=0, Total=756 [2022-04-08 05:51:54,113 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 37 mSDsluCounter, 282 mSDsCounter, 0 mSdLazyCounter, 615 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 335 SdHoareTripleChecker+Invalid, 654 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 615 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-08 05:51:54,113 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 335 Invalid, 654 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 615 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-08 05:51:54,113 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 366 states. [2022-04-08 05:51:54,832 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 366 to 364. [2022-04-08 05:51:54,832 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:51:54,833 INFO L82 GeneralOperation]: Start isEquivalent. First operand 366 states. Second operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-08 05:51:54,833 INFO L74 IsIncluded]: Start isIncluded. First operand 366 states. Second operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-08 05:51:54,834 INFO L87 Difference]: Start difference. First operand 366 states. Second operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-08 05:51:54,842 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:54,842 INFO L93 Difference]: Finished difference Result 366 states and 481 transitions. [2022-04-08 05:51:54,842 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 481 transitions. [2022-04-08 05:51:54,843 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:54,843 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:54,843 INFO L74 IsIncluded]: Start isIncluded. First operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) Second operand 366 states. [2022-04-08 05:51:54,844 INFO L87 Difference]: Start difference. First operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) Second operand 366 states. [2022-04-08 05:51:54,852 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:54,852 INFO L93 Difference]: Finished difference Result 366 states and 481 transitions. [2022-04-08 05:51:54,853 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 481 transitions. [2022-04-08 05:51:54,853 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:54,853 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:54,854 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:51:54,854 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:51:54,854 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-08 05:51:54,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 364 states to 364 states and 479 transitions. [2022-04-08 05:51:54,866 INFO L78 Accepts]: Start accepts. Automaton has 364 states and 479 transitions. Word has length 107 [2022-04-08 05:51:54,866 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:51:54,866 INFO L478 AbstractCegarLoop]: Abstraction has 364 states and 479 transitions. [2022-04-08 05:51:54,866 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 05:51:54,866 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 364 states and 479 transitions. [2022-04-08 05:51:55,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 479 edges. 479 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:55,802 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 479 transitions. [2022-04-08 05:51:55,803 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2022-04-08 05:51:55,803 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:51:55,804 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:51:55,832 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-08 05:51:56,004 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-08 05:51:56,004 INFO L403 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:51:56,005 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:51:56,005 INFO L85 PathProgramCache]: Analyzing trace with hash 1514731471, now seen corresponding path program 5 times [2022-04-08 05:51:56,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:56,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1179352338] [2022-04-08 05:51:56,005 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:51:56,005 INFO L85 PathProgramCache]: Analyzing trace with hash 1514731471, now seen corresponding path program 6 times [2022-04-08 05:51:56,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:51:56,006 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1473639719] [2022-04-08 05:51:56,006 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:51:56,006 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:51:56,020 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:51:56,021 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [221003560] [2022-04-08 05:51:56,021 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:51:56,021 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:51:56,021 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:51:56,022 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:51:56,023 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-08 05:51:56,126 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:51:56,126 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:51:56,127 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 05:51:56,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:51:56,156 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:51:56,644 INFO L272 TraceCheckUtils]: 0: Hoare triple {38060#true} call ULTIMATE.init(); {38060#true} is VALID [2022-04-08 05:51:56,644 INFO L290 TraceCheckUtils]: 1: Hoare triple {38060#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);~counter~0 := 0; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,645 INFO L290 TraceCheckUtils]: 2: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,645 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38068#(<= ~counter~0 0)} {38060#true} #98#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,645 INFO L272 TraceCheckUtils]: 4: Hoare triple {38068#(<= ~counter~0 0)} call #t~ret8 := main(); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,646 INFO L290 TraceCheckUtils]: 5: Hoare triple {38068#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,646 INFO L272 TraceCheckUtils]: 6: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,646 INFO L290 TraceCheckUtils]: 7: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,647 INFO L290 TraceCheckUtils]: 8: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,647 INFO L290 TraceCheckUtils]: 9: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,647 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #78#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,648 INFO L272 TraceCheckUtils]: 11: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,648 INFO L290 TraceCheckUtils]: 12: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,648 INFO L290 TraceCheckUtils]: 13: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,648 INFO L290 TraceCheckUtils]: 14: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,649 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #80#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,649 INFO L290 TraceCheckUtils]: 16: Hoare triple {38068#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,650 INFO L272 TraceCheckUtils]: 17: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,650 INFO L290 TraceCheckUtils]: 18: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,650 INFO L290 TraceCheckUtils]: 19: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,650 INFO L290 TraceCheckUtils]: 20: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,651 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #82#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,651 INFO L272 TraceCheckUtils]: 22: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,658 INFO L290 TraceCheckUtils]: 23: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,659 INFO L290 TraceCheckUtils]: 24: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,659 INFO L290 TraceCheckUtils]: 25: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,660 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #84#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-08 05:51:56,661 INFO L290 TraceCheckUtils]: 27: Hoare triple {38068#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38147#(<= ~counter~0 1)} is VALID [2022-04-08 05:51:56,661 INFO L290 TraceCheckUtils]: 28: Hoare triple {38147#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {38147#(<= ~counter~0 1)} is VALID [2022-04-08 05:51:56,662 INFO L290 TraceCheckUtils]: 29: Hoare triple {38147#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38147#(<= ~counter~0 1)} is VALID [2022-04-08 05:51:56,662 INFO L290 TraceCheckUtils]: 30: Hoare triple {38147#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,662 INFO L290 TraceCheckUtils]: 31: Hoare triple {38157#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,663 INFO L272 TraceCheckUtils]: 32: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,663 INFO L290 TraceCheckUtils]: 33: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,664 INFO L290 TraceCheckUtils]: 34: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,664 INFO L290 TraceCheckUtils]: 35: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,664 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #86#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,665 INFO L272 TraceCheckUtils]: 37: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,665 INFO L290 TraceCheckUtils]: 38: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,665 INFO L290 TraceCheckUtils]: 39: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,666 INFO L290 TraceCheckUtils]: 40: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,666 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #88#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,667 INFO L272 TraceCheckUtils]: 42: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,667 INFO L290 TraceCheckUtils]: 43: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,667 INFO L290 TraceCheckUtils]: 44: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,668 INFO L290 TraceCheckUtils]: 45: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,669 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #90#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,669 INFO L272 TraceCheckUtils]: 47: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,670 INFO L290 TraceCheckUtils]: 48: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,670 INFO L290 TraceCheckUtils]: 49: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,670 INFO L290 TraceCheckUtils]: 50: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,671 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #92#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,671 INFO L290 TraceCheckUtils]: 52: Hoare triple {38157#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,672 INFO L290 TraceCheckUtils]: 53: Hoare triple {38157#(<= ~counter~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; {38157#(<= ~counter~0 2)} is VALID [2022-04-08 05:51:56,672 INFO L290 TraceCheckUtils]: 54: Hoare triple {38157#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38230#(<= ~counter~0 3)} is VALID [2022-04-08 05:51:56,672 INFO L290 TraceCheckUtils]: 55: Hoare triple {38230#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {38230#(<= ~counter~0 3)} is VALID [2022-04-08 05:51:56,673 INFO L290 TraceCheckUtils]: 56: Hoare triple {38230#(<= ~counter~0 3)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38230#(<= ~counter~0 3)} is VALID [2022-04-08 05:51:56,673 INFO L290 TraceCheckUtils]: 57: Hoare triple {38230#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,674 INFO L290 TraceCheckUtils]: 58: Hoare triple {38240#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,674 INFO L272 TraceCheckUtils]: 59: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,674 INFO L290 TraceCheckUtils]: 60: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,675 INFO L290 TraceCheckUtils]: 61: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,675 INFO L290 TraceCheckUtils]: 62: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,675 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #86#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,676 INFO L272 TraceCheckUtils]: 64: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,676 INFO L290 TraceCheckUtils]: 65: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,677 INFO L290 TraceCheckUtils]: 66: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,677 INFO L290 TraceCheckUtils]: 67: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,677 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #88#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,678 INFO L272 TraceCheckUtils]: 69: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,678 INFO L290 TraceCheckUtils]: 70: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,679 INFO L290 TraceCheckUtils]: 71: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,679 INFO L290 TraceCheckUtils]: 72: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,679 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #90#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,680 INFO L272 TraceCheckUtils]: 74: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,680 INFO L290 TraceCheckUtils]: 75: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,681 INFO L290 TraceCheckUtils]: 76: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,681 INFO L290 TraceCheckUtils]: 77: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,681 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #92#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,682 INFO L290 TraceCheckUtils]: 79: Hoare triple {38240#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {38240#(<= ~counter~0 4)} is VALID [2022-04-08 05:51:56,683 INFO L290 TraceCheckUtils]: 80: Hoare triple {38240#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,683 INFO L290 TraceCheckUtils]: 81: Hoare triple {38310#(<= ~counter~0 5)} assume !!(#t~post7 < 20);havoc #t~post7; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,683 INFO L272 TraceCheckUtils]: 82: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,684 INFO L290 TraceCheckUtils]: 83: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,684 INFO L290 TraceCheckUtils]: 84: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,684 INFO L290 TraceCheckUtils]: 85: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,685 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #86#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,685 INFO L272 TraceCheckUtils]: 87: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,686 INFO L290 TraceCheckUtils]: 88: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,686 INFO L290 TraceCheckUtils]: 89: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,686 INFO L290 TraceCheckUtils]: 90: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,687 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #88#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,687 INFO L272 TraceCheckUtils]: 92: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,687 INFO L290 TraceCheckUtils]: 93: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,688 INFO L290 TraceCheckUtils]: 94: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,688 INFO L290 TraceCheckUtils]: 95: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,689 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #90#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,689 INFO L272 TraceCheckUtils]: 97: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,689 INFO L290 TraceCheckUtils]: 98: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,690 INFO L290 TraceCheckUtils]: 99: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,690 INFO L290 TraceCheckUtils]: 100: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,691 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #92#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,691 INFO L290 TraceCheckUtils]: 102: Hoare triple {38310#(<= ~counter~0 5)} assume !(~c~0 >= ~b~0); {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,691 INFO L290 TraceCheckUtils]: 103: Hoare triple {38310#(<= ~counter~0 5)} ~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; {38310#(<= ~counter~0 5)} is VALID [2022-04-08 05:51:56,692 INFO L290 TraceCheckUtils]: 104: Hoare triple {38310#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38383#(<= |main_#t~post6| 5)} is VALID [2022-04-08 05:51:56,692 INFO L290 TraceCheckUtils]: 105: Hoare triple {38383#(<= |main_#t~post6| 5)} assume !(#t~post6 < 20);havoc #t~post6; {38061#false} is VALID [2022-04-08 05:51:56,692 INFO L272 TraceCheckUtils]: 106: Hoare triple {38061#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {38061#false} is VALID [2022-04-08 05:51:56,692 INFO L290 TraceCheckUtils]: 107: Hoare triple {38061#false} ~cond := #in~cond; {38061#false} is VALID [2022-04-08 05:51:56,692 INFO L290 TraceCheckUtils]: 108: Hoare triple {38061#false} assume 0 == ~cond; {38061#false} is VALID [2022-04-08 05:51:56,692 INFO L290 TraceCheckUtils]: 109: Hoare triple {38061#false} assume !false; {38061#false} is VALID [2022-04-08 05:51:56,693 INFO L134 CoverageAnalysis]: Checked inductivity of 341 backedges. 24 proven. 221 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-08 05:51:56,693 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:51:57,148 INFO L290 TraceCheckUtils]: 109: Hoare triple {38061#false} assume !false; {38061#false} is VALID [2022-04-08 05:51:57,148 INFO L290 TraceCheckUtils]: 108: Hoare triple {38061#false} assume 0 == ~cond; {38061#false} is VALID [2022-04-08 05:51:57,148 INFO L290 TraceCheckUtils]: 107: Hoare triple {38061#false} ~cond := #in~cond; {38061#false} is VALID [2022-04-08 05:51:57,148 INFO L272 TraceCheckUtils]: 106: Hoare triple {38061#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {38061#false} is VALID [2022-04-08 05:51:57,148 INFO L290 TraceCheckUtils]: 105: Hoare triple {38411#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {38061#false} is VALID [2022-04-08 05:51:57,149 INFO L290 TraceCheckUtils]: 104: Hoare triple {38415#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38411#(< |main_#t~post6| 20)} is VALID [2022-04-08 05:51:57,149 INFO L290 TraceCheckUtils]: 103: Hoare triple {38415#(< ~counter~0 20)} ~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; {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,149 INFO L290 TraceCheckUtils]: 102: Hoare triple {38415#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,150 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38060#true} {38415#(< ~counter~0 20)} #92#return; {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,150 INFO L290 TraceCheckUtils]: 100: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,150 INFO L290 TraceCheckUtils]: 99: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,150 INFO L290 TraceCheckUtils]: 98: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,150 INFO L272 TraceCheckUtils]: 97: Hoare triple {38415#(< ~counter~0 20)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,151 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38060#true} {38415#(< ~counter~0 20)} #90#return; {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,151 INFO L290 TraceCheckUtils]: 95: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,151 INFO L290 TraceCheckUtils]: 94: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,151 INFO L290 TraceCheckUtils]: 93: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,151 INFO L272 TraceCheckUtils]: 92: Hoare triple {38415#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,152 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38060#true} {38415#(< ~counter~0 20)} #88#return; {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,152 INFO L290 TraceCheckUtils]: 90: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,152 INFO L290 TraceCheckUtils]: 89: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,152 INFO L290 TraceCheckUtils]: 88: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,152 INFO L272 TraceCheckUtils]: 87: Hoare triple {38415#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,152 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38060#true} {38415#(< ~counter~0 20)} #86#return; {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,153 INFO L290 TraceCheckUtils]: 85: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,153 INFO L290 TraceCheckUtils]: 84: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,153 INFO L290 TraceCheckUtils]: 83: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,153 INFO L272 TraceCheckUtils]: 82: Hoare triple {38415#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,153 INFO L290 TraceCheckUtils]: 81: Hoare triple {38415#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,154 INFO L290 TraceCheckUtils]: 80: Hoare triple {38488#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38415#(< ~counter~0 20)} is VALID [2022-04-08 05:51:57,154 INFO L290 TraceCheckUtils]: 79: Hoare triple {38488#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {38488#(< ~counter~0 19)} is VALID [2022-04-08 05:51:57,155 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {38060#true} {38488#(< ~counter~0 19)} #92#return; {38488#(< ~counter~0 19)} is VALID [2022-04-08 05:51:57,155 INFO L290 TraceCheckUtils]: 77: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,155 INFO L290 TraceCheckUtils]: 76: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,155 INFO L290 TraceCheckUtils]: 75: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,155 INFO L272 TraceCheckUtils]: 74: Hoare triple {38488#(< ~counter~0 19)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,156 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {38060#true} {38488#(< ~counter~0 19)} #90#return; {38488#(< ~counter~0 19)} is VALID [2022-04-08 05:51:57,156 INFO L290 TraceCheckUtils]: 72: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,156 INFO L290 TraceCheckUtils]: 71: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,156 INFO L290 TraceCheckUtils]: 70: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,156 INFO L272 TraceCheckUtils]: 69: Hoare triple {38488#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,157 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {38060#true} {38488#(< ~counter~0 19)} #88#return; {38488#(< ~counter~0 19)} is VALID [2022-04-08 05:51:57,157 INFO L290 TraceCheckUtils]: 67: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,157 INFO L290 TraceCheckUtils]: 66: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,157 INFO L290 TraceCheckUtils]: 65: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,157 INFO L272 TraceCheckUtils]: 64: Hoare triple {38488#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,158 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38060#true} {38488#(< ~counter~0 19)} #86#return; {38488#(< ~counter~0 19)} is VALID [2022-04-08 05:51:57,158 INFO L290 TraceCheckUtils]: 62: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,158 INFO L290 TraceCheckUtils]: 61: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,158 INFO L290 TraceCheckUtils]: 60: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,158 INFO L272 TraceCheckUtils]: 59: Hoare triple {38488#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,158 INFO L290 TraceCheckUtils]: 58: Hoare triple {38488#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {38488#(< ~counter~0 19)} is VALID [2022-04-08 05:51:57,159 INFO L290 TraceCheckUtils]: 57: Hoare triple {38558#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38488#(< ~counter~0 19)} is VALID [2022-04-08 05:51:57,159 INFO L290 TraceCheckUtils]: 56: Hoare triple {38558#(< ~counter~0 18)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38558#(< ~counter~0 18)} is VALID [2022-04-08 05:51:57,159 INFO L290 TraceCheckUtils]: 55: Hoare triple {38558#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {38558#(< ~counter~0 18)} is VALID [2022-04-08 05:51:57,160 INFO L290 TraceCheckUtils]: 54: Hoare triple {38568#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38558#(< ~counter~0 18)} is VALID [2022-04-08 05:51:57,160 INFO L290 TraceCheckUtils]: 53: Hoare triple {38568#(< ~counter~0 17)} ~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; {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,160 INFO L290 TraceCheckUtils]: 52: Hoare triple {38568#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,161 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {38060#true} {38568#(< ~counter~0 17)} #92#return; {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,161 INFO L290 TraceCheckUtils]: 50: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,161 INFO L290 TraceCheckUtils]: 49: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,161 INFO L290 TraceCheckUtils]: 48: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,161 INFO L272 TraceCheckUtils]: 47: Hoare triple {38568#(< ~counter~0 17)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,162 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {38060#true} {38568#(< ~counter~0 17)} #90#return; {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,162 INFO L290 TraceCheckUtils]: 45: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,162 INFO L290 TraceCheckUtils]: 44: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,162 INFO L290 TraceCheckUtils]: 43: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,162 INFO L272 TraceCheckUtils]: 42: Hoare triple {38568#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,163 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {38060#true} {38568#(< ~counter~0 17)} #88#return; {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,163 INFO L290 TraceCheckUtils]: 40: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,163 INFO L290 TraceCheckUtils]: 39: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,163 INFO L290 TraceCheckUtils]: 38: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,163 INFO L272 TraceCheckUtils]: 37: Hoare triple {38568#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,164 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {38060#true} {38568#(< ~counter~0 17)} #86#return; {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,164 INFO L290 TraceCheckUtils]: 35: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,164 INFO L290 TraceCheckUtils]: 34: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,164 INFO L290 TraceCheckUtils]: 33: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,164 INFO L272 TraceCheckUtils]: 32: Hoare triple {38568#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,164 INFO L290 TraceCheckUtils]: 31: Hoare triple {38568#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,165 INFO L290 TraceCheckUtils]: 30: Hoare triple {38641#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38568#(< ~counter~0 17)} is VALID [2022-04-08 05:51:57,165 INFO L290 TraceCheckUtils]: 29: Hoare triple {38641#(< ~counter~0 16)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38641#(< ~counter~0 16)} is VALID [2022-04-08 05:51:57,165 INFO L290 TraceCheckUtils]: 28: Hoare triple {38641#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {38641#(< ~counter~0 16)} is VALID [2022-04-08 05:51:57,166 INFO L290 TraceCheckUtils]: 27: Hoare triple {38651#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38641#(< ~counter~0 16)} is VALID [2022-04-08 05:51:57,166 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38060#true} {38651#(< ~counter~0 15)} #84#return; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,166 INFO L290 TraceCheckUtils]: 25: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,166 INFO L290 TraceCheckUtils]: 24: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,167 INFO L290 TraceCheckUtils]: 23: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,167 INFO L272 TraceCheckUtils]: 22: Hoare triple {38651#(< ~counter~0 15)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,167 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38060#true} {38651#(< ~counter~0 15)} #82#return; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,167 INFO L290 TraceCheckUtils]: 20: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,167 INFO L290 TraceCheckUtils]: 19: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,167 INFO L290 TraceCheckUtils]: 18: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,167 INFO L272 TraceCheckUtils]: 17: Hoare triple {38651#(< ~counter~0 15)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,168 INFO L290 TraceCheckUtils]: 16: Hoare triple {38651#(< ~counter~0 15)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,168 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38060#true} {38651#(< ~counter~0 15)} #80#return; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,168 INFO L290 TraceCheckUtils]: 14: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,168 INFO L272 TraceCheckUtils]: 11: Hoare triple {38651#(< ~counter~0 15)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,169 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38060#true} {38651#(< ~counter~0 15)} #78#return; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-08 05:51:57,169 INFO L290 TraceCheckUtils]: 8: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-08 05:51:57,169 INFO L290 TraceCheckUtils]: 7: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-08 05:51:57,169 INFO L272 TraceCheckUtils]: 6: Hoare triple {38651#(< ~counter~0 15)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38060#true} is VALID [2022-04-08 05:51:57,169 INFO L290 TraceCheckUtils]: 5: Hoare triple {38651#(< ~counter~0 15)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,170 INFO L272 TraceCheckUtils]: 4: Hoare triple {38651#(< ~counter~0 15)} call #t~ret8 := main(); {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,170 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38651#(< ~counter~0 15)} {38060#true} #98#return; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {38651#(< ~counter~0 15)} assume true; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {38060#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);~counter~0 := 0; {38651#(< ~counter~0 15)} is VALID [2022-04-08 05:51:57,171 INFO L272 TraceCheckUtils]: 0: Hoare triple {38060#true} call ULTIMATE.init(); {38060#true} is VALID [2022-04-08 05:51:57,171 INFO L134 CoverageAnalysis]: Checked inductivity of 341 backedges. 24 proven. 29 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-08 05:51:57,171 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:51:57,171 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1473639719] [2022-04-08 05:51:57,171 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:51:57,171 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [221003560] [2022-04-08 05:51:57,171 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [221003560] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:51:57,171 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:51:57,172 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-08 05:51:57,172 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:51:57,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1179352338] [2022-04-08 05:51:57,172 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1179352338] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:51:57,172 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:51:57,172 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:51:57,172 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [12206207] [2022-04-08 05:51:57,172 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:51:57,173 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 110 [2022-04-08 05:51:57,173 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:51:57,173 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:51:57,234 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:57,235 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:51:57,235 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:57,235 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:51:57,235 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:51:57,235 INFO L87 Difference]: Start difference. First operand 364 states and 479 transitions. Second operand has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:51:58,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:58,462 INFO L93 Difference]: Finished difference Result 434 states and 549 transitions. [2022-04-08 05:51:58,462 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 05:51:58,462 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 110 [2022-04-08 05:51:58,462 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:51:58,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:51:58,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 133 transitions. [2022-04-08 05:51:58,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:51:58,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 133 transitions. [2022-04-08 05:51:58,466 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 133 transitions. [2022-04-08 05:51:58,609 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:58,622 INFO L225 Difference]: With dead ends: 434 [2022-04-08 05:51:58,622 INFO L226 Difference]: Without dead ends: 425 [2022-04-08 05:51:58,623 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 223 GetRequests, 205 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=153, Invalid=227, Unknown=0, NotChecked=0, Total=380 [2022-04-08 05:51:58,623 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 42 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 66 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 211 SdHoareTripleChecker+Invalid, 106 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 66 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:51:58,623 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 211 Invalid, 106 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 66 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:51:58,624 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 425 states. [2022-04-08 05:51:59,458 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 425 to 423. [2022-04-08 05:51:59,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:51:59,458 INFO L82 GeneralOperation]: Start isEquivalent. First operand 425 states. Second operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 05:51:59,459 INFO L74 IsIncluded]: Start isIncluded. First operand 425 states. Second operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 05:51:59,459 INFO L87 Difference]: Start difference. First operand 425 states. Second operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 05:51:59,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:59,466 INFO L93 Difference]: Finished difference Result 425 states and 538 transitions. [2022-04-08 05:51:59,466 INFO L276 IsEmpty]: Start isEmpty. Operand 425 states and 538 transitions. [2022-04-08 05:51:59,467 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:59,467 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:59,468 INFO L74 IsIncluded]: Start isIncluded. First operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) Second operand 425 states. [2022-04-08 05:51:59,468 INFO L87 Difference]: Start difference. First operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) Second operand 425 states. [2022-04-08 05:51:59,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:59,479 INFO L93 Difference]: Finished difference Result 425 states and 538 transitions. [2022-04-08 05:51:59,479 INFO L276 IsEmpty]: Start isEmpty. Operand 425 states and 538 transitions. [2022-04-08 05:51:59,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:59,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:59,480 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:51:59,480 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:51:59,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-08 05:51:59,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 423 states to 423 states and 536 transitions. [2022-04-08 05:51:59,496 INFO L78 Accepts]: Start accepts. Automaton has 423 states and 536 transitions. Word has length 110 [2022-04-08 05:51:59,496 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:51:59,496 INFO L478 AbstractCegarLoop]: Abstraction has 423 states and 536 transitions. [2022-04-08 05:51:59,497 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:51:59,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 423 states and 536 transitions. [2022-04-08 05:52:00,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 536 edges. 536 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:00,463 INFO L276 IsEmpty]: Start isEmpty. Operand 423 states and 536 transitions. [2022-04-08 05:52:00,463 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-08 05:52:00,463 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:52:00,463 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 05:52:00,469 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-08 05:52:00,664 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-08 05:52:00,664 INFO L403 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:52:00,664 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:52:00,664 INFO L85 PathProgramCache]: Analyzing trace with hash -289933735, now seen corresponding path program 5 times [2022-04-08 05:52:00,664 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:00,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1619441692] [2022-04-08 05:52:00,665 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:52:00,665 INFO L85 PathProgramCache]: Analyzing trace with hash -289933735, now seen corresponding path program 6 times [2022-04-08 05:52:00,665 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:52:00,665 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [953601597] [2022-04-08 05:52:00,665 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:52:00,665 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:52:00,678 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:52:00,678 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [268224306] [2022-04-08 05:52:00,678 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:52:00,679 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:52:00,679 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:52:00,679 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:52:00,680 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-08 05:52:00,744 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:52:00,744 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:52:00,745 INFO L263 TraceCheckSpWp]: Trace formula consists of 269 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 05:52:00,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:52:00,763 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:52:01,058 INFO L272 TraceCheckUtils]: 0: Hoare triple {41307#true} call ULTIMATE.init(); {41307#true} is VALID [2022-04-08 05:52:01,058 INFO L290 TraceCheckUtils]: 1: Hoare triple {41307#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);~counter~0 := 0; {41307#true} is VALID [2022-04-08 05:52:01,058 INFO L290 TraceCheckUtils]: 2: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,058 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41307#true} {41307#true} #98#return; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L272 TraceCheckUtils]: 4: Hoare triple {41307#true} call #t~ret8 := main(); {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 5: Hoare triple {41307#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L272 TraceCheckUtils]: 6: Hoare triple {41307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 7: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 8: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 9: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41307#true} {41307#true} #78#return; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L272 TraceCheckUtils]: 11: Hoare triple {41307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 12: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 13: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 14: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41307#true} {41307#true} #80#return; {41307#true} is VALID [2022-04-08 05:52:01,059 INFO L290 TraceCheckUtils]: 16: Hoare triple {41307#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {41307#true} is VALID [2022-04-08 05:52:01,063 INFO L272 TraceCheckUtils]: 17: Hoare triple {41307#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,063 INFO L290 TraceCheckUtils]: 18: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,063 INFO L290 TraceCheckUtils]: 19: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,063 INFO L290 TraceCheckUtils]: 20: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,063 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41307#true} {41307#true} #82#return; {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L272 TraceCheckUtils]: 22: Hoare triple {41307#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L290 TraceCheckUtils]: 23: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L290 TraceCheckUtils]: 24: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L290 TraceCheckUtils]: 25: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41307#true} {41307#true} #84#return; {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L290 TraceCheckUtils]: 27: Hoare triple {41307#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L290 TraceCheckUtils]: 28: Hoare triple {41307#true} assume !!(#t~post6 < 20);havoc #t~post6; {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L290 TraceCheckUtils]: 29: Hoare triple {41307#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41307#true} is VALID [2022-04-08 05:52:01,064 INFO L290 TraceCheckUtils]: 30: Hoare triple {41307#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L290 TraceCheckUtils]: 31: Hoare triple {41307#true} assume !!(#t~post7 < 20);havoc #t~post7; {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L272 TraceCheckUtils]: 32: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L290 TraceCheckUtils]: 33: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L290 TraceCheckUtils]: 34: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L290 TraceCheckUtils]: 35: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {41307#true} {41307#true} #86#return; {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L272 TraceCheckUtils]: 37: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L290 TraceCheckUtils]: 38: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,065 INFO L290 TraceCheckUtils]: 39: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L290 TraceCheckUtils]: 40: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {41307#true} {41307#true} #88#return; {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L272 TraceCheckUtils]: 42: Hoare triple {41307#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L290 TraceCheckUtils]: 43: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L290 TraceCheckUtils]: 44: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L290 TraceCheckUtils]: 45: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {41307#true} {41307#true} #90#return; {41307#true} is VALID [2022-04-08 05:52:01,066 INFO L272 TraceCheckUtils]: 47: Hoare triple {41307#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,067 INFO L290 TraceCheckUtils]: 48: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,067 INFO L290 TraceCheckUtils]: 49: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,067 INFO L290 TraceCheckUtils]: 50: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,067 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {41307#true} {41307#true} #92#return; {41307#true} is VALID [2022-04-08 05:52:01,071 INFO L290 TraceCheckUtils]: 52: Hoare triple {41307#true} assume !(~c~0 >= ~b~0); {41468#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:52:01,072 INFO L290 TraceCheckUtils]: 53: Hoare triple {41468#(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; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:52:01,072 INFO L290 TraceCheckUtils]: 54: Hoare triple {41472#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:52:01,073 INFO L290 TraceCheckUtils]: 55: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:52:01,073 INFO L290 TraceCheckUtils]: 56: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,073 INFO L290 TraceCheckUtils]: 57: Hoare triple {41482#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,074 INFO L290 TraceCheckUtils]: 58: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,074 INFO L272 TraceCheckUtils]: 59: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,074 INFO L290 TraceCheckUtils]: 60: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,074 INFO L290 TraceCheckUtils]: 61: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,074 INFO L290 TraceCheckUtils]: 62: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,075 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #86#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,075 INFO L272 TraceCheckUtils]: 64: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,075 INFO L290 TraceCheckUtils]: 65: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,075 INFO L290 TraceCheckUtils]: 66: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,075 INFO L290 TraceCheckUtils]: 67: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,076 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #88#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,076 INFO L272 TraceCheckUtils]: 69: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,076 INFO L290 TraceCheckUtils]: 70: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,076 INFO L290 TraceCheckUtils]: 71: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,076 INFO L290 TraceCheckUtils]: 72: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,077 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #90#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,077 INFO L272 TraceCheckUtils]: 74: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,077 INFO L290 TraceCheckUtils]: 75: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,077 INFO L290 TraceCheckUtils]: 76: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,078 INFO L290 TraceCheckUtils]: 77: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,078 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #92#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,080 INFO L290 TraceCheckUtils]: 79: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,080 INFO L290 TraceCheckUtils]: 80: Hoare triple {41552#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,081 INFO L290 TraceCheckUtils]: 81: Hoare triple {41552#(< 0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,081 INFO L272 TraceCheckUtils]: 82: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,081 INFO L290 TraceCheckUtils]: 83: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,081 INFO L290 TraceCheckUtils]: 84: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,081 INFO L290 TraceCheckUtils]: 85: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,082 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #86#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,082 INFO L272 TraceCheckUtils]: 87: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,082 INFO L290 TraceCheckUtils]: 88: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,082 INFO L290 TraceCheckUtils]: 89: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,082 INFO L290 TraceCheckUtils]: 90: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,083 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #88#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,083 INFO L272 TraceCheckUtils]: 92: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,083 INFO L290 TraceCheckUtils]: 93: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,083 INFO L290 TraceCheckUtils]: 94: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,083 INFO L290 TraceCheckUtils]: 95: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,084 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #90#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,084 INFO L272 TraceCheckUtils]: 97: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,084 INFO L290 TraceCheckUtils]: 98: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,084 INFO L290 TraceCheckUtils]: 99: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,084 INFO L290 TraceCheckUtils]: 100: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,085 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #92#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,085 INFO L290 TraceCheckUtils]: 102: Hoare triple {41552#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,086 INFO L290 TraceCheckUtils]: 103: Hoare triple {41552#(< 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; {41625#(< 0 main_~b~0)} is VALID [2022-04-08 05:52:01,086 INFO L290 TraceCheckUtils]: 104: Hoare triple {41625#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-08 05:52:01,087 INFO L290 TraceCheckUtils]: 105: Hoare triple {41625#(< 0 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-08 05:52:01,087 INFO L290 TraceCheckUtils]: 106: Hoare triple {41625#(< 0 main_~b~0)} assume !(0 != ~b~0); {41308#false} is VALID [2022-04-08 05:52:01,087 INFO L272 TraceCheckUtils]: 107: Hoare triple {41308#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {41308#false} is VALID [2022-04-08 05:52:01,087 INFO L290 TraceCheckUtils]: 108: Hoare triple {41308#false} ~cond := #in~cond; {41308#false} is VALID [2022-04-08 05:52:01,087 INFO L290 TraceCheckUtils]: 109: Hoare triple {41308#false} assume 0 == ~cond; {41308#false} is VALID [2022-04-08 05:52:01,088 INFO L290 TraceCheckUtils]: 110: Hoare triple {41308#false} assume !false; {41308#false} is VALID [2022-04-08 05:52:01,088 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 44 proven. 11 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-08 05:52:01,088 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:52:01,457 INFO L290 TraceCheckUtils]: 110: Hoare triple {41308#false} assume !false; {41308#false} is VALID [2022-04-08 05:52:01,457 INFO L290 TraceCheckUtils]: 109: Hoare triple {41308#false} assume 0 == ~cond; {41308#false} is VALID [2022-04-08 05:52:01,457 INFO L290 TraceCheckUtils]: 108: Hoare triple {41308#false} ~cond := #in~cond; {41308#false} is VALID [2022-04-08 05:52:01,457 INFO L272 TraceCheckUtils]: 107: Hoare triple {41308#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {41308#false} is VALID [2022-04-08 05:52:01,458 INFO L290 TraceCheckUtils]: 106: Hoare triple {41625#(< 0 main_~b~0)} assume !(0 != ~b~0); {41308#false} is VALID [2022-04-08 05:52:01,458 INFO L290 TraceCheckUtils]: 105: Hoare triple {41625#(< 0 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-08 05:52:01,458 INFO L290 TraceCheckUtils]: 104: Hoare triple {41625#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-08 05:52:01,459 INFO L290 TraceCheckUtils]: 103: Hoare triple {41552#(< 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; {41625#(< 0 main_~b~0)} is VALID [2022-04-08 05:52:01,459 INFO L290 TraceCheckUtils]: 102: Hoare triple {41552#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,460 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #92#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,460 INFO L290 TraceCheckUtils]: 100: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,460 INFO L290 TraceCheckUtils]: 99: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,460 INFO L290 TraceCheckUtils]: 98: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,460 INFO L272 TraceCheckUtils]: 97: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,460 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #90#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,461 INFO L290 TraceCheckUtils]: 95: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,461 INFO L290 TraceCheckUtils]: 94: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,461 INFO L290 TraceCheckUtils]: 93: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,461 INFO L272 TraceCheckUtils]: 92: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,471 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #88#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,471 INFO L290 TraceCheckUtils]: 90: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,472 INFO L290 TraceCheckUtils]: 89: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,472 INFO L290 TraceCheckUtils]: 88: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,472 INFO L272 TraceCheckUtils]: 87: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,472 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #86#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,472 INFO L290 TraceCheckUtils]: 85: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,472 INFO L290 TraceCheckUtils]: 84: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,472 INFO L290 TraceCheckUtils]: 83: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,473 INFO L272 TraceCheckUtils]: 82: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,473 INFO L290 TraceCheckUtils]: 81: Hoare triple {41552#(< 0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,473 INFO L290 TraceCheckUtils]: 80: Hoare triple {41552#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,475 INFO L290 TraceCheckUtils]: 79: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {41552#(< 0 main_~c~0)} is VALID [2022-04-08 05:52:01,475 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #92#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,475 INFO L290 TraceCheckUtils]: 77: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,475 INFO L290 TraceCheckUtils]: 76: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,476 INFO L290 TraceCheckUtils]: 75: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,476 INFO L272 TraceCheckUtils]: 74: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,476 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #90#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,476 INFO L290 TraceCheckUtils]: 72: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,476 INFO L290 TraceCheckUtils]: 71: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,477 INFO L290 TraceCheckUtils]: 70: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,477 INFO L272 TraceCheckUtils]: 69: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,477 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #88#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,477 INFO L290 TraceCheckUtils]: 67: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,477 INFO L290 TraceCheckUtils]: 66: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,477 INFO L290 TraceCheckUtils]: 65: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,477 INFO L272 TraceCheckUtils]: 64: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,478 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #86#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,478 INFO L290 TraceCheckUtils]: 62: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,478 INFO L290 TraceCheckUtils]: 61: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,478 INFO L290 TraceCheckUtils]: 60: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,478 INFO L272 TraceCheckUtils]: 59: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,478 INFO L290 TraceCheckUtils]: 58: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,479 INFO L290 TraceCheckUtils]: 57: Hoare triple {41482#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,479 INFO L290 TraceCheckUtils]: 56: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:52:01,479 INFO L290 TraceCheckUtils]: 55: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:52:01,480 INFO L290 TraceCheckUtils]: 54: Hoare triple {41472#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:52:01,480 INFO L290 TraceCheckUtils]: 53: Hoare triple {41468#(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; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:52:01,480 INFO L290 TraceCheckUtils]: 52: Hoare triple {41307#true} assume !(~c~0 >= ~b~0); {41468#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:52:01,480 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {41307#true} {41307#true} #92#return; {41307#true} is VALID [2022-04-08 05:52:01,480 INFO L290 TraceCheckUtils]: 50: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 49: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 48: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L272 TraceCheckUtils]: 47: Hoare triple {41307#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {41307#true} {41307#true} #90#return; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 45: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 44: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 43: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L272 TraceCheckUtils]: 42: Hoare triple {41307#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {41307#true} {41307#true} #88#return; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 40: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 39: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 38: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L272 TraceCheckUtils]: 37: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {41307#true} {41307#true} #86#return; {41307#true} is VALID [2022-04-08 05:52:01,481 INFO L290 TraceCheckUtils]: 35: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 34: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 33: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L272 TraceCheckUtils]: 32: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 31: Hoare triple {41307#true} assume !!(#t~post7 < 20);havoc #t~post7; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 30: Hoare triple {41307#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 29: Hoare triple {41307#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 28: Hoare triple {41307#true} assume !!(#t~post6 < 20);havoc #t~post6; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 27: Hoare triple {41307#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41307#true} {41307#true} #84#return; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 25: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 24: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 23: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L272 TraceCheckUtils]: 22: Hoare triple {41307#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41307#true} {41307#true} #82#return; {41307#true} is VALID [2022-04-08 05:52:01,482 INFO L290 TraceCheckUtils]: 20: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 19: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 18: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L272 TraceCheckUtils]: 17: Hoare triple {41307#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 16: Hoare triple {41307#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41307#true} {41307#true} #80#return; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 14: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 13: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 12: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L272 TraceCheckUtils]: 11: Hoare triple {41307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41307#true} {41307#true} #78#return; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 9: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 8: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L290 TraceCheckUtils]: 7: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-08 05:52:01,483 INFO L272 TraceCheckUtils]: 6: Hoare triple {41307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-08 05:52:01,484 INFO L290 TraceCheckUtils]: 5: Hoare triple {41307#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {41307#true} is VALID [2022-04-08 05:52:01,484 INFO L272 TraceCheckUtils]: 4: Hoare triple {41307#true} call #t~ret8 := main(); {41307#true} is VALID [2022-04-08 05:52:01,484 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41307#true} {41307#true} #98#return; {41307#true} is VALID [2022-04-08 05:52:01,484 INFO L290 TraceCheckUtils]: 2: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-08 05:52:01,484 INFO L290 TraceCheckUtils]: 1: Hoare triple {41307#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);~counter~0 := 0; {41307#true} is VALID [2022-04-08 05:52:01,484 INFO L272 TraceCheckUtils]: 0: Hoare triple {41307#true} call ULTIMATE.init(); {41307#true} is VALID [2022-04-08 05:52:01,484 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 44 proven. 11 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-08 05:52:01,484 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:52:01,484 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [953601597] [2022-04-08 05:52:01,484 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:52:01,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [268224306] [2022-04-08 05:52:01,485 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [268224306] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:52:01,485 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:52:01,485 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 7 [2022-04-08 05:52:01,485 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:52:01,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1619441692] [2022-04-08 05:52:01,485 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1619441692] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:52:01,485 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:52:01,485 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:52:01,485 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1921969682] [2022-04-08 05:52:01,485 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:52:01,486 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) Word has length 111 [2022-04-08 05:52:01,486 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:52:01,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-08 05:52:01,544 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:01,544 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:52:01,544 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:01,544 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:52:01,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-08 05:52:01,545 INFO L87 Difference]: Start difference. First operand 423 states and 536 transitions. Second operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-08 05:52:03,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:03,859 INFO L93 Difference]: Finished difference Result 589 states and 810 transitions. [2022-04-08 05:52:03,859 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 05:52:03,859 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) Word has length 111 [2022-04-08 05:52:03,859 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:52:03,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-08 05:52:03,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 178 transitions. [2022-04-08 05:52:03,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-08 05:52:03,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 178 transitions. [2022-04-08 05:52:03,863 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 178 transitions. [2022-04-08 05:52:04,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:04,048 INFO L225 Difference]: With dead ends: 589 [2022-04-08 05:52:04,048 INFO L226 Difference]: Without dead ends: 581 [2022-04-08 05:52:04,048 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 237 GetRequests, 220 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=75, Invalid=197, Unknown=0, NotChecked=0, Total=272 [2022-04-08 05:52:04,049 INFO L913 BasicCegarLoop]: 108 mSDtfsCounter, 32 mSDsluCounter, 261 mSDsCounter, 0 mSdLazyCounter, 267 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 369 SdHoareTripleChecker+Invalid, 312 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 267 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:52:04,049 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 369 Invalid, 312 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 267 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:52:04,049 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 581 states. [2022-04-08 05:52:05,026 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 581 to 470. [2022-04-08 05:52:05,026 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:52:05,027 INFO L82 GeneralOperation]: Start isEquivalent. First operand 581 states. Second operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:05,027 INFO L74 IsIncluded]: Start isIncluded. First operand 581 states. Second operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:05,028 INFO L87 Difference]: Start difference. First operand 581 states. Second operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:05,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:05,050 INFO L93 Difference]: Finished difference Result 581 states and 798 transitions. [2022-04-08 05:52:05,050 INFO L276 IsEmpty]: Start isEmpty. Operand 581 states and 798 transitions. [2022-04-08 05:52:05,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:05,052 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:05,052 INFO L74 IsIncluded]: Start isIncluded. First operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 581 states. [2022-04-08 05:52:05,053 INFO L87 Difference]: Start difference. First operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 581 states. [2022-04-08 05:52:05,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:05,075 INFO L93 Difference]: Finished difference Result 581 states and 798 transitions. [2022-04-08 05:52:05,075 INFO L276 IsEmpty]: Start isEmpty. Operand 581 states and 798 transitions. [2022-04-08 05:52:05,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:05,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:05,077 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:52:05,077 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:52:05,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:05,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 470 states to 470 states and 614 transitions. [2022-04-08 05:52:05,095 INFO L78 Accepts]: Start accepts. Automaton has 470 states and 614 transitions. Word has length 111 [2022-04-08 05:52:05,095 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:52:05,096 INFO L478 AbstractCegarLoop]: Abstraction has 470 states and 614 transitions. [2022-04-08 05:52:05,096 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-08 05:52:05,096 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 470 states and 614 transitions. [2022-04-08 05:52:06,138 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 614 edges. 614 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:06,138 INFO L276 IsEmpty]: Start isEmpty. Operand 470 states and 614 transitions. [2022-04-08 05:52:06,139 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 113 [2022-04-08 05:52:06,139 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:52:06,139 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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-08 05:52:06,155 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-08 05:52:06,339 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-08 05:52:06,340 INFO L403 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:52:06,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:52:06,340 INFO L85 PathProgramCache]: Analyzing trace with hash -1282766646, now seen corresponding path program 3 times [2022-04-08 05:52:06,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:06,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1181797385] [2022-04-08 05:52:06,341 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:52:06,341 INFO L85 PathProgramCache]: Analyzing trace with hash -1282766646, now seen corresponding path program 4 times [2022-04-08 05:52:06,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:52:06,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1133456129] [2022-04-08 05:52:06,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:52:06,341 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:52:06,364 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:52:06,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [376001337] [2022-04-08 05:52:06,364 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:52:06,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:52:06,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:52:06,365 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:52:06,366 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-08 05:52:06,438 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:52:06,438 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:52:06,439 INFO L263 TraceCheckSpWp]: Trace formula consists of 312 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 05:52:06,464 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:52:06,466 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:52:06,894 INFO L272 TraceCheckUtils]: 0: Hoare triple {45285#true} call ULTIMATE.init(); {45285#true} is VALID [2022-04-08 05:52:06,894 INFO L290 TraceCheckUtils]: 1: Hoare triple {45285#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);~counter~0 := 0; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,895 INFO L290 TraceCheckUtils]: 2: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,895 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45293#(<= ~counter~0 0)} {45285#true} #98#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,895 INFO L272 TraceCheckUtils]: 4: Hoare triple {45293#(<= ~counter~0 0)} call #t~ret8 := main(); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {45293#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,896 INFO L272 TraceCheckUtils]: 6: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,897 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #78#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,898 INFO L272 TraceCheckUtils]: 11: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,898 INFO L290 TraceCheckUtils]: 12: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,898 INFO L290 TraceCheckUtils]: 13: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,899 INFO L290 TraceCheckUtils]: 14: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,899 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #80#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,899 INFO L290 TraceCheckUtils]: 16: Hoare triple {45293#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,900 INFO L272 TraceCheckUtils]: 17: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,900 INFO L290 TraceCheckUtils]: 18: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,900 INFO L290 TraceCheckUtils]: 20: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,901 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #82#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,901 INFO L272 TraceCheckUtils]: 22: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,901 INFO L290 TraceCheckUtils]: 23: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,902 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #84#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:06,904 INFO L290 TraceCheckUtils]: 27: Hoare triple {45293#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45372#(<= ~counter~0 1)} is VALID [2022-04-08 05:52:06,904 INFO L290 TraceCheckUtils]: 28: Hoare triple {45372#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {45372#(<= ~counter~0 1)} is VALID [2022-04-08 05:52:06,904 INFO L290 TraceCheckUtils]: 29: Hoare triple {45372#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45372#(<= ~counter~0 1)} is VALID [2022-04-08 05:52:06,905 INFO L290 TraceCheckUtils]: 30: Hoare triple {45372#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,905 INFO L290 TraceCheckUtils]: 31: Hoare triple {45382#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,906 INFO L272 TraceCheckUtils]: 32: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,906 INFO L290 TraceCheckUtils]: 33: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,906 INFO L290 TraceCheckUtils]: 34: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,906 INFO L290 TraceCheckUtils]: 35: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,907 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #86#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,908 INFO L272 TraceCheckUtils]: 37: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,908 INFO L290 TraceCheckUtils]: 38: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,908 INFO L290 TraceCheckUtils]: 39: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,908 INFO L290 TraceCheckUtils]: 40: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,909 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #88#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,909 INFO L272 TraceCheckUtils]: 42: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,910 INFO L290 TraceCheckUtils]: 43: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,910 INFO L290 TraceCheckUtils]: 44: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,910 INFO L290 TraceCheckUtils]: 45: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,911 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #90#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,911 INFO L272 TraceCheckUtils]: 47: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,912 INFO L290 TraceCheckUtils]: 48: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,912 INFO L290 TraceCheckUtils]: 49: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,912 INFO L290 TraceCheckUtils]: 50: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,913 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #92#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,913 INFO L290 TraceCheckUtils]: 52: Hoare triple {45382#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45382#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:06,914 INFO L290 TraceCheckUtils]: 53: Hoare triple {45382#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,914 INFO L290 TraceCheckUtils]: 54: Hoare triple {45452#(<= ~counter~0 3)} assume !!(#t~post7 < 20);havoc #t~post7; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,915 INFO L272 TraceCheckUtils]: 55: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,915 INFO L290 TraceCheckUtils]: 56: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,916 INFO L290 TraceCheckUtils]: 57: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,916 INFO L290 TraceCheckUtils]: 58: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,916 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #86#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,917 INFO L272 TraceCheckUtils]: 60: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,917 INFO L290 TraceCheckUtils]: 61: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,917 INFO L290 TraceCheckUtils]: 62: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,918 INFO L290 TraceCheckUtils]: 63: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,918 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #88#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,919 INFO L272 TraceCheckUtils]: 65: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,919 INFO L290 TraceCheckUtils]: 66: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,919 INFO L290 TraceCheckUtils]: 67: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,920 INFO L290 TraceCheckUtils]: 68: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,920 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #90#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,921 INFO L272 TraceCheckUtils]: 70: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,921 INFO L290 TraceCheckUtils]: 71: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,921 INFO L290 TraceCheckUtils]: 72: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,922 INFO L290 TraceCheckUtils]: 73: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,922 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #92#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,922 INFO L290 TraceCheckUtils]: 75: Hoare triple {45452#(<= ~counter~0 3)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45452#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:06,923 INFO L290 TraceCheckUtils]: 76: Hoare triple {45452#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,924 INFO L290 TraceCheckUtils]: 77: Hoare triple {45522#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,925 INFO L272 TraceCheckUtils]: 78: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,925 INFO L290 TraceCheckUtils]: 79: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,925 INFO L290 TraceCheckUtils]: 80: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,925 INFO L290 TraceCheckUtils]: 81: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,926 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #86#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,926 INFO L272 TraceCheckUtils]: 83: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,927 INFO L290 TraceCheckUtils]: 84: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,927 INFO L290 TraceCheckUtils]: 85: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,927 INFO L290 TraceCheckUtils]: 86: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,928 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #88#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,928 INFO L272 TraceCheckUtils]: 88: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,929 INFO L290 TraceCheckUtils]: 89: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,929 INFO L290 TraceCheckUtils]: 90: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,929 INFO L290 TraceCheckUtils]: 91: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,930 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #90#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,930 INFO L272 TraceCheckUtils]: 93: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,931 INFO L290 TraceCheckUtils]: 94: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,931 INFO L290 TraceCheckUtils]: 95: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,932 INFO L290 TraceCheckUtils]: 96: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,933 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #92#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,933 INFO L290 TraceCheckUtils]: 98: Hoare triple {45522#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,933 INFO L290 TraceCheckUtils]: 99: Hoare triple {45522#(<= ~counter~0 4)} ~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; {45522#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:06,935 INFO L290 TraceCheckUtils]: 100: Hoare triple {45522#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45595#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:06,935 INFO L290 TraceCheckUtils]: 101: Hoare triple {45595#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {45595#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:06,935 INFO L290 TraceCheckUtils]: 102: Hoare triple {45595#(<= ~counter~0 5)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45595#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:06,936 INFO L290 TraceCheckUtils]: 103: Hoare triple {45595#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45605#(<= |main_#t~post7| 5)} is VALID [2022-04-08 05:52:06,936 INFO L290 TraceCheckUtils]: 104: Hoare triple {45605#(<= |main_#t~post7| 5)} assume !(#t~post7 < 20);havoc #t~post7; {45286#false} is VALID [2022-04-08 05:52:06,936 INFO L290 TraceCheckUtils]: 105: Hoare triple {45286#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; {45286#false} is VALID [2022-04-08 05:52:06,936 INFO L290 TraceCheckUtils]: 106: Hoare triple {45286#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45286#false} is VALID [2022-04-08 05:52:06,936 INFO L290 TraceCheckUtils]: 107: Hoare triple {45286#false} assume !(#t~post6 < 20);havoc #t~post6; {45286#false} is VALID [2022-04-08 05:52:06,937 INFO L272 TraceCheckUtils]: 108: Hoare triple {45286#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {45286#false} is VALID [2022-04-08 05:52:06,937 INFO L290 TraceCheckUtils]: 109: Hoare triple {45286#false} ~cond := #in~cond; {45286#false} is VALID [2022-04-08 05:52:06,937 INFO L290 TraceCheckUtils]: 110: Hoare triple {45286#false} assume 0 == ~cond; {45286#false} is VALID [2022-04-08 05:52:06,937 INFO L290 TraceCheckUtils]: 111: Hoare triple {45286#false} assume !false; {45286#false} is VALID [2022-04-08 05:52:06,937 INFO L134 CoverageAnalysis]: Checked inductivity of 347 backedges. 29 proven. 222 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-08 05:52:06,937 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:52:07,382 INFO L290 TraceCheckUtils]: 111: Hoare triple {45286#false} assume !false; {45286#false} is VALID [2022-04-08 05:52:07,383 INFO L290 TraceCheckUtils]: 110: Hoare triple {45286#false} assume 0 == ~cond; {45286#false} is VALID [2022-04-08 05:52:07,383 INFO L290 TraceCheckUtils]: 109: Hoare triple {45286#false} ~cond := #in~cond; {45286#false} is VALID [2022-04-08 05:52:07,383 INFO L272 TraceCheckUtils]: 108: Hoare triple {45286#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {45286#false} is VALID [2022-04-08 05:52:07,383 INFO L290 TraceCheckUtils]: 107: Hoare triple {45286#false} assume !(#t~post6 < 20);havoc #t~post6; {45286#false} is VALID [2022-04-08 05:52:07,383 INFO L290 TraceCheckUtils]: 106: Hoare triple {45286#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45286#false} is VALID [2022-04-08 05:52:07,383 INFO L290 TraceCheckUtils]: 105: Hoare triple {45286#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; {45286#false} is VALID [2022-04-08 05:52:07,383 INFO L290 TraceCheckUtils]: 104: Hoare triple {45651#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {45286#false} is VALID [2022-04-08 05:52:07,384 INFO L290 TraceCheckUtils]: 103: Hoare triple {45655#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45651#(< |main_#t~post7| 20)} is VALID [2022-04-08 05:52:07,384 INFO L290 TraceCheckUtils]: 102: Hoare triple {45655#(< ~counter~0 20)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45655#(< ~counter~0 20)} is VALID [2022-04-08 05:52:07,384 INFO L290 TraceCheckUtils]: 101: Hoare triple {45655#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {45655#(< ~counter~0 20)} is VALID [2022-04-08 05:52:07,385 INFO L290 TraceCheckUtils]: 100: Hoare triple {45665#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45655#(< ~counter~0 20)} is VALID [2022-04-08 05:52:07,386 INFO L290 TraceCheckUtils]: 99: Hoare triple {45665#(< ~counter~0 19)} ~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; {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,386 INFO L290 TraceCheckUtils]: 98: Hoare triple {45665#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,387 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {45285#true} {45665#(< ~counter~0 19)} #92#return; {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,387 INFO L290 TraceCheckUtils]: 96: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,387 INFO L290 TraceCheckUtils]: 95: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,387 INFO L290 TraceCheckUtils]: 94: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,387 INFO L272 TraceCheckUtils]: 93: Hoare triple {45665#(< ~counter~0 19)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,387 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {45285#true} {45665#(< ~counter~0 19)} #90#return; {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,388 INFO L290 TraceCheckUtils]: 91: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,388 INFO L290 TraceCheckUtils]: 90: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,388 INFO L290 TraceCheckUtils]: 89: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,388 INFO L272 TraceCheckUtils]: 88: Hoare triple {45665#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,388 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {45285#true} {45665#(< ~counter~0 19)} #88#return; {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,388 INFO L290 TraceCheckUtils]: 86: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,388 INFO L290 TraceCheckUtils]: 85: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,389 INFO L290 TraceCheckUtils]: 84: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,389 INFO L272 TraceCheckUtils]: 83: Hoare triple {45665#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,389 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {45285#true} {45665#(< ~counter~0 19)} #86#return; {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,389 INFO L290 TraceCheckUtils]: 81: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,389 INFO L290 TraceCheckUtils]: 80: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,389 INFO L290 TraceCheckUtils]: 79: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,389 INFO L272 TraceCheckUtils]: 78: Hoare triple {45665#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,390 INFO L290 TraceCheckUtils]: 77: Hoare triple {45665#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,390 INFO L290 TraceCheckUtils]: 76: Hoare triple {45738#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45665#(< ~counter~0 19)} is VALID [2022-04-08 05:52:07,391 INFO L290 TraceCheckUtils]: 75: Hoare triple {45738#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45738#(< ~counter~0 18)} is VALID [2022-04-08 05:52:07,391 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {45285#true} {45738#(< ~counter~0 18)} #92#return; {45738#(< ~counter~0 18)} is VALID [2022-04-08 05:52:07,391 INFO L290 TraceCheckUtils]: 73: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,391 INFO L290 TraceCheckUtils]: 72: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,391 INFO L290 TraceCheckUtils]: 71: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,391 INFO L272 TraceCheckUtils]: 70: Hoare triple {45738#(< ~counter~0 18)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,392 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {45285#true} {45738#(< ~counter~0 18)} #90#return; {45738#(< ~counter~0 18)} is VALID [2022-04-08 05:52:07,392 INFO L290 TraceCheckUtils]: 68: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,392 INFO L290 TraceCheckUtils]: 67: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,392 INFO L290 TraceCheckUtils]: 66: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,392 INFO L272 TraceCheckUtils]: 65: Hoare triple {45738#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,393 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {45285#true} {45738#(< ~counter~0 18)} #88#return; {45738#(< ~counter~0 18)} is VALID [2022-04-08 05:52:07,393 INFO L290 TraceCheckUtils]: 63: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,393 INFO L290 TraceCheckUtils]: 62: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,393 INFO L290 TraceCheckUtils]: 61: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,393 INFO L272 TraceCheckUtils]: 60: Hoare triple {45738#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,394 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {45285#true} {45738#(< ~counter~0 18)} #86#return; {45738#(< ~counter~0 18)} is VALID [2022-04-08 05:52:07,394 INFO L290 TraceCheckUtils]: 58: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,394 INFO L290 TraceCheckUtils]: 57: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,394 INFO L290 TraceCheckUtils]: 56: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,394 INFO L272 TraceCheckUtils]: 55: Hoare triple {45738#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,402 INFO L290 TraceCheckUtils]: 54: Hoare triple {45738#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {45738#(< ~counter~0 18)} is VALID [2022-04-08 05:52:07,403 INFO L290 TraceCheckUtils]: 53: Hoare triple {45808#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45738#(< ~counter~0 18)} is VALID [2022-04-08 05:52:07,403 INFO L290 TraceCheckUtils]: 52: Hoare triple {45808#(< ~counter~0 17)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45808#(< ~counter~0 17)} is VALID [2022-04-08 05:52:07,404 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {45285#true} {45808#(< ~counter~0 17)} #92#return; {45808#(< ~counter~0 17)} is VALID [2022-04-08 05:52:07,404 INFO L290 TraceCheckUtils]: 50: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,404 INFO L290 TraceCheckUtils]: 49: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,404 INFO L290 TraceCheckUtils]: 48: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,404 INFO L272 TraceCheckUtils]: 47: Hoare triple {45808#(< ~counter~0 17)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,405 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {45285#true} {45808#(< ~counter~0 17)} #90#return; {45808#(< ~counter~0 17)} is VALID [2022-04-08 05:52:07,405 INFO L290 TraceCheckUtils]: 45: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,405 INFO L290 TraceCheckUtils]: 44: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,405 INFO L290 TraceCheckUtils]: 43: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,405 INFO L272 TraceCheckUtils]: 42: Hoare triple {45808#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,406 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {45285#true} {45808#(< ~counter~0 17)} #88#return; {45808#(< ~counter~0 17)} is VALID [2022-04-08 05:52:07,406 INFO L290 TraceCheckUtils]: 40: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,406 INFO L290 TraceCheckUtils]: 39: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,406 INFO L290 TraceCheckUtils]: 38: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,406 INFO L272 TraceCheckUtils]: 37: Hoare triple {45808#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,407 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {45285#true} {45808#(< ~counter~0 17)} #86#return; {45808#(< ~counter~0 17)} is VALID [2022-04-08 05:52:07,407 INFO L290 TraceCheckUtils]: 35: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,407 INFO L290 TraceCheckUtils]: 34: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,407 INFO L290 TraceCheckUtils]: 33: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,407 INFO L272 TraceCheckUtils]: 32: Hoare triple {45808#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,407 INFO L290 TraceCheckUtils]: 31: Hoare triple {45808#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {45808#(< ~counter~0 17)} is VALID [2022-04-08 05:52:07,408 INFO L290 TraceCheckUtils]: 30: Hoare triple {45878#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45808#(< ~counter~0 17)} is VALID [2022-04-08 05:52:07,408 INFO L290 TraceCheckUtils]: 29: Hoare triple {45878#(< ~counter~0 16)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45878#(< ~counter~0 16)} is VALID [2022-04-08 05:52:07,408 INFO L290 TraceCheckUtils]: 28: Hoare triple {45878#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {45878#(< ~counter~0 16)} is VALID [2022-04-08 05:52:07,409 INFO L290 TraceCheckUtils]: 27: Hoare triple {45888#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45878#(< ~counter~0 16)} is VALID [2022-04-08 05:52:07,409 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {45285#true} {45888#(< ~counter~0 15)} #84#return; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,410 INFO L290 TraceCheckUtils]: 25: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,410 INFO L290 TraceCheckUtils]: 24: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,410 INFO L290 TraceCheckUtils]: 23: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,410 INFO L272 TraceCheckUtils]: 22: Hoare triple {45888#(< ~counter~0 15)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,410 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {45285#true} {45888#(< ~counter~0 15)} #82#return; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,410 INFO L290 TraceCheckUtils]: 20: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,410 INFO L290 TraceCheckUtils]: 19: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,410 INFO L290 TraceCheckUtils]: 18: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,410 INFO L272 TraceCheckUtils]: 17: Hoare triple {45888#(< ~counter~0 15)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,411 INFO L290 TraceCheckUtils]: 16: Hoare triple {45888#(< ~counter~0 15)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,411 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45285#true} {45888#(< ~counter~0 15)} #80#return; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,411 INFO L290 TraceCheckUtils]: 14: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,411 INFO L290 TraceCheckUtils]: 13: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,411 INFO L290 TraceCheckUtils]: 12: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,411 INFO L272 TraceCheckUtils]: 11: Hoare triple {45888#(< ~counter~0 15)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,412 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45285#true} {45888#(< ~counter~0 15)} #78#return; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,412 INFO L290 TraceCheckUtils]: 9: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-08 05:52:07,412 INFO L290 TraceCheckUtils]: 8: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-08 05:52:07,412 INFO L290 TraceCheckUtils]: 7: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-08 05:52:07,412 INFO L272 TraceCheckUtils]: 6: Hoare triple {45888#(< ~counter~0 15)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45285#true} is VALID [2022-04-08 05:52:07,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {45888#(< ~counter~0 15)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,413 INFO L272 TraceCheckUtils]: 4: Hoare triple {45888#(< ~counter~0 15)} call #t~ret8 := main(); {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,413 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45888#(< ~counter~0 15)} {45285#true} #98#return; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {45888#(< ~counter~0 15)} assume true; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,414 INFO L290 TraceCheckUtils]: 1: Hoare triple {45285#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);~counter~0 := 0; {45888#(< ~counter~0 15)} is VALID [2022-04-08 05:52:07,414 INFO L272 TraceCheckUtils]: 0: Hoare triple {45285#true} call ULTIMATE.init(); {45285#true} is VALID [2022-04-08 05:52:07,414 INFO L134 CoverageAnalysis]: Checked inductivity of 347 backedges. 29 proven. 30 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-08 05:52:07,414 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:52:07,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1133456129] [2022-04-08 05:52:07,414 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:52:07,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [376001337] [2022-04-08 05:52:07,414 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [376001337] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:52:07,415 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:52:07,415 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-08 05:52:07,415 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:52:07,415 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1181797385] [2022-04-08 05:52:07,415 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1181797385] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:52:07,415 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:52:07,415 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:52:07,415 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [455215288] [2022-04-08 05:52:07,415 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:52:07,415 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 112 [2022-04-08 05:52:07,416 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:52:07,416 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:07,479 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:07,479 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:52:07,479 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:07,479 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:52:07,480 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:52:07,480 INFO L87 Difference]: Start difference. First operand 470 states and 614 transitions. Second operand has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:08,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:08,873 INFO L93 Difference]: Finished difference Result 644 states and 881 transitions. [2022-04-08 05:52:08,873 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 05:52:08,873 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 112 [2022-04-08 05:52:08,873 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:52:08,873 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:08,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 152 transitions. [2022-04-08 05:52:08,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:08,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 152 transitions. [2022-04-08 05:52:08,875 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 152 transitions. [2022-04-08 05:52:09,006 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:09,016 INFO L225 Difference]: With dead ends: 644 [2022-04-08 05:52:09,016 INFO L226 Difference]: Without dead ends: 474 [2022-04-08 05:52:09,017 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 227 GetRequests, 209 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=152, Invalid=228, Unknown=0, NotChecked=0, Total=380 [2022-04-08 05:52:09,018 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 47 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 213 SdHoareTripleChecker+Invalid, 125 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:52:09,018 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 213 Invalid, 125 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:52:09,018 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 474 states. [2022-04-08 05:52:10,004 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 474 to 474. [2022-04-08 05:52:10,005 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:52:10,005 INFO L82 GeneralOperation]: Start isEquivalent. First operand 474 states. Second operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:10,006 INFO L74 IsIncluded]: Start isIncluded. First operand 474 states. Second operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:10,006 INFO L87 Difference]: Start difference. First operand 474 states. Second operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:10,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:10,018 INFO L93 Difference]: Finished difference Result 474 states and 616 transitions. [2022-04-08 05:52:10,018 INFO L276 IsEmpty]: Start isEmpty. Operand 474 states and 616 transitions. [2022-04-08 05:52:10,019 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:10,019 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:10,020 INFO L74 IsIncluded]: Start isIncluded. First operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 474 states. [2022-04-08 05:52:10,020 INFO L87 Difference]: Start difference. First operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 474 states. [2022-04-08 05:52:10,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:10,034 INFO L93 Difference]: Finished difference Result 474 states and 616 transitions. [2022-04-08 05:52:10,034 INFO L276 IsEmpty]: Start isEmpty. Operand 474 states and 616 transitions. [2022-04-08 05:52:10,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:10,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:10,035 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:52:10,035 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:52:10,036 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-08 05:52:10,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 474 states to 474 states and 616 transitions. [2022-04-08 05:52:10,054 INFO L78 Accepts]: Start accepts. Automaton has 474 states and 616 transitions. Word has length 112 [2022-04-08 05:52:10,054 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:52:10,054 INFO L478 AbstractCegarLoop]: Abstraction has 474 states and 616 transitions. [2022-04-08 05:52:10,054 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:10,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 474 states and 616 transitions. [2022-04-08 05:52:11,086 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 616 edges. 616 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:11,086 INFO L276 IsEmpty]: Start isEmpty. Operand 474 states and 616 transitions. [2022-04-08 05:52:11,087 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-08 05:52:11,087 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:52:11,087 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:52:11,108 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-08 05:52:11,299 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-08 05:52:11,299 INFO L403 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:52:11,300 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:52:11,300 INFO L85 PathProgramCache]: Analyzing trace with hash 1546024104, now seen corresponding path program 5 times [2022-04-08 05:52:11,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:11,300 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [385726973] [2022-04-08 05:52:11,300 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:52:11,300 INFO L85 PathProgramCache]: Analyzing trace with hash 1546024104, now seen corresponding path program 6 times [2022-04-08 05:52:11,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:52:11,300 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [446230956] [2022-04-08 05:52:11,300 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:52:11,301 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:52:11,311 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:52:11,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2094418200] [2022-04-08 05:52:11,311 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:52:11,311 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:52:11,311 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:52:11,312 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:52:11,318 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-08 05:52:11,402 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 05:52:11,403 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:52:11,404 INFO L263 TraceCheckSpWp]: Trace formula consists of 332 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 05:52:11,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:52:11,426 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:52:11,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {49164#true} call ULTIMATE.init(); {49164#true} is VALID [2022-04-08 05:52:11,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {49164#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);~counter~0 := 0; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,871 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49172#(<= ~counter~0 0)} {49164#true} #98#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,871 INFO L272 TraceCheckUtils]: 4: Hoare triple {49172#(<= ~counter~0 0)} call #t~ret8 := main(); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,871 INFO L290 TraceCheckUtils]: 5: Hoare triple {49172#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,872 INFO L272 TraceCheckUtils]: 6: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,872 INFO L290 TraceCheckUtils]: 7: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,872 INFO L290 TraceCheckUtils]: 8: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,872 INFO L290 TraceCheckUtils]: 9: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,873 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #78#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,873 INFO L272 TraceCheckUtils]: 11: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,873 INFO L290 TraceCheckUtils]: 12: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,874 INFO L290 TraceCheckUtils]: 13: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,874 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #80#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,874 INFO L290 TraceCheckUtils]: 16: Hoare triple {49172#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,875 INFO L272 TraceCheckUtils]: 17: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,875 INFO L290 TraceCheckUtils]: 18: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,875 INFO L290 TraceCheckUtils]: 19: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,876 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #82#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,876 INFO L272 TraceCheckUtils]: 22: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,877 INFO L290 TraceCheckUtils]: 23: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,877 INFO L290 TraceCheckUtils]: 24: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,877 INFO L290 TraceCheckUtils]: 25: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,878 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #84#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-08 05:52:11,879 INFO L290 TraceCheckUtils]: 27: Hoare triple {49172#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49251#(<= ~counter~0 1)} is VALID [2022-04-08 05:52:11,879 INFO L290 TraceCheckUtils]: 28: Hoare triple {49251#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {49251#(<= ~counter~0 1)} is VALID [2022-04-08 05:52:11,879 INFO L290 TraceCheckUtils]: 29: Hoare triple {49251#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49251#(<= ~counter~0 1)} is VALID [2022-04-08 05:52:11,880 INFO L290 TraceCheckUtils]: 30: Hoare triple {49251#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,880 INFO L290 TraceCheckUtils]: 31: Hoare triple {49261#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,881 INFO L272 TraceCheckUtils]: 32: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,881 INFO L290 TraceCheckUtils]: 33: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,881 INFO L290 TraceCheckUtils]: 34: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,881 INFO L290 TraceCheckUtils]: 35: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,882 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #86#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,882 INFO L272 TraceCheckUtils]: 37: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,883 INFO L290 TraceCheckUtils]: 38: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,883 INFO L290 TraceCheckUtils]: 39: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,883 INFO L290 TraceCheckUtils]: 40: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,884 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #88#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,884 INFO L272 TraceCheckUtils]: 42: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,885 INFO L290 TraceCheckUtils]: 43: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,885 INFO L290 TraceCheckUtils]: 44: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,885 INFO L290 TraceCheckUtils]: 45: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,886 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #90#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,886 INFO L272 TraceCheckUtils]: 47: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,886 INFO L290 TraceCheckUtils]: 48: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,887 INFO L290 TraceCheckUtils]: 49: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,887 INFO L290 TraceCheckUtils]: 50: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,888 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #92#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,888 INFO L290 TraceCheckUtils]: 52: Hoare triple {49261#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,888 INFO L290 TraceCheckUtils]: 53: Hoare triple {49261#(<= ~counter~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; {49261#(<= ~counter~0 2)} is VALID [2022-04-08 05:52:11,889 INFO L290 TraceCheckUtils]: 54: Hoare triple {49261#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49334#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:11,889 INFO L290 TraceCheckUtils]: 55: Hoare triple {49334#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {49334#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:11,889 INFO L290 TraceCheckUtils]: 56: Hoare triple {49334#(<= ~counter~0 3)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49334#(<= ~counter~0 3)} is VALID [2022-04-08 05:52:11,890 INFO L290 TraceCheckUtils]: 57: Hoare triple {49334#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,890 INFO L290 TraceCheckUtils]: 58: Hoare triple {49344#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,891 INFO L272 TraceCheckUtils]: 59: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,891 INFO L290 TraceCheckUtils]: 60: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,891 INFO L290 TraceCheckUtils]: 61: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,891 INFO L290 TraceCheckUtils]: 62: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,892 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #86#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,892 INFO L272 TraceCheckUtils]: 64: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,893 INFO L290 TraceCheckUtils]: 65: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,893 INFO L290 TraceCheckUtils]: 66: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,893 INFO L290 TraceCheckUtils]: 67: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,894 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #88#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,894 INFO L272 TraceCheckUtils]: 69: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,895 INFO L290 TraceCheckUtils]: 70: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,895 INFO L290 TraceCheckUtils]: 71: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,895 INFO L290 TraceCheckUtils]: 72: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,896 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #90#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,896 INFO L272 TraceCheckUtils]: 74: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,896 INFO L290 TraceCheckUtils]: 75: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,897 INFO L290 TraceCheckUtils]: 76: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,897 INFO L290 TraceCheckUtils]: 77: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,898 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #92#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,898 INFO L290 TraceCheckUtils]: 79: Hoare triple {49344#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {49344#(<= ~counter~0 4)} is VALID [2022-04-08 05:52:11,898 INFO L290 TraceCheckUtils]: 80: Hoare triple {49344#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,899 INFO L290 TraceCheckUtils]: 81: Hoare triple {49414#(<= ~counter~0 5)} assume !!(#t~post7 < 20);havoc #t~post7; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,899 INFO L272 TraceCheckUtils]: 82: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,900 INFO L290 TraceCheckUtils]: 83: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,900 INFO L290 TraceCheckUtils]: 84: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,900 INFO L290 TraceCheckUtils]: 85: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,901 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #86#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,901 INFO L272 TraceCheckUtils]: 87: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,901 INFO L290 TraceCheckUtils]: 88: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,902 INFO L290 TraceCheckUtils]: 89: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,902 INFO L290 TraceCheckUtils]: 90: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,902 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #88#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,903 INFO L272 TraceCheckUtils]: 92: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,903 INFO L290 TraceCheckUtils]: 93: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,903 INFO L290 TraceCheckUtils]: 94: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,904 INFO L290 TraceCheckUtils]: 95: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,904 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #90#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,905 INFO L272 TraceCheckUtils]: 97: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,905 INFO L290 TraceCheckUtils]: 98: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,905 INFO L290 TraceCheckUtils]: 99: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,906 INFO L290 TraceCheckUtils]: 100: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,906 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #92#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,906 INFO L290 TraceCheckUtils]: 102: Hoare triple {49414#(<= ~counter~0 5)} assume !(~c~0 >= ~b~0); {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,907 INFO L290 TraceCheckUtils]: 103: Hoare triple {49414#(<= ~counter~0 5)} ~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; {49414#(<= ~counter~0 5)} is VALID [2022-04-08 05:52:11,907 INFO L290 TraceCheckUtils]: 104: Hoare triple {49414#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49487#(<= ~counter~0 6)} is VALID [2022-04-08 05:52:11,908 INFO L290 TraceCheckUtils]: 105: Hoare triple {49487#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {49487#(<= ~counter~0 6)} is VALID [2022-04-08 05:52:11,908 INFO L290 TraceCheckUtils]: 106: Hoare triple {49487#(<= ~counter~0 6)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49487#(<= ~counter~0 6)} is VALID [2022-04-08 05:52:11,908 INFO L290 TraceCheckUtils]: 107: Hoare triple {49487#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49497#(<= |main_#t~post7| 6)} is VALID [2022-04-08 05:52:11,909 INFO L290 TraceCheckUtils]: 108: Hoare triple {49497#(<= |main_#t~post7| 6)} assume !(#t~post7 < 20);havoc #t~post7; {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L290 TraceCheckUtils]: 109: Hoare triple {49165#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; {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L290 TraceCheckUtils]: 110: Hoare triple {49165#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L290 TraceCheckUtils]: 111: Hoare triple {49165#false} assume !(#t~post6 < 20);havoc #t~post6; {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L272 TraceCheckUtils]: 112: Hoare triple {49165#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L290 TraceCheckUtils]: 113: Hoare triple {49165#false} ~cond := #in~cond; {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L290 TraceCheckUtils]: 114: Hoare triple {49165#false} assume 0 == ~cond; {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L290 TraceCheckUtils]: 115: Hoare triple {49165#false} assume !false; {49165#false} is VALID [2022-04-08 05:52:11,909 INFO L134 CoverageAnalysis]: Checked inductivity of 357 backedges. 32 proven. 229 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-08 05:52:11,909 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:52:12,374 INFO L290 TraceCheckUtils]: 115: Hoare triple {49165#false} assume !false; {49165#false} is VALID [2022-04-08 05:52:12,374 INFO L290 TraceCheckUtils]: 114: Hoare triple {49165#false} assume 0 == ~cond; {49165#false} is VALID [2022-04-08 05:52:12,374 INFO L290 TraceCheckUtils]: 113: Hoare triple {49165#false} ~cond := #in~cond; {49165#false} is VALID [2022-04-08 05:52:12,375 INFO L272 TraceCheckUtils]: 112: Hoare triple {49165#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {49165#false} is VALID [2022-04-08 05:52:12,375 INFO L290 TraceCheckUtils]: 111: Hoare triple {49165#false} assume !(#t~post6 < 20);havoc #t~post6; {49165#false} is VALID [2022-04-08 05:52:12,375 INFO L290 TraceCheckUtils]: 110: Hoare triple {49165#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49165#false} is VALID [2022-04-08 05:52:12,375 INFO L290 TraceCheckUtils]: 109: Hoare triple {49165#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; {49165#false} is VALID [2022-04-08 05:52:12,375 INFO L290 TraceCheckUtils]: 108: Hoare triple {49543#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {49165#false} is VALID [2022-04-08 05:52:12,375 INFO L290 TraceCheckUtils]: 107: Hoare triple {49547#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49543#(< |main_#t~post7| 20)} is VALID [2022-04-08 05:52:12,376 INFO L290 TraceCheckUtils]: 106: Hoare triple {49547#(< ~counter~0 20)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49547#(< ~counter~0 20)} is VALID [2022-04-08 05:52:12,376 INFO L290 TraceCheckUtils]: 105: Hoare triple {49547#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {49547#(< ~counter~0 20)} is VALID [2022-04-08 05:52:12,377 INFO L290 TraceCheckUtils]: 104: Hoare triple {49557#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49547#(< ~counter~0 20)} is VALID [2022-04-08 05:52:12,377 INFO L290 TraceCheckUtils]: 103: Hoare triple {49557#(< ~counter~0 19)} ~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; {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,378 INFO L290 TraceCheckUtils]: 102: Hoare triple {49557#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,378 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {49164#true} {49557#(< ~counter~0 19)} #92#return; {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,378 INFO L290 TraceCheckUtils]: 100: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,378 INFO L290 TraceCheckUtils]: 99: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,379 INFO L290 TraceCheckUtils]: 98: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,379 INFO L272 TraceCheckUtils]: 97: Hoare triple {49557#(< ~counter~0 19)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,379 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {49164#true} {49557#(< ~counter~0 19)} #90#return; {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,379 INFO L290 TraceCheckUtils]: 95: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,379 INFO L290 TraceCheckUtils]: 94: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,379 INFO L290 TraceCheckUtils]: 93: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,379 INFO L272 TraceCheckUtils]: 92: Hoare triple {49557#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,380 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {49164#true} {49557#(< ~counter~0 19)} #88#return; {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,380 INFO L290 TraceCheckUtils]: 90: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,380 INFO L290 TraceCheckUtils]: 89: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,380 INFO L290 TraceCheckUtils]: 88: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,380 INFO L272 TraceCheckUtils]: 87: Hoare triple {49557#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,381 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {49164#true} {49557#(< ~counter~0 19)} #86#return; {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,381 INFO L290 TraceCheckUtils]: 85: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,381 INFO L290 TraceCheckUtils]: 84: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,381 INFO L290 TraceCheckUtils]: 83: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,381 INFO L272 TraceCheckUtils]: 82: Hoare triple {49557#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,381 INFO L290 TraceCheckUtils]: 81: Hoare triple {49557#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,382 INFO L290 TraceCheckUtils]: 80: Hoare triple {49630#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49557#(< ~counter~0 19)} is VALID [2022-04-08 05:52:12,382 INFO L290 TraceCheckUtils]: 79: Hoare triple {49630#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {49630#(< ~counter~0 18)} is VALID [2022-04-08 05:52:12,383 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {49164#true} {49630#(< ~counter~0 18)} #92#return; {49630#(< ~counter~0 18)} is VALID [2022-04-08 05:52:12,383 INFO L290 TraceCheckUtils]: 77: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,383 INFO L290 TraceCheckUtils]: 76: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,383 INFO L290 TraceCheckUtils]: 75: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,383 INFO L272 TraceCheckUtils]: 74: Hoare triple {49630#(< ~counter~0 18)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,384 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {49164#true} {49630#(< ~counter~0 18)} #90#return; {49630#(< ~counter~0 18)} is VALID [2022-04-08 05:52:12,384 INFO L290 TraceCheckUtils]: 72: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,384 INFO L290 TraceCheckUtils]: 71: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,384 INFO L290 TraceCheckUtils]: 70: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,384 INFO L272 TraceCheckUtils]: 69: Hoare triple {49630#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,385 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {49164#true} {49630#(< ~counter~0 18)} #88#return; {49630#(< ~counter~0 18)} is VALID [2022-04-08 05:52:12,385 INFO L290 TraceCheckUtils]: 67: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,385 INFO L290 TraceCheckUtils]: 66: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,385 INFO L290 TraceCheckUtils]: 65: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,385 INFO L272 TraceCheckUtils]: 64: Hoare triple {49630#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,385 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {49164#true} {49630#(< ~counter~0 18)} #86#return; {49630#(< ~counter~0 18)} is VALID [2022-04-08 05:52:12,385 INFO L290 TraceCheckUtils]: 62: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,386 INFO L290 TraceCheckUtils]: 61: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,386 INFO L290 TraceCheckUtils]: 60: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,386 INFO L272 TraceCheckUtils]: 59: Hoare triple {49630#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,386 INFO L290 TraceCheckUtils]: 58: Hoare triple {49630#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {49630#(< ~counter~0 18)} is VALID [2022-04-08 05:52:12,387 INFO L290 TraceCheckUtils]: 57: Hoare triple {49700#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49630#(< ~counter~0 18)} is VALID [2022-04-08 05:52:12,387 INFO L290 TraceCheckUtils]: 56: Hoare triple {49700#(< ~counter~0 17)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49700#(< ~counter~0 17)} is VALID [2022-04-08 05:52:12,387 INFO L290 TraceCheckUtils]: 55: Hoare triple {49700#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {49700#(< ~counter~0 17)} is VALID [2022-04-08 05:52:12,388 INFO L290 TraceCheckUtils]: 54: Hoare triple {49710#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49700#(< ~counter~0 17)} is VALID [2022-04-08 05:52:12,388 INFO L290 TraceCheckUtils]: 53: Hoare triple {49710#(< ~counter~0 16)} ~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; {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,388 INFO L290 TraceCheckUtils]: 52: Hoare triple {49710#(< ~counter~0 16)} assume !(~c~0 >= ~b~0); {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,389 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49164#true} {49710#(< ~counter~0 16)} #92#return; {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,389 INFO L290 TraceCheckUtils]: 50: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,389 INFO L290 TraceCheckUtils]: 49: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,389 INFO L290 TraceCheckUtils]: 48: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,389 INFO L272 TraceCheckUtils]: 47: Hoare triple {49710#(< ~counter~0 16)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,390 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49164#true} {49710#(< ~counter~0 16)} #90#return; {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,390 INFO L290 TraceCheckUtils]: 45: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,390 INFO L290 TraceCheckUtils]: 44: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,390 INFO L290 TraceCheckUtils]: 43: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,390 INFO L272 TraceCheckUtils]: 42: Hoare triple {49710#(< ~counter~0 16)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,391 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49164#true} {49710#(< ~counter~0 16)} #88#return; {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,391 INFO L290 TraceCheckUtils]: 40: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,391 INFO L290 TraceCheckUtils]: 39: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,391 INFO L290 TraceCheckUtils]: 38: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,391 INFO L272 TraceCheckUtils]: 37: Hoare triple {49710#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,391 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49164#true} {49710#(< ~counter~0 16)} #86#return; {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,392 INFO L290 TraceCheckUtils]: 35: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,392 INFO L290 TraceCheckUtils]: 34: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,392 INFO L290 TraceCheckUtils]: 33: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,392 INFO L272 TraceCheckUtils]: 32: Hoare triple {49710#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,392 INFO L290 TraceCheckUtils]: 31: Hoare triple {49710#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,393 INFO L290 TraceCheckUtils]: 30: Hoare triple {49783#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49710#(< ~counter~0 16)} is VALID [2022-04-08 05:52:12,393 INFO L290 TraceCheckUtils]: 29: Hoare triple {49783#(< ~counter~0 15)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49783#(< ~counter~0 15)} is VALID [2022-04-08 05:52:12,393 INFO L290 TraceCheckUtils]: 28: Hoare triple {49783#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {49783#(< ~counter~0 15)} is VALID [2022-04-08 05:52:12,394 INFO L290 TraceCheckUtils]: 27: Hoare triple {49793#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49783#(< ~counter~0 15)} is VALID [2022-04-08 05:52:12,394 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {49164#true} {49793#(< ~counter~0 14)} #84#return; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,394 INFO L290 TraceCheckUtils]: 25: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,394 INFO L290 TraceCheckUtils]: 24: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,394 INFO L272 TraceCheckUtils]: 22: Hoare triple {49793#(< ~counter~0 14)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,395 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {49164#true} {49793#(< ~counter~0 14)} #82#return; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,395 INFO L290 TraceCheckUtils]: 20: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,395 INFO L290 TraceCheckUtils]: 19: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,395 INFO L290 TraceCheckUtils]: 18: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,395 INFO L272 TraceCheckUtils]: 17: Hoare triple {49793#(< ~counter~0 14)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,395 INFO L290 TraceCheckUtils]: 16: Hoare triple {49793#(< ~counter~0 14)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,396 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49164#true} {49793#(< ~counter~0 14)} #80#return; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,396 INFO L290 TraceCheckUtils]: 14: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,396 INFO L290 TraceCheckUtils]: 13: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,396 INFO L290 TraceCheckUtils]: 12: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,396 INFO L272 TraceCheckUtils]: 11: Hoare triple {49793#(< ~counter~0 14)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,396 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49164#true} {49793#(< ~counter~0 14)} #78#return; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,397 INFO L290 TraceCheckUtils]: 9: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-08 05:52:12,397 INFO L290 TraceCheckUtils]: 8: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-08 05:52:12,397 INFO L290 TraceCheckUtils]: 7: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-08 05:52:12,397 INFO L272 TraceCheckUtils]: 6: Hoare triple {49793#(< ~counter~0 14)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49164#true} is VALID [2022-04-08 05:52:12,397 INFO L290 TraceCheckUtils]: 5: Hoare triple {49793#(< ~counter~0 14)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,397 INFO L272 TraceCheckUtils]: 4: Hoare triple {49793#(< ~counter~0 14)} call #t~ret8 := main(); {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,398 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49793#(< ~counter~0 14)} {49164#true} #98#return; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {49793#(< ~counter~0 14)} assume true; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,398 INFO L290 TraceCheckUtils]: 1: Hoare triple {49164#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);~counter~0 := 0; {49793#(< ~counter~0 14)} is VALID [2022-04-08 05:52:12,398 INFO L272 TraceCheckUtils]: 0: Hoare triple {49164#true} call ULTIMATE.init(); {49164#true} is VALID [2022-04-08 05:52:12,399 INFO L134 CoverageAnalysis]: Checked inductivity of 357 backedges. 32 proven. 37 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-08 05:52:12,399 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:52:12,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [446230956] [2022-04-08 05:52:12,399 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:52:12,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2094418200] [2022-04-08 05:52:12,399 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2094418200] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:52:12,399 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:52:12,399 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-08 05:52:12,399 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:52:12,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [385726973] [2022-04-08 05:52:12,400 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [385726973] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:52:12,400 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:52:12,400 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 05:52:12,400 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1073196103] [2022-04-08 05:52:12,400 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:52:12,400 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 116 [2022-04-08 05:52:12,400 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:52:12,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:12,466 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-08 05:52:12,466 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 05:52:12,466 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:12,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 05:52:12,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-08 05:52:12,467 INFO L87 Difference]: Start difference. First operand 474 states and 616 transitions. Second operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:14,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:14,030 INFO L93 Difference]: Finished difference Result 731 states and 966 transitions. [2022-04-08 05:52:14,030 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 05:52:14,030 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 116 [2022-04-08 05:52:14,031 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:52:14,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:14,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 175 transitions. [2022-04-08 05:52:14,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:14,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 175 transitions. [2022-04-08 05:52:14,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 175 transitions. [2022-04-08 05:52:14,178 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:14,198 INFO L225 Difference]: With dead ends: 731 [2022-04-08 05:52:14,198 INFO L226 Difference]: Without dead ends: 561 [2022-04-08 05:52:14,199 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 236 GetRequests, 215 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=205, Invalid=301, Unknown=0, NotChecked=0, Total=506 [2022-04-08 05:52:14,199 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 76 mSDsluCounter, 158 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 52 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 222 SdHoareTripleChecker+Invalid, 144 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 52 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:52:14,199 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [76 Valid, 222 Invalid, 144 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [52 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:52:14,200 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 561 states. [2022-04-08 05:52:15,392 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 561 to 553. [2022-04-08 05:52:15,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:52:15,393 INFO L82 GeneralOperation]: Start isEquivalent. First operand 561 states. Second operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-08 05:52:15,394 INFO L74 IsIncluded]: Start isIncluded. First operand 561 states. Second operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-08 05:52:15,394 INFO L87 Difference]: Start difference. First operand 561 states. Second operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-08 05:52:15,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:15,408 INFO L93 Difference]: Finished difference Result 561 states and 699 transitions. [2022-04-08 05:52:15,408 INFO L276 IsEmpty]: Start isEmpty. Operand 561 states and 699 transitions. [2022-04-08 05:52:15,409 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:15,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:15,410 INFO L74 IsIncluded]: Start isIncluded. First operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) Second operand 561 states. [2022-04-08 05:52:15,410 INFO L87 Difference]: Start difference. First operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) Second operand 561 states. [2022-04-08 05:52:15,427 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:15,427 INFO L93 Difference]: Finished difference Result 561 states and 699 transitions. [2022-04-08 05:52:15,427 INFO L276 IsEmpty]: Start isEmpty. Operand 561 states and 699 transitions. [2022-04-08 05:52:15,428 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:15,428 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:15,428 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:52:15,428 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:52:15,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-08 05:52:15,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 553 states to 553 states and 692 transitions. [2022-04-08 05:52:15,456 INFO L78 Accepts]: Start accepts. Automaton has 553 states and 692 transitions. Word has length 116 [2022-04-08 05:52:15,457 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:52:15,457 INFO L478 AbstractCegarLoop]: Abstraction has 553 states and 692 transitions. [2022-04-08 05:52:15,457 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-08 05:52:15,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 553 states and 692 transitions. [2022-04-08 05:52:16,629 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 692 edges. 692 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:16,629 INFO L276 IsEmpty]: Start isEmpty. Operand 553 states and 692 transitions. [2022-04-08 05:52:16,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 119 [2022-04-08 05:52:16,630 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:52:16,630 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:52:16,648 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Ended with exit code 0 [2022-04-08 05:52:16,831 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:52:16,831 INFO L403 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:52:16,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:52:16,831 INFO L85 PathProgramCache]: Analyzing trace with hash 1978671899, now seen corresponding path program 3 times [2022-04-08 05:52:16,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:16,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1083891489] [2022-04-08 05:52:16,832 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:52:16,832 INFO L85 PathProgramCache]: Analyzing trace with hash 1978671899, now seen corresponding path program 4 times [2022-04-08 05:52:16,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:52:16,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [177565722] [2022-04-08 05:52:16,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:52:16,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:52:16,843 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:52:16,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [261248886] [2022-04-08 05:52:16,843 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:52:16,843 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:52:16,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:52:16,844 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:52:16,844 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-08 05:52:16,905 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:52:16,906 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:52:16,907 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-08 05:52:16,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:52:16,929 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:52:17,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {53577#true} call ULTIMATE.init(); {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {53577#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);~counter~0 := 0; {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53577#true} {53577#true} #98#return; {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L272 TraceCheckUtils]: 4: Hoare triple {53577#true} call #t~ret8 := main(); {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L290 TraceCheckUtils]: 5: Hoare triple {53577#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L272 TraceCheckUtils]: 6: Hoare triple {53577#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L290 TraceCheckUtils]: 7: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L290 TraceCheckUtils]: 8: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,337 INFO L290 TraceCheckUtils]: 9: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {53577#true} {53577#true} #78#return; {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L272 TraceCheckUtils]: 11: Hoare triple {53577#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L290 TraceCheckUtils]: 12: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L290 TraceCheckUtils]: 13: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L290 TraceCheckUtils]: 14: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {53577#true} {53577#true} #80#return; {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {53577#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,338 INFO L272 TraceCheckUtils]: 17: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,338 INFO L290 TraceCheckUtils]: 18: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,339 INFO L290 TraceCheckUtils]: 19: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,339 INFO L290 TraceCheckUtils]: 20: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,339 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {53577#true} {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} #82#return; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,339 INFO L272 TraceCheckUtils]: 22: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,339 INFO L290 TraceCheckUtils]: 23: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,339 INFO L290 TraceCheckUtils]: 24: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,339 INFO L290 TraceCheckUtils]: 25: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,340 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {53577#true} {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} #84#return; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,340 INFO L290 TraceCheckUtils]: 27: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,341 INFO L290 TraceCheckUtils]: 28: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,341 INFO L290 TraceCheckUtils]: 29: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,341 INFO L290 TraceCheckUtils]: 30: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,342 INFO L290 TraceCheckUtils]: 31: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,342 INFO L272 TraceCheckUtils]: 32: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,342 INFO L290 TraceCheckUtils]: 33: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,342 INFO L290 TraceCheckUtils]: 34: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,342 INFO L290 TraceCheckUtils]: 35: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,342 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #86#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,343 INFO L272 TraceCheckUtils]: 37: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,343 INFO L290 TraceCheckUtils]: 38: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,343 INFO L290 TraceCheckUtils]: 39: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,343 INFO L290 TraceCheckUtils]: 40: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,343 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #88#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,343 INFO L272 TraceCheckUtils]: 42: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,344 INFO L290 TraceCheckUtils]: 43: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,344 INFO L290 TraceCheckUtils]: 44: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,344 INFO L290 TraceCheckUtils]: 45: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,344 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #90#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,344 INFO L272 TraceCheckUtils]: 47: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,344 INFO L290 TraceCheckUtils]: 48: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,344 INFO L290 TraceCheckUtils]: 49: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,345 INFO L290 TraceCheckUtils]: 50: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,345 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #92#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,346 INFO L290 TraceCheckUtils]: 52: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-08 05:52:17,346 INFO L290 TraceCheckUtils]: 53: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 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; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,346 INFO L290 TraceCheckUtils]: 54: Hoare triple {53743#(= main_~s~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,347 INFO L290 TraceCheckUtils]: 55: Hoare triple {53743#(= main_~s~0 0)} assume !!(#t~post6 < 20);havoc #t~post6; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,347 INFO L290 TraceCheckUtils]: 56: Hoare triple {53743#(= main_~s~0 0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,347 INFO L290 TraceCheckUtils]: 57: Hoare triple {53743#(= main_~s~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,351 INFO L290 TraceCheckUtils]: 58: Hoare triple {53743#(= main_~s~0 0)} assume !!(#t~post7 < 20);havoc #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,351 INFO L272 TraceCheckUtils]: 59: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,351 INFO L290 TraceCheckUtils]: 60: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,351 INFO L290 TraceCheckUtils]: 61: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,351 INFO L290 TraceCheckUtils]: 62: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,352 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #86#return; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,352 INFO L272 TraceCheckUtils]: 64: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,352 INFO L290 TraceCheckUtils]: 65: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,352 INFO L290 TraceCheckUtils]: 66: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,352 INFO L290 TraceCheckUtils]: 67: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,353 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #88#return; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,353 INFO L272 TraceCheckUtils]: 69: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,353 INFO L290 TraceCheckUtils]: 70: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,353 INFO L290 TraceCheckUtils]: 71: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,353 INFO L290 TraceCheckUtils]: 72: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,354 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #90#return; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,354 INFO L272 TraceCheckUtils]: 74: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,354 INFO L290 TraceCheckUtils]: 75: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,354 INFO L290 TraceCheckUtils]: 76: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,354 INFO L290 TraceCheckUtils]: 77: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,354 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #92#return; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,355 INFO L290 TraceCheckUtils]: 79: Hoare triple {53743#(= main_~s~0 0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,355 INFO L290 TraceCheckUtils]: 80: Hoare triple {53743#(= main_~s~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,355 INFO L290 TraceCheckUtils]: 81: Hoare triple {53743#(= main_~s~0 0)} assume !!(#t~post7 < 20);havoc #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,355 INFO L272 TraceCheckUtils]: 82: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,355 INFO L290 TraceCheckUtils]: 83: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,355 INFO L290 TraceCheckUtils]: 84: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,356 INFO L290 TraceCheckUtils]: 85: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,356 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #86#return; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,356 INFO L272 TraceCheckUtils]: 87: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,356 INFO L290 TraceCheckUtils]: 88: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,356 INFO L290 TraceCheckUtils]: 89: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,356 INFO L290 TraceCheckUtils]: 90: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,357 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #88#return; {53743#(= main_~s~0 0)} is VALID [2022-04-08 05:52:17,357 INFO L272 TraceCheckUtils]: 92: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,357 INFO L290 TraceCheckUtils]: 93: Hoare triple {53577#true} ~cond := #in~cond; {53864#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:52:17,358 INFO L290 TraceCheckUtils]: 94: Hoare triple {53864#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:52:17,359 INFO L290 TraceCheckUtils]: 95: Hoare triple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:52:17,360 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} {53743#(= main_~s~0 0)} #90#return; {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:52:17,360 INFO L272 TraceCheckUtils]: 97: Hoare triple {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,360 INFO L290 TraceCheckUtils]: 98: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,360 INFO L290 TraceCheckUtils]: 99: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,360 INFO L290 TraceCheckUtils]: 100: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,361 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {53577#true} {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #92#return; {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:52:17,362 INFO L290 TraceCheckUtils]: 102: Hoare triple {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:52:17,362 INFO L290 TraceCheckUtils]: 103: Hoare triple {53875#(and (= main_~s~0 0) (= 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; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:17,363 INFO L290 TraceCheckUtils]: 104: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:17,363 INFO L290 TraceCheckUtils]: 105: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:17,364 INFO L290 TraceCheckUtils]: 106: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:17,364 INFO L290 TraceCheckUtils]: 107: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:17,365 INFO L290 TraceCheckUtils]: 108: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:17,365 INFO L272 TraceCheckUtils]: 109: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:17,365 INFO L290 TraceCheckUtils]: 110: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:17,365 INFO L290 TraceCheckUtils]: 111: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:17,365 INFO L290 TraceCheckUtils]: 112: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:17,366 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {53577#true} {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} #86#return; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:17,367 INFO L272 TraceCheckUtils]: 114: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~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)); {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:52:17,367 INFO L290 TraceCheckUtils]: 115: Hoare triple {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {53935#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:52:17,367 INFO L290 TraceCheckUtils]: 116: Hoare triple {53935#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {53578#false} is VALID [2022-04-08 05:52:17,367 INFO L290 TraceCheckUtils]: 117: Hoare triple {53578#false} assume !false; {53578#false} is VALID [2022-04-08 05:52:17,368 INFO L134 CoverageAnalysis]: Checked inductivity of 405 backedges. 57 proven. 43 refuted. 0 times theorem prover too weak. 305 trivial. 0 not checked. [2022-04-08 05:52:17,368 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:52:35,367 INFO L290 TraceCheckUtils]: 117: Hoare triple {53578#false} assume !false; {53578#false} is VALID [2022-04-08 05:52:35,367 INFO L290 TraceCheckUtils]: 116: Hoare triple {53935#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {53578#false} is VALID [2022-04-08 05:52:35,368 INFO L290 TraceCheckUtils]: 115: Hoare triple {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {53935#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:52:35,368 INFO L272 TraceCheckUtils]: 114: Hoare triple {53951#(= 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)); {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:52:35,369 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {53577#true} {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:35,369 INFO L290 TraceCheckUtils]: 112: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,369 INFO L290 TraceCheckUtils]: 111: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,369 INFO L290 TraceCheckUtils]: 110: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,369 INFO L272 TraceCheckUtils]: 109: Hoare triple {53951#(= main_~a~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)); {53577#true} is VALID [2022-04-08 05:52:35,370 INFO L290 TraceCheckUtils]: 108: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:35,370 INFO L290 TraceCheckUtils]: 107: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:35,370 INFO L290 TraceCheckUtils]: 106: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:35,371 INFO L290 TraceCheckUtils]: 105: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:35,371 INFO L290 TraceCheckUtils]: 104: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:35,371 INFO L290 TraceCheckUtils]: 103: Hoare triple {53985#(= 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; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:52:35,372 INFO L290 TraceCheckUtils]: 102: Hoare triple {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:52:35,372 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {53577#true} {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #92#return; {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:52:35,372 INFO L290 TraceCheckUtils]: 100: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,373 INFO L290 TraceCheckUtils]: 99: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,373 INFO L290 TraceCheckUtils]: 98: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,373 INFO L272 TraceCheckUtils]: 97: Hoare triple {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,373 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} {53577#true} #90#return; {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:52:35,374 INFO L290 TraceCheckUtils]: 95: Hoare triple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:52:35,374 INFO L290 TraceCheckUtils]: 94: Hoare triple {54016#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:52:35,374 INFO L290 TraceCheckUtils]: 93: Hoare triple {53577#true} ~cond := #in~cond; {54016#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:52:35,375 INFO L272 TraceCheckUtils]: 92: Hoare triple {53577#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {53577#true} {53577#true} #88#return; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 90: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 89: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 88: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L272 TraceCheckUtils]: 87: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {53577#true} {53577#true} #86#return; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 85: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 84: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 83: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L272 TraceCheckUtils]: 82: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 81: Hoare triple {53577#true} assume !!(#t~post7 < 20);havoc #t~post7; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 80: Hoare triple {53577#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53577#true} is VALID [2022-04-08 05:52:35,375 INFO L290 TraceCheckUtils]: 79: Hoare triple {53577#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {53577#true} {53577#true} #92#return; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L290 TraceCheckUtils]: 77: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L290 TraceCheckUtils]: 76: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L290 TraceCheckUtils]: 75: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L272 TraceCheckUtils]: 74: Hoare triple {53577#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {53577#true} {53577#true} #90#return; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L290 TraceCheckUtils]: 72: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L290 TraceCheckUtils]: 71: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L290 TraceCheckUtils]: 70: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L272 TraceCheckUtils]: 69: Hoare triple {53577#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {53577#true} {53577#true} #88#return; {53577#true} is VALID [2022-04-08 05:52:35,376 INFO L290 TraceCheckUtils]: 67: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 66: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 65: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L272 TraceCheckUtils]: 64: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {53577#true} {53577#true} #86#return; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 62: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 61: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 60: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L272 TraceCheckUtils]: 59: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 58: Hoare triple {53577#true} assume !!(#t~post7 < 20);havoc #t~post7; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 57: Hoare triple {53577#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 56: Hoare triple {53577#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 55: Hoare triple {53577#true} assume !!(#t~post6 < 20);havoc #t~post6; {53577#true} is VALID [2022-04-08 05:52:35,377 INFO L290 TraceCheckUtils]: 54: Hoare triple {53577#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 53: Hoare triple {53577#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; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 52: Hoare triple {53577#true} assume !(~c~0 >= ~b~0); {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {53577#true} {53577#true} #92#return; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 50: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 49: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 48: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L272 TraceCheckUtils]: 47: Hoare triple {53577#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {53577#true} {53577#true} #90#return; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 45: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 44: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 43: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L272 TraceCheckUtils]: 42: Hoare triple {53577#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {53577#true} {53577#true} #88#return; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 40: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,378 INFO L290 TraceCheckUtils]: 39: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 38: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L272 TraceCheckUtils]: 37: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {53577#true} {53577#true} #86#return; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 35: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 34: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 33: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L272 TraceCheckUtils]: 32: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 31: Hoare triple {53577#true} assume !!(#t~post7 < 20);havoc #t~post7; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 30: Hoare triple {53577#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 29: Hoare triple {53577#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 28: Hoare triple {53577#true} assume !!(#t~post6 < 20);havoc #t~post6; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {53577#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {53577#true} {53577#true} #84#return; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,379 INFO L290 TraceCheckUtils]: 24: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 23: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L272 TraceCheckUtils]: 22: Hoare triple {53577#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {53577#true} {53577#true} #82#return; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 20: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 19: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 18: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L272 TraceCheckUtils]: 17: Hoare triple {53577#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 16: Hoare triple {53577#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {53577#true} {53577#true} #80#return; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 14: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 13: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 12: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L272 TraceCheckUtils]: 11: Hoare triple {53577#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {53577#true} {53577#true} #78#return; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,380 INFO L290 TraceCheckUtils]: 8: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L272 TraceCheckUtils]: 6: Hoare triple {53577#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L290 TraceCheckUtils]: 5: Hoare triple {53577#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L272 TraceCheckUtils]: 4: Hoare triple {53577#true} call #t~ret8 := main(); {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53577#true} {53577#true} #98#return; {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L290 TraceCheckUtils]: 2: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L290 TraceCheckUtils]: 1: Hoare triple {53577#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);~counter~0 := 0; {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L272 TraceCheckUtils]: 0: Hoare triple {53577#true} call ULTIMATE.init(); {53577#true} is VALID [2022-04-08 05:52:35,381 INFO L134 CoverageAnalysis]: Checked inductivity of 405 backedges. 78 proven. 7 refuted. 0 times theorem prover too weak. 320 trivial. 0 not checked. [2022-04-08 05:52:35,381 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:52:35,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [177565722] [2022-04-08 05:52:35,382 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:52:35,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [261248886] [2022-04-08 05:52:35,382 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [261248886] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:52:35,382 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:52:35,382 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 14 [2022-04-08 05:52:35,382 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:52:35,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1083891489] [2022-04-08 05:52:35,382 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1083891489] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:52:35,382 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:52:35,382 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 05:52:35,382 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1842179520] [2022-04-08 05:52:35,382 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:52:35,383 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) Word has length 118 [2022-04-08 05:52:35,383 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:52:35,383 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:52:35,467 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:35,468 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 05:52:35,468 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:35,468 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 05:52:35,468 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=149, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:52:35,468 INFO L87 Difference]: Start difference. First operand 553 states and 692 transitions. Second operand has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:52:38,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:38,003 INFO L93 Difference]: Finished difference Result 606 states and 774 transitions. [2022-04-08 05:52:38,004 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:52:38,004 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) Word has length 118 [2022-04-08 05:52:38,004 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:52:38,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:52:38,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 127 transitions. [2022-04-08 05:52:38,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:52:38,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 127 transitions. [2022-04-08 05:52:38,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 127 transitions. [2022-04-08 05:52:38,143 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:38,159 INFO L225 Difference]: With dead ends: 606 [2022-04-08 05:52:38,159 INFO L226 Difference]: Without dead ends: 603 [2022-04-08 05:52:38,160 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 239 GetRequests, 222 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-08 05:52:38,160 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 33 mSDsluCounter, 287 mSDsCounter, 0 mSdLazyCounter, 393 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 344 SdHoareTripleChecker+Invalid, 423 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 393 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 05:52:38,160 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 344 Invalid, 423 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 393 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 05:52:38,161 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 603 states. [2022-04-08 05:52:39,356 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 603 to 596. [2022-04-08 05:52:39,356 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:52:39,357 INFO L82 GeneralOperation]: Start isEquivalent. First operand 603 states. Second operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-08 05:52:39,357 INFO L74 IsIncluded]: Start isIncluded. First operand 603 states. Second operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-08 05:52:39,357 INFO L87 Difference]: Start difference. First operand 603 states. Second operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-08 05:52:39,370 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:39,371 INFO L93 Difference]: Finished difference Result 603 states and 770 transitions. [2022-04-08 05:52:39,371 INFO L276 IsEmpty]: Start isEmpty. Operand 603 states and 770 transitions. [2022-04-08 05:52:39,372 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:39,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:39,372 INFO L74 IsIncluded]: Start isIncluded. First operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) Second operand 603 states. [2022-04-08 05:52:39,373 INFO L87 Difference]: Start difference. First operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) Second operand 603 states. [2022-04-08 05:52:39,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:52:39,399 INFO L93 Difference]: Finished difference Result 603 states and 770 transitions. [2022-04-08 05:52:39,399 INFO L276 IsEmpty]: Start isEmpty. Operand 603 states and 770 transitions. [2022-04-08 05:52:39,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:52:39,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:52:39,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:52:39,400 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:52:39,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-08 05:52:39,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 596 states to 596 states and 763 transitions. [2022-04-08 05:52:39,426 INFO L78 Accepts]: Start accepts. Automaton has 596 states and 763 transitions. Word has length 118 [2022-04-08 05:52:39,427 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:52:39,427 INFO L478 AbstractCegarLoop]: Abstraction has 596 states and 763 transitions. [2022-04-08 05:52:39,427 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:52:39,427 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 596 states and 763 transitions. [2022-04-08 05:52:40,884 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 763 edges. 763 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:52:40,884 INFO L276 IsEmpty]: Start isEmpty. Operand 596 states and 763 transitions. [2022-04-08 05:52:40,885 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2022-04-08 05:52:40,885 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:52:40,885 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 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-08 05:52:40,902 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Forceful destruction successful, exit code 0 [2022-04-08 05:52:41,089 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable30 [2022-04-08 05:52:41,091 INFO L403 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:52:41,091 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:52:41,091 INFO L85 PathProgramCache]: Analyzing trace with hash 992936989, now seen corresponding path program 5 times [2022-04-08 05:52:41,091 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:52:41,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2029363837] [2022-04-08 05:52:41,092 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:52:41,092 INFO L85 PathProgramCache]: Analyzing trace with hash 992936989, now seen corresponding path program 6 times [2022-04-08 05:52:41,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:52:41,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1054426448] [2022-04-08 05:52:41,092 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:52:41,092 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:52:41,102 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:52:41,103 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1056497050] [2022-04-08 05:52:41,103 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:52:41,103 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:52:41,103 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:52:41,104 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:52:41,105 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-08 05:52:41,481 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:52:41,481 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:52:41,483 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 48 conjunts are in the unsatisfiable core [2022-04-08 05:52:41,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:52:41,520 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:53:00,370 INFO L272 TraceCheckUtils]: 0: Hoare triple {57916#true} call ULTIMATE.init(); {57916#true} is VALID [2022-04-08 05:53:00,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {57916#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);~counter~0 := 0; {57916#true} is VALID [2022-04-08 05:53:00,371 INFO L290 TraceCheckUtils]: 2: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,371 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {57916#true} {57916#true} #98#return; {57916#true} is VALID [2022-04-08 05:53:00,371 INFO L272 TraceCheckUtils]: 4: Hoare triple {57916#true} call #t~ret8 := main(); {57916#true} is VALID [2022-04-08 05:53:00,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {57916#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {57916#true} is VALID [2022-04-08 05:53:00,371 INFO L272 TraceCheckUtils]: 6: Hoare triple {57916#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,371 INFO L290 TraceCheckUtils]: 7: Hoare triple {57916#true} ~cond := #in~cond; {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:53:00,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:53:00,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:53:00,372 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} {57916#true} #78#return; {57953#(<= 1 main_~x~0)} is VALID [2022-04-08 05:53:00,372 INFO L272 TraceCheckUtils]: 11: Hoare triple {57953#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,372 INFO L290 TraceCheckUtils]: 12: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,373 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {57916#true} {57953#(<= 1 main_~x~0)} #80#return; {57953#(<= 1 main_~x~0)} is VALID [2022-04-08 05:53:00,373 INFO L290 TraceCheckUtils]: 16: Hoare triple {57953#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,374 INFO L272 TraceCheckUtils]: 17: Hoare triple {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,374 INFO L290 TraceCheckUtils]: 18: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,374 INFO L290 TraceCheckUtils]: 19: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,374 INFO L290 TraceCheckUtils]: 20: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,374 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {57916#true} {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #82#return; {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,374 INFO L272 TraceCheckUtils]: 22: Hoare triple {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,375 INFO L290 TraceCheckUtils]: 23: Hoare triple {57916#true} ~cond := #in~cond; {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:53:00,375 INFO L290 TraceCheckUtils]: 24: Hoare triple {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:53:00,375 INFO L290 TraceCheckUtils]: 25: Hoare triple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:53:00,376 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #84#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,377 INFO L290 TraceCheckUtils]: 27: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,377 INFO L290 TraceCheckUtils]: 28: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,378 INFO L290 TraceCheckUtils]: 29: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,378 INFO L290 TraceCheckUtils]: 31: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,379 INFO L272 TraceCheckUtils]: 32: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,379 INFO L290 TraceCheckUtils]: 33: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,379 INFO L290 TraceCheckUtils]: 34: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,379 INFO L290 TraceCheckUtils]: 35: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,380 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #86#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,380 INFO L272 TraceCheckUtils]: 37: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,380 INFO L290 TraceCheckUtils]: 38: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,380 INFO L290 TraceCheckUtils]: 39: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,380 INFO L290 TraceCheckUtils]: 40: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,381 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #88#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,381 INFO L272 TraceCheckUtils]: 42: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,381 INFO L290 TraceCheckUtils]: 43: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,381 INFO L290 TraceCheckUtils]: 44: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,381 INFO L290 TraceCheckUtils]: 45: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,381 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #90#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,382 INFO L272 TraceCheckUtils]: 47: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,382 INFO L290 TraceCheckUtils]: 48: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,382 INFO L290 TraceCheckUtils]: 49: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,382 INFO L290 TraceCheckUtils]: 50: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,382 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #92#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,383 INFO L290 TraceCheckUtils]: 52: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,383 INFO L290 TraceCheckUtils]: 53: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,384 INFO L290 TraceCheckUtils]: 54: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,384 INFO L272 TraceCheckUtils]: 55: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,384 INFO L290 TraceCheckUtils]: 56: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,384 INFO L290 TraceCheckUtils]: 57: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,384 INFO L290 TraceCheckUtils]: 58: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,385 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #86#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,385 INFO L272 TraceCheckUtils]: 60: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,385 INFO L290 TraceCheckUtils]: 61: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,385 INFO L290 TraceCheckUtils]: 62: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,385 INFO L290 TraceCheckUtils]: 63: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,386 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #88#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,386 INFO L272 TraceCheckUtils]: 65: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,386 INFO L290 TraceCheckUtils]: 66: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,386 INFO L290 TraceCheckUtils]: 67: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,386 INFO L290 TraceCheckUtils]: 68: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,387 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #90#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,387 INFO L272 TraceCheckUtils]: 70: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,387 INFO L290 TraceCheckUtils]: 71: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,387 INFO L290 TraceCheckUtils]: 72: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,387 INFO L290 TraceCheckUtils]: 73: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,388 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #92#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,389 INFO L290 TraceCheckUtils]: 75: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,390 INFO L290 TraceCheckUtils]: 76: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,390 INFO L290 TraceCheckUtils]: 77: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,390 INFO L272 TraceCheckUtils]: 78: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,390 INFO L290 TraceCheckUtils]: 79: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,391 INFO L290 TraceCheckUtils]: 80: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,391 INFO L290 TraceCheckUtils]: 81: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,391 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #86#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,391 INFO L272 TraceCheckUtils]: 83: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,392 INFO L290 TraceCheckUtils]: 84: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,392 INFO L290 TraceCheckUtils]: 85: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,392 INFO L290 TraceCheckUtils]: 86: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,392 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #88#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,392 INFO L272 TraceCheckUtils]: 88: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,393 INFO L290 TraceCheckUtils]: 89: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,393 INFO L290 TraceCheckUtils]: 90: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,393 INFO L290 TraceCheckUtils]: 91: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,393 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #90#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,393 INFO L272 TraceCheckUtils]: 93: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,394 INFO L290 TraceCheckUtils]: 94: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,394 INFO L290 TraceCheckUtils]: 95: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,394 INFO L290 TraceCheckUtils]: 96: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,394 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #92#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,395 INFO L290 TraceCheckUtils]: 98: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {58221#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-08 05:53:00,395 INFO L290 TraceCheckUtils]: 99: Hoare triple {58221#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= 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; {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,396 INFO L290 TraceCheckUtils]: 100: Hoare triple {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,396 INFO L290 TraceCheckUtils]: 101: Hoare triple {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} assume !!(#t~post6 < 20);havoc #t~post6; {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,397 INFO L290 TraceCheckUtils]: 102: Hoare triple {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,397 INFO L290 TraceCheckUtils]: 103: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,398 INFO L290 TraceCheckUtils]: 104: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} assume !!(#t~post7 < 20);havoc #t~post7; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,398 INFO L272 TraceCheckUtils]: 105: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,398 INFO L290 TraceCheckUtils]: 106: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,398 INFO L290 TraceCheckUtils]: 107: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,398 INFO L290 TraceCheckUtils]: 108: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,399 INFO L284 TraceCheckUtils]: 109: Hoare quadruple {57916#true} {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #86#return; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,399 INFO L272 TraceCheckUtils]: 110: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,399 INFO L290 TraceCheckUtils]: 111: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-08 05:53:00,399 INFO L290 TraceCheckUtils]: 112: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-08 05:53:00,399 INFO L290 TraceCheckUtils]: 113: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-08 05:53:00,399 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {57916#true} {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #88#return; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,400 INFO L272 TraceCheckUtils]: 115: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-08 05:53:00,400 INFO L290 TraceCheckUtils]: 116: Hoare triple {57916#true} ~cond := #in~cond; {58278#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:53:00,400 INFO L290 TraceCheckUtils]: 117: Hoare triple {58278#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:00,400 INFO L290 TraceCheckUtils]: 118: Hoare triple {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:00,401 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #90#return; {58289#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-08 05:53:00,406 INFO L272 TraceCheckUtils]: 120: Hoare triple {58289#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {58293#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:53:00,406 INFO L290 TraceCheckUtils]: 121: Hoare triple {58293#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {58297#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:53:00,406 INFO L290 TraceCheckUtils]: 122: Hoare triple {58297#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {57917#false} is VALID [2022-04-08 05:53:00,407 INFO L290 TraceCheckUtils]: 123: Hoare triple {57917#false} assume !false; {57917#false} is VALID [2022-04-08 05:53:00,407 INFO L134 CoverageAnalysis]: Checked inductivity of 516 backedges. 91 proven. 28 refuted. 0 times theorem prover too weak. 397 trivial. 0 not checked. [2022-04-08 05:53:00,407 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:53:40,754 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:53:40,754 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1054426448] [2022-04-08 05:53:40,754 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:53:40,754 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1056497050] [2022-04-08 05:53:40,754 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1056497050] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:53:40,754 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:53:40,754 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-04-08 05:53:40,755 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:53:40,755 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2029363837] [2022-04-08 05:53:40,755 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2029363837] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:53:40,755 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:53:40,755 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 05:53:40,755 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1591443181] [2022-04-08 05:53:40,755 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:53:40,755 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 124 [2022-04-08 05:53:40,756 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:53:40,756 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:53:40,840 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:53:40,840 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 05:53:40,840 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:53:40,840 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 05:53:40,840 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=403, Unknown=0, NotChecked=0, Total=506 [2022-04-08 05:53:40,841 INFO L87 Difference]: Start difference. First operand 596 states and 763 transitions. Second operand has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:53:55,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:53:55,300 INFO L93 Difference]: Finished difference Result 619 states and 791 transitions. [2022-04-08 05:53:55,300 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 05:53:55,300 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 124 [2022-04-08 05:53:55,300 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:53:55,300 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:53:55,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 111 transitions. [2022-04-08 05:53:55,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:53:55,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 111 transitions. [2022-04-08 05:53:55,302 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 111 transitions. [2022-04-08 05:53:55,448 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:53:55,468 INFO L225 Difference]: With dead ends: 619 [2022-04-08 05:53:55,468 INFO L226 Difference]: Without dead ends: 615 [2022-04-08 05:53:55,469 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 151 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 165 ImplicationChecksByTransitivity, 3.9s TimeCoverageRelationStatistics Valid=133, Invalid=569, Unknown=0, NotChecked=0, Total=702 [2022-04-08 05:53:55,469 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 54 mSDsluCounter, 268 mSDsCounter, 0 mSdLazyCounter, 624 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 318 SdHoareTripleChecker+Invalid, 656 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 624 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:53:55,469 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [64 Valid, 318 Invalid, 656 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 624 Invalid, 0 Unknown, 0 Unchecked, 3.4s Time] [2022-04-08 05:53:55,470 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 615 states. [2022-04-08 05:53:56,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 615 to 609. [2022-04-08 05:53:56,865 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:53:56,866 INFO L82 GeneralOperation]: Start isEquivalent. First operand 615 states. Second operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-08 05:53:56,867 INFO L74 IsIncluded]: Start isIncluded. First operand 615 states. Second operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-08 05:53:56,867 INFO L87 Difference]: Start difference. First operand 615 states. Second operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-08 05:53:56,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:53:56,881 INFO L93 Difference]: Finished difference Result 615 states and 786 transitions. [2022-04-08 05:53:56,881 INFO L276 IsEmpty]: Start isEmpty. Operand 615 states and 786 transitions. [2022-04-08 05:53:56,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:53:56,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:53:56,883 INFO L74 IsIncluded]: Start isIncluded. First operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) Second operand 615 states. [2022-04-08 05:53:56,883 INFO L87 Difference]: Start difference. First operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) Second operand 615 states. [2022-04-08 05:53:56,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:53:56,903 INFO L93 Difference]: Finished difference Result 615 states and 786 transitions. [2022-04-08 05:53:56,903 INFO L276 IsEmpty]: Start isEmpty. Operand 615 states and 786 transitions. [2022-04-08 05:53:56,904 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:53:56,904 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:53:56,904 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:53:56,904 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:53:56,905 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-08 05:53:56,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 609 states to 609 states and 780 transitions. [2022-04-08 05:53:56,930 INFO L78 Accepts]: Start accepts. Automaton has 609 states and 780 transitions. Word has length 124 [2022-04-08 05:53:56,930 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:53:56,930 INFO L478 AbstractCegarLoop]: Abstraction has 609 states and 780 transitions. [2022-04-08 05:53:56,930 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-08 05:53:56,930 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 609 states and 780 transitions. [2022-04-08 05:53:58,361 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 780 edges. 780 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:53:58,362 INFO L276 IsEmpty]: Start isEmpty. Operand 609 states and 780 transitions. [2022-04-08 05:53:58,362 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2022-04-08 05:53:58,362 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:53:58,362 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:53:58,367 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-08 05:53:58,563 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:53:58,563 INFO L403 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:53:58,563 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:53:58,564 INFO L85 PathProgramCache]: Analyzing trace with hash -1110867224, now seen corresponding path program 7 times [2022-04-08 05:53:58,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:53:58,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1212574745] [2022-04-08 05:53:58,564 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:53:58,564 INFO L85 PathProgramCache]: Analyzing trace with hash -1110867224, now seen corresponding path program 8 times [2022-04-08 05:53:58,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:53:58,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1405742584] [2022-04-08 05:53:58,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:53:58,565 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:53:58,575 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:53:58,575 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [201504070] [2022-04-08 05:53:58,575 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:53:58,575 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:53:58,575 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:53:58,576 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:53:58,577 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-08 05:53:58,648 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:53:58,648 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:53:58,649 INFO L263 TraceCheckSpWp]: Trace formula consists of 331 conjuncts, 71 conjunts are in the unsatisfiable core [2022-04-08 05:53:58,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:53:58,671 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:54:18,294 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:54:22,981 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:54:23,309 INFO L272 TraceCheckUtils]: 0: Hoare triple {62154#true} call ULTIMATE.init(); {62154#true} is VALID [2022-04-08 05:54:23,309 INFO L290 TraceCheckUtils]: 1: Hoare triple {62154#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);~counter~0 := 0; {62154#true} is VALID [2022-04-08 05:54:23,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {62154#true} {62154#true} #98#return; {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {62154#true} call #t~ret8 := main(); {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {62154#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L272 TraceCheckUtils]: 6: Hoare triple {62154#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {62154#true} {62154#true} #78#return; {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L272 TraceCheckUtils]: 11: Hoare triple {62154#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,310 INFO L290 TraceCheckUtils]: 12: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,311 INFO L290 TraceCheckUtils]: 13: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,311 INFO L290 TraceCheckUtils]: 14: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,311 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {62154#true} {62154#true} #80#return; {62154#true} is VALID [2022-04-08 05:54:23,311 INFO L290 TraceCheckUtils]: 16: Hoare triple {62154#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {62207#(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-08 05:54:23,311 INFO L272 TraceCheckUtils]: 17: Hoare triple {62207#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,311 INFO L290 TraceCheckUtils]: 18: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,312 INFO L290 TraceCheckUtils]: 19: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,312 INFO L290 TraceCheckUtils]: 20: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,312 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {62154#true} {62207#(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))} #82#return; {62207#(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-08 05:54:23,313 INFO L272 TraceCheckUtils]: 22: Hoare triple {62207#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,313 INFO L290 TraceCheckUtils]: 23: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,313 INFO L290 TraceCheckUtils]: 24: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,313 INFO L290 TraceCheckUtils]: 25: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,314 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {62154#true} {62207#(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))} #84#return; {62207#(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-08 05:54:23,314 INFO L290 TraceCheckUtils]: 27: Hoare triple {62207#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62207#(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-08 05:54:23,315 INFO L290 TraceCheckUtils]: 28: Hoare triple {62207#(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 !!(#t~post6 < 20);havoc #t~post6; {62207#(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-08 05:54:23,315 INFO L290 TraceCheckUtils]: 29: Hoare triple {62207#(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);~c~0 := ~a~0;~k~0 := 0; {62247#(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-08 05:54:23,316 INFO L290 TraceCheckUtils]: 30: Hoare triple {62247#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62247#(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-08 05:54:23,316 INFO L290 TraceCheckUtils]: 31: Hoare triple {62247#(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 !!(#t~post7 < 20);havoc #t~post7; {62247#(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-08 05:54:23,316 INFO L272 TraceCheckUtils]: 32: Hoare triple {62247#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,316 INFO L290 TraceCheckUtils]: 33: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,316 INFO L290 TraceCheckUtils]: 34: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,316 INFO L290 TraceCheckUtils]: 35: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,317 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {62154#true} {62247#(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))} #86#return; {62247#(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-08 05:54:23,317 INFO L272 TraceCheckUtils]: 37: Hoare triple {62247#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,317 INFO L290 TraceCheckUtils]: 38: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,317 INFO L290 TraceCheckUtils]: 39: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,318 INFO L290 TraceCheckUtils]: 40: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,318 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {62154#true} {62247#(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))} #88#return; {62247#(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-08 05:54:23,319 INFO L272 TraceCheckUtils]: 42: Hoare triple {62247#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,319 INFO L290 TraceCheckUtils]: 43: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:23,319 INFO L290 TraceCheckUtils]: 44: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,320 INFO L290 TraceCheckUtils]: 45: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,320 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62247#(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))} #90#return; {62247#(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-08 05:54:23,321 INFO L272 TraceCheckUtils]: 47: Hoare triple {62247#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,321 INFO L290 TraceCheckUtils]: 48: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,321 INFO L290 TraceCheckUtils]: 49: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,321 INFO L290 TraceCheckUtils]: 50: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,322 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {62154#true} {62247#(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))} #92#return; {62247#(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-08 05:54:23,322 INFO L290 TraceCheckUtils]: 52: Hoare triple {62247#(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); {62247#(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-08 05:54:23,323 INFO L290 TraceCheckUtils]: 53: Hoare triple {62247#(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; {62322#(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-08 05:54:23,323 INFO L290 TraceCheckUtils]: 54: Hoare triple {62322#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62322#(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-08 05:54:23,324 INFO L290 TraceCheckUtils]: 55: Hoare triple {62322#(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 !!(#t~post6 < 20);havoc #t~post6; {62322#(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-08 05:54:23,324 INFO L290 TraceCheckUtils]: 56: Hoare triple {62322#(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);~c~0 := ~a~0;~k~0 := 0; {62332#(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-08 05:54:23,325 INFO L290 TraceCheckUtils]: 57: Hoare triple {62332#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62332#(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-08 05:54:23,325 INFO L290 TraceCheckUtils]: 58: Hoare triple {62332#(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 !!(#t~post7 < 20);havoc #t~post7; {62332#(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-08 05:54:23,325 INFO L272 TraceCheckUtils]: 59: Hoare triple {62332#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,325 INFO L290 TraceCheckUtils]: 60: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,325 INFO L290 TraceCheckUtils]: 61: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,326 INFO L290 TraceCheckUtils]: 62: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,326 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {62154#true} {62332#(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))} #86#return; {62332#(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-08 05:54:23,326 INFO L272 TraceCheckUtils]: 64: Hoare triple {62332#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,327 INFO L290 TraceCheckUtils]: 65: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,327 INFO L290 TraceCheckUtils]: 66: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,327 INFO L290 TraceCheckUtils]: 67: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,327 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {62154#true} {62332#(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))} #88#return; {62332#(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-08 05:54:23,328 INFO L272 TraceCheckUtils]: 69: Hoare triple {62332#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,328 INFO L290 TraceCheckUtils]: 70: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,328 INFO L290 TraceCheckUtils]: 71: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,328 INFO L290 TraceCheckUtils]: 72: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,329 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {62154#true} {62332#(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))} #90#return; {62332#(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-08 05:54:23,329 INFO L272 TraceCheckUtils]: 74: Hoare triple {62332#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,329 INFO L290 TraceCheckUtils]: 75: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,329 INFO L290 TraceCheckUtils]: 76: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,329 INFO L290 TraceCheckUtils]: 77: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,330 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {62154#true} {62332#(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))} #92#return; {62332#(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-08 05:54:23,331 INFO L290 TraceCheckUtils]: 79: Hoare triple {62332#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-08 05:54:23,332 INFO L290 TraceCheckUtils]: 80: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-08 05:54:23,332 INFO L290 TraceCheckUtils]: 81: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-08 05:54:23,333 INFO L272 TraceCheckUtils]: 82: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,333 INFO L290 TraceCheckUtils]: 83: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:23,333 INFO L290 TraceCheckUtils]: 84: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,334 INFO L290 TraceCheckUtils]: 85: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,335 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} #86#return; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-08 05:54:23,335 INFO L272 TraceCheckUtils]: 87: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,335 INFO L290 TraceCheckUtils]: 88: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:23,335 INFO L290 TraceCheckUtils]: 89: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,336 INFO L290 TraceCheckUtils]: 90: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,337 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} #88#return; {62439#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:54:23,337 INFO L272 TraceCheckUtils]: 92: Hoare triple {62439#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,338 INFO L290 TraceCheckUtils]: 93: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:23,338 INFO L290 TraceCheckUtils]: 94: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,339 INFO L290 TraceCheckUtils]: 95: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:23,340 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62439#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #90#return; {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:54:23,340 INFO L272 TraceCheckUtils]: 97: Hoare triple {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,340 INFO L290 TraceCheckUtils]: 98: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,340 INFO L290 TraceCheckUtils]: 99: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,340 INFO L290 TraceCheckUtils]: 100: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,341 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {62154#true} {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} #92#return; {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:54:23,342 INFO L290 TraceCheckUtils]: 102: Hoare triple {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:54:23,354 INFO L290 TraceCheckUtils]: 103: Hoare triple {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~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; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,356 INFO L290 TraceCheckUtils]: 104: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,357 INFO L290 TraceCheckUtils]: 105: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,359 INFO L290 TraceCheckUtils]: 106: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,360 INFO L290 TraceCheckUtils]: 107: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,362 INFO L290 TraceCheckUtils]: 108: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,362 INFO L272 TraceCheckUtils]: 109: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,362 INFO L290 TraceCheckUtils]: 110: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,362 INFO L290 TraceCheckUtils]: 111: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,362 INFO L290 TraceCheckUtils]: 112: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,363 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {62154#true} {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #86#return; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,363 INFO L272 TraceCheckUtils]: 114: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:54:23,363 INFO L290 TraceCheckUtils]: 115: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:54:23,363 INFO L290 TraceCheckUtils]: 116: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:54:23,363 INFO L290 TraceCheckUtils]: 117: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:54:23,364 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {62154#true} {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #88#return; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-08 05:54:23,368 INFO L272 TraceCheckUtils]: 119: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:54:23,368 INFO L290 TraceCheckUtils]: 120: Hoare triple {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {62530#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:23,369 INFO L290 TraceCheckUtils]: 121: Hoare triple {62530#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {62155#false} is VALID [2022-04-08 05:54:23,369 INFO L290 TraceCheckUtils]: 122: Hoare triple {62155#false} assume !false; {62155#false} is VALID [2022-04-08 05:54:23,369 INFO L134 CoverageAnalysis]: Checked inductivity of 462 backedges. 93 proven. 101 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-08 05:54:23,369 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:55:52,426 INFO L290 TraceCheckUtils]: 122: Hoare triple {62155#false} assume !false; {62155#false} is VALID [2022-04-08 05:55:52,426 INFO L290 TraceCheckUtils]: 121: Hoare triple {62530#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {62155#false} is VALID [2022-04-08 05:55:52,426 INFO L290 TraceCheckUtils]: 120: Hoare triple {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {62530#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:52,427 INFO L272 TraceCheckUtils]: 119: Hoare triple {62546#(= 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)); {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:55:52,428 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {62154#true} {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #88#return; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:52,428 INFO L290 TraceCheckUtils]: 117: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:52,428 INFO L290 TraceCheckUtils]: 116: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:52,428 INFO L290 TraceCheckUtils]: 115: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:52,428 INFO L272 TraceCheckUtils]: 114: Hoare triple {62546#(= 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)); {62154#true} is VALID [2022-04-08 05:55:52,429 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {62154#true} {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #86#return; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:52,429 INFO L290 TraceCheckUtils]: 112: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:52,429 INFO L290 TraceCheckUtils]: 111: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:52,429 INFO L290 TraceCheckUtils]: 110: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:52,429 INFO L272 TraceCheckUtils]: 109: Hoare triple {62546#(= 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)); {62154#true} is VALID [2022-04-08 05:55:52,429 INFO L290 TraceCheckUtils]: 108: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:52,430 INFO L290 TraceCheckUtils]: 107: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:52,430 INFO L290 TraceCheckUtils]: 106: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:52,430 INFO L290 TraceCheckUtils]: 105: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:52,431 INFO L290 TraceCheckUtils]: 104: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:54,433 WARN L290 TraceCheckUtils]: 103: Hoare triple {62595#(= (+ (* (+ (* (* 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; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-08 05:55:54,434 INFO L290 TraceCheckUtils]: 102: Hoare triple {62595#(= (+ (* (+ (* (* 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); {62595#(= (+ (* (+ (* (* 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-08 05:55:54,435 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {62154#true} {62595#(= (+ (* (+ (* (* 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)} #92#return; {62595#(= (+ (* (+ (* (* 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-08 05:55:54,435 INFO L290 TraceCheckUtils]: 100: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,435 INFO L290 TraceCheckUtils]: 99: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,435 INFO L290 TraceCheckUtils]: 98: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,435 INFO L272 TraceCheckUtils]: 97: Hoare triple {62595#(= (+ (* (+ (* (* 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)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,436 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62617#(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)))))} #90#return; {62595#(= (+ (* (+ (* (* 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-08 05:55:54,436 INFO L290 TraceCheckUtils]: 95: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,436 INFO L290 TraceCheckUtils]: 94: Hoare triple {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,437 INFO L290 TraceCheckUtils]: 93: Hoare triple {62154#true} ~cond := #in~cond; {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:55:54,437 INFO L272 TraceCheckUtils]: 92: Hoare triple {62617#(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)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,438 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62634#(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_~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)))))} #88#return; {62617#(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-08 05:55:54,438 INFO L290 TraceCheckUtils]: 90: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,438 INFO L290 TraceCheckUtils]: 89: Hoare triple {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,439 INFO L290 TraceCheckUtils]: 88: Hoare triple {62154#true} ~cond := #in~cond; {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:55:54,439 INFO L272 TraceCheckUtils]: 87: Hoare triple {62634#(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_~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)); {62154#true} is VALID [2022-04-08 05:55:54,456 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62154#true} #86#return; {62634#(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_~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-08 05:55:54,457 INFO L290 TraceCheckUtils]: 85: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,457 INFO L290 TraceCheckUtils]: 84: Hoare triple {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,457 INFO L290 TraceCheckUtils]: 83: Hoare triple {62154#true} ~cond := #in~cond; {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:55:54,458 INFO L272 TraceCheckUtils]: 82: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 81: Hoare triple {62154#true} assume !!(#t~post7 < 20);havoc #t~post7; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 80: Hoare triple {62154#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 79: Hoare triple {62154#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {62154#true} {62154#true} #92#return; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 77: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 76: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 75: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L272 TraceCheckUtils]: 74: Hoare triple {62154#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {62154#true} {62154#true} #90#return; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 72: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 71: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L290 TraceCheckUtils]: 70: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,458 INFO L272 TraceCheckUtils]: 69: Hoare triple {62154#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {62154#true} {62154#true} #88#return; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 67: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 66: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 65: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L272 TraceCheckUtils]: 64: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {62154#true} {62154#true} #86#return; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 62: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 61: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 60: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L272 TraceCheckUtils]: 59: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 58: Hoare triple {62154#true} assume !!(#t~post7 < 20);havoc #t~post7; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 57: Hoare triple {62154#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 56: Hoare triple {62154#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62154#true} is VALID [2022-04-08 05:55:54,459 INFO L290 TraceCheckUtils]: 55: Hoare triple {62154#true} assume !!(#t~post6 < 20);havoc #t~post6; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 54: Hoare triple {62154#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 53: Hoare triple {62154#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; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 52: Hoare triple {62154#true} assume !(~c~0 >= ~b~0); {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {62154#true} {62154#true} #92#return; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 50: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 49: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 48: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L272 TraceCheckUtils]: 47: Hoare triple {62154#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {62154#true} {62154#true} #90#return; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 45: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 44: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 43: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L272 TraceCheckUtils]: 42: Hoare triple {62154#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {62154#true} {62154#true} #88#return; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 40: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,460 INFO L290 TraceCheckUtils]: 39: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 38: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L272 TraceCheckUtils]: 37: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {62154#true} {62154#true} #86#return; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 35: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 34: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L272 TraceCheckUtils]: 32: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 31: Hoare triple {62154#true} assume !!(#t~post7 < 20);havoc #t~post7; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 30: Hoare triple {62154#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 29: Hoare triple {62154#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 28: Hoare triple {62154#true} assume !!(#t~post6 < 20);havoc #t~post6; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 27: Hoare triple {62154#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {62154#true} {62154#true} #84#return; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 25: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 23: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L272 TraceCheckUtils]: 22: Hoare triple {62154#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {62154#true} {62154#true} #82#return; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 20: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 19: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 18: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L272 TraceCheckUtils]: 17: Hoare triple {62154#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 16: Hoare triple {62154#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {62154#true} {62154#true} #80#return; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 14: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 13: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 12: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L272 TraceCheckUtils]: 11: Hoare triple {62154#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {62154#true} {62154#true} #78#return; {62154#true} is VALID [2022-04-08 05:55:54,462 INFO L290 TraceCheckUtils]: 9: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L290 TraceCheckUtils]: 8: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L290 TraceCheckUtils]: 7: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L272 TraceCheckUtils]: 6: Hoare triple {62154#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L290 TraceCheckUtils]: 5: Hoare triple {62154#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L272 TraceCheckUtils]: 4: Hoare triple {62154#true} call #t~ret8 := main(); {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {62154#true} {62154#true} #98#return; {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L290 TraceCheckUtils]: 2: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L290 TraceCheckUtils]: 1: Hoare triple {62154#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);~counter~0 := 0; {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L272 TraceCheckUtils]: 0: Hoare triple {62154#true} call ULTIMATE.init(); {62154#true} is VALID [2022-04-08 05:55:54,463 INFO L134 CoverageAnalysis]: Checked inductivity of 462 backedges. 125 proven. 32 refuted. 0 times theorem prover too weak. 305 trivial. 0 not checked. [2022-04-08 05:55:54,464 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:55:54,464 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1405742584] [2022-04-08 05:55:54,464 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:55:54,464 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [201504070] [2022-04-08 05:55:54,464 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [201504070] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:55:54,464 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:55:54,464 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 10] total 19 [2022-04-08 05:55:54,464 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:55:54,464 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1212574745] [2022-04-08 05:55:54,464 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1212574745] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:55:54,464 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:55:54,464 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 05:55:54,464 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [262350775] [2022-04-08 05:55:54,465 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:55:54,465 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) Word has length 123 [2022-04-08 05:55:54,465 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:55:54,465 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 05:55:54,564 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-08 05:55:54,564 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 05:55:54,564 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:55:54,564 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 05:55:54,564 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=284, Unknown=0, NotChecked=0, Total=342 [2022-04-08 05:55:54,564 INFO L87 Difference]: Start difference. First operand 609 states and 780 transitions. Second operand has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 05:55:58,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:58,486 INFO L93 Difference]: Finished difference Result 638 states and 824 transitions. [2022-04-08 05:55:58,486 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 05:55:58,486 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) Word has length 123 [2022-04-08 05:55:58,486 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:55:58,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 05:55:58,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 138 transitions. [2022-04-08 05:55:58,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 05:55:58,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 138 transitions. [2022-04-08 05:55:58,489 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 138 transitions. [2022-04-08 05:55:58,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:55:58,682 INFO L225 Difference]: With dead ends: 638 [2022-04-08 05:55:58,683 INFO L226 Difference]: Without dead ends: 636 [2022-04-08 05:55:58,683 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 249 GetRequests, 226 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=87, Invalid=419, Unknown=0, NotChecked=0, Total=506 [2022-04-08 05:55:58,683 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 38 mSDsluCounter, 331 mSDsCounter, 0 mSdLazyCounter, 659 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 389 SdHoareTripleChecker+Invalid, 693 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 659 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:55:58,684 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 389 Invalid, 693 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 659 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-08 05:55:58,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 636 states. [2022-04-08 05:56:00,098 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 636 to 632. [2022-04-08 05:56:00,098 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:56:00,099 INFO L82 GeneralOperation]: Start isEquivalent. First operand 636 states. Second operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-08 05:56:00,099 INFO L74 IsIncluded]: Start isIncluded. First operand 636 states. Second operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-08 05:56:00,100 INFO L87 Difference]: Start difference. First operand 636 states. Second operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-08 05:56:00,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:56:00,115 INFO L93 Difference]: Finished difference Result 636 states and 822 transitions. [2022-04-08 05:56:00,115 INFO L276 IsEmpty]: Start isEmpty. Operand 636 states and 822 transitions. [2022-04-08 05:56:00,116 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:56:00,116 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:56:00,116 INFO L74 IsIncluded]: Start isIncluded. First operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) Second operand 636 states. [2022-04-08 05:56:00,117 INFO L87 Difference]: Start difference. First operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) Second operand 636 states. [2022-04-08 05:56:00,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:56:00,131 INFO L93 Difference]: Finished difference Result 636 states and 822 transitions. [2022-04-08 05:56:00,131 INFO L276 IsEmpty]: Start isEmpty. Operand 636 states and 822 transitions. [2022-04-08 05:56:00,132 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:56:00,132 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:56:00,132 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:56:00,132 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:56:00,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-08 05:56:00,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 632 states to 632 states and 818 transitions. [2022-04-08 05:56:00,152 INFO L78 Accepts]: Start accepts. Automaton has 632 states and 818 transitions. Word has length 123 [2022-04-08 05:56:00,152 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:56:00,152 INFO L478 AbstractCegarLoop]: Abstraction has 632 states and 818 transitions. [2022-04-08 05:56:00,152 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 05:56:00,152 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 632 states and 818 transitions. [2022-04-08 05:56:01,747 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 818 edges. 818 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:56:01,747 INFO L276 IsEmpty]: Start isEmpty. Operand 632 states and 818 transitions. [2022-04-08 05:56:01,748 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 129 [2022-04-08 05:56:01,748 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:56:01,748 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:56:01,764 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Forceful destruction successful, exit code 0 [2022-04-08 05:56:01,948 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:56:01,949 INFO L403 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:56:01,949 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:56:01,949 INFO L85 PathProgramCache]: Analyzing trace with hash -270396677, now seen corresponding path program 9 times [2022-04-08 05:56:01,949 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:56:01,949 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1916724254] [2022-04-08 05:56:01,949 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:56:01,949 INFO L85 PathProgramCache]: Analyzing trace with hash -270396677, now seen corresponding path program 10 times [2022-04-08 05:56:01,949 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:56:01,949 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [308209363] [2022-04-08 05:56:01,950 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:56:01,950 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:56:01,960 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:56:01,960 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1505133559] [2022-04-08 05:56:01,960 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:56:01,960 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:56:01,960 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:56:01,961 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:56:01,978 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-08 05:56:02,040 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:56:02,041 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:56:02,042 INFO L263 TraceCheckSpWp]: Trace formula consists of 292 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-08 05:56:02,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:56:02,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:56:03,564 INFO L272 TraceCheckUtils]: 0: Hoare triple {66730#true} call ULTIMATE.init(); {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {66730#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);~counter~0 := 0; {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L290 TraceCheckUtils]: 2: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66730#true} {66730#true} #98#return; {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L272 TraceCheckUtils]: 4: Hoare triple {66730#true} call #t~ret8 := main(); {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {66730#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~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; {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L272 TraceCheckUtils]: 6: Hoare triple {66730#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {66730#true} {66730#true} #78#return; {66730#true} is VALID [2022-04-08 05:56:03,565 INFO L272 TraceCheckUtils]: 11: Hoare triple {66730#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L290 TraceCheckUtils]: 14: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {66730#true} {66730#true} #80#return; {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L290 TraceCheckUtils]: 16: Hoare triple {66730#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,566 INFO L272 TraceCheckUtils]: 17: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L290 TraceCheckUtils]: 18: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L290 TraceCheckUtils]: 19: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,566 INFO L290 TraceCheckUtils]: 20: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,567 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {66730#true} {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,567 INFO L272 TraceCheckUtils]: 22: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,567 INFO L290 TraceCheckUtils]: 24: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,568 INFO L290 TraceCheckUtils]: 25: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,568 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {66730#true} {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,569 INFO L290 TraceCheckUtils]: 27: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,569 INFO L290 TraceCheckUtils]: 28: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,570 INFO L290 TraceCheckUtils]: 29: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,570 INFO L290 TraceCheckUtils]: 30: Hoare triple {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,570 INFO L290 TraceCheckUtils]: 31: Hoare triple {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,571 INFO L272 TraceCheckUtils]: 32: Hoare triple {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,571 INFO L290 TraceCheckUtils]: 33: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,571 INFO L290 TraceCheckUtils]: 34: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,571 INFO L290 TraceCheckUtils]: 35: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,572 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {66730#true} {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,572 INFO L272 TraceCheckUtils]: 37: Hoare triple {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {66730#true} is VALID [2022-04-08 05:56:03,572 INFO L290 TraceCheckUtils]: 38: Hoare triple {66730#true} ~cond := #in~cond; {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:56:03,572 INFO L290 TraceCheckUtils]: 39: Hoare triple {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:03,572 INFO L290 TraceCheckUtils]: 40: Hoare triple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:03,573 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} {66823#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,574 INFO L272 TraceCheckUtils]: 42: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {66730#true} is VALID [2022-04-08 05:56:03,574 INFO L290 TraceCheckUtils]: 43: Hoare triple {66730#true} ~cond := #in~cond; {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:56:03,574 INFO L290 TraceCheckUtils]: 44: Hoare triple {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:03,574 INFO L290 TraceCheckUtils]: 45: Hoare triple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:03,575 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #90#return; {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,575 INFO L272 TraceCheckUtils]: 47: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,575 INFO L290 TraceCheckUtils]: 48: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,575 INFO L290 TraceCheckUtils]: 49: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,575 INFO L290 TraceCheckUtils]: 50: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,576 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {66730#true} {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #92#return; {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,577 INFO L290 TraceCheckUtils]: 52: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:56:03,577 INFO L290 TraceCheckUtils]: 53: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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; {66899#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,578 INFO L290 TraceCheckUtils]: 54: Hoare triple {66899#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66899#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,578 INFO L290 TraceCheckUtils]: 55: Hoare triple {66899#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {66899#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,578 INFO L290 TraceCheckUtils]: 56: Hoare triple {66899#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,579 INFO L290 TraceCheckUtils]: 57: Hoare triple {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,579 INFO L290 TraceCheckUtils]: 58: Hoare triple {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,579 INFO L272 TraceCheckUtils]: 59: Hoare triple {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,580 INFO L290 TraceCheckUtils]: 60: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,580 INFO L290 TraceCheckUtils]: 61: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,580 INFO L290 TraceCheckUtils]: 62: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,580 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {66730#true} {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,581 INFO L272 TraceCheckUtils]: 64: Hoare triple {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,581 INFO L290 TraceCheckUtils]: 65: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,581 INFO L290 TraceCheckUtils]: 66: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,581 INFO L290 TraceCheckUtils]: 67: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,581 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {66730#true} {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,582 INFO L272 TraceCheckUtils]: 69: Hoare triple {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,582 INFO L290 TraceCheckUtils]: 70: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,582 INFO L290 TraceCheckUtils]: 71: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,582 INFO L290 TraceCheckUtils]: 72: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,582 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {66730#true} {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,583 INFO L272 TraceCheckUtils]: 74: Hoare triple {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,583 INFO L290 TraceCheckUtils]: 75: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,583 INFO L290 TraceCheckUtils]: 76: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,583 INFO L290 TraceCheckUtils]: 77: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,584 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {66730#true} {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #92#return; {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,584 INFO L290 TraceCheckUtils]: 79: Hoare triple {66909#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,584 INFO L290 TraceCheckUtils]: 80: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,585 INFO L290 TraceCheckUtils]: 81: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,585 INFO L272 TraceCheckUtils]: 82: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,585 INFO L290 TraceCheckUtils]: 83: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,585 INFO L290 TraceCheckUtils]: 84: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,585 INFO L290 TraceCheckUtils]: 85: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,586 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,586 INFO L272 TraceCheckUtils]: 87: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,586 INFO L290 TraceCheckUtils]: 88: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,586 INFO L290 TraceCheckUtils]: 89: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,586 INFO L290 TraceCheckUtils]: 90: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,587 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,587 INFO L272 TraceCheckUtils]: 92: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,587 INFO L290 TraceCheckUtils]: 93: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,587 INFO L290 TraceCheckUtils]: 94: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,587 INFO L290 TraceCheckUtils]: 95: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,588 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,588 INFO L272 TraceCheckUtils]: 97: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,588 INFO L290 TraceCheckUtils]: 98: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,588 INFO L290 TraceCheckUtils]: 99: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,588 INFO L290 TraceCheckUtils]: 100: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,589 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #92#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,589 INFO L290 TraceCheckUtils]: 102: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,590 INFO L290 TraceCheckUtils]: 103: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~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; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,590 INFO L290 TraceCheckUtils]: 104: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,591 INFO L290 TraceCheckUtils]: 105: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,591 INFO L290 TraceCheckUtils]: 106: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,592 INFO L290 TraceCheckUtils]: 107: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,592 INFO L290 TraceCheckUtils]: 108: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,592 INFO L272 TraceCheckUtils]: 109: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,592 INFO L290 TraceCheckUtils]: 110: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,592 INFO L290 TraceCheckUtils]: 111: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,593 INFO L290 TraceCheckUtils]: 112: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,593 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {66730#true} {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,593 INFO L272 TraceCheckUtils]: 114: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,593 INFO L290 TraceCheckUtils]: 115: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-08 05:56:03,593 INFO L290 TraceCheckUtils]: 116: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-08 05:56:03,593 INFO L290 TraceCheckUtils]: 117: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-08 05:56:03,594 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {66730#true} {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,594 INFO L272 TraceCheckUtils]: 119: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66730#true} is VALID [2022-04-08 05:56:03,595 INFO L290 TraceCheckUtils]: 120: Hoare triple {66730#true} ~cond := #in~cond; {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:56:03,595 INFO L290 TraceCheckUtils]: 121: Hoare triple {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:03,595 INFO L290 TraceCheckUtils]: 122: Hoare triple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:03,596 INFO L284 TraceCheckUtils]: 123: Hoare quadruple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:56:03,598 INFO L272 TraceCheckUtils]: 124: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {67116#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:56:03,598 INFO L290 TraceCheckUtils]: 125: Hoare triple {67116#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {67120#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:56:03,598 INFO L290 TraceCheckUtils]: 126: Hoare triple {67120#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {66731#false} is VALID [2022-04-08 05:56:03,598 INFO L290 TraceCheckUtils]: 127: Hoare triple {66731#false} assume !false; {66731#false} is VALID [2022-04-08 05:56:03,599 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 69 proven. 118 refuted. 0 times theorem prover too weak. 336 trivial. 0 not checked. [2022-04-08 05:56:03,599 INFO L328 TraceCheckSpWp]: Computing backward predicates...