/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_valuebound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 05:49:22,447 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 05:49:22,485 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 05:49:22,527 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 05:49:22,527 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 05:49:22,528 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 05:49:22,531 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 05:49:22,533 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 05:49:22,535 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 05:49:22,539 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 05:49:22,539 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 05:49:22,542 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 05:49:22,542 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 05:49:22,544 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 05:49:22,544 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 05:49:22,545 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 05:49:22,545 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 05:49:22,546 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 05:49:22,547 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 05:49:22,548 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 05:49:22,549 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 05:49:22,552 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 05:49:22,553 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 05:49:22,554 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 05:49:22,555 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 05:49:22,565 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 05:49:22,565 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 05:49:22,565 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 05:49:22,566 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 05:49:22,566 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 05:49:22,568 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 05:49:22,568 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 05:49:22,570 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 05:49:22,570 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 05:49:22,571 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 05:49:22,571 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 05:49:22,571 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 05:49:22,572 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 05:49:22,572 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 05:49:22,572 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 05:49:22,573 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 05:49:22,575 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 05:49:22,576 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:49:22,583 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 05:49:22,583 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 05:49:22,584 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 05:49:22,584 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 05:49:22,584 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 05:49:22,585 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 05:49:22,585 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 05:49:22,585 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 05:49:22,585 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 05:49:22,585 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 05:49:22,585 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 05:49:22,585 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 05:49:22,586 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 05:49:22,586 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 05:49:22,586 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 05:49:22,586 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 05:49:22,586 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 05:49:22,586 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 05:49:22,586 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:49:22,586 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 05:49:22,587 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 05:49:22,587 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 05:49:22,587 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 05:49:22,587 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 05:49:22,587 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 05:49:22,587 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:49:22,792 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 05:49:22,811 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 05:49:22,813 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 05:49:22,813 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 05:49:22,814 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 05:49:22,815 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c [2022-04-08 05:49:22,859 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c7494539f/74d0af22158047d9a6a0cddc0626fca7/FLAG45056f38c [2022-04-08 05:49:23,250 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 05:49:23,251 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c [2022-04-08 05:49:23,258 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c7494539f/74d0af22158047d9a6a0cddc0626fca7/FLAG45056f38c [2022-04-08 05:49:23,635 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c7494539f/74d0af22158047d9a6a0cddc0626fca7 [2022-04-08 05:49:23,637 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 05:49:23,638 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 05:49:23,639 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 05:49:23,639 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 05:49:23,641 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 05:49:23,642 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,643 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6dc82b7b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23, skipping insertion in model container [2022-04-08 05:49:23,643 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,648 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 05:49:23,660 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 05:49:23,783 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_valuebound50.c[490,503] [2022-04-08 05:49:23,803 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:49:23,810 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 05:49:23,820 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_valuebound50.c[490,503] [2022-04-08 05:49:23,838 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:49:23,849 INFO L208 MainTranslator]: Completed translation [2022-04-08 05:49:23,849 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23 WrapperNode [2022-04-08 05:49:23,849 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 05:49:23,850 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 05:49:23,850 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 05:49:23,850 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 05:49:23,861 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,861 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,866 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,867 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,872 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,884 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,889 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,891 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 05:49:23,892 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 05:49:23,892 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 05:49:23,892 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 05:49:23,899 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (1/1) ... [2022-04-08 05:49:23,904 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:49:23,914 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:49:23,928 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:49:23,939 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:49:23,963 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 05:49:23,963 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 05:49:23,963 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 05:49:23,963 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 05:49:23,963 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 05:49:23,963 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 05:49:23,963 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 05:49:23,963 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 05:49:23,964 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 05:49:23,965 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 05:49:23,965 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 05:49:24,021 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 05:49:24,023 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 05:49:24,246 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 05:49:24,268 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 05:49:24,268 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 05:49:24,270 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:49:24 BoogieIcfgContainer [2022-04-08 05:49:24,270 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 05:49:24,271 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 05:49:24,271 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 05:49:24,274 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 05:49:24,274 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 05:49:23" (1/3) ... [2022-04-08 05:49:24,274 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@498eb914 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:49:24, skipping insertion in model container [2022-04-08 05:49:24,274 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:49:23" (2/3) ... [2022-04-08 05:49:24,275 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@498eb914 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:49:24, skipping insertion in model container [2022-04-08 05:49:24,275 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:49:24" (3/3) ... [2022-04-08 05:49:24,276 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_valuebound50.c [2022-04-08 05:49:24,280 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 05:49:24,280 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 05:49:24,323 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 05:49:24,328 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:49:24,328 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 05:49:24,345 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 05:49:24,351 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 05:49:24,352 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:49:24,352 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 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:49:24,353 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:49:24,356 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:49:24,357 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 1 times [2022-04-08 05:49:24,365 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:24,366 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [382250582] [2022-04-08 05:49:24,380 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:49:24,380 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 2 times [2022-04-08 05:49:24,384 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:49:24,384 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1339493390] [2022-04-08 05:49:24,384 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:49:24,385 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:49:24,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,557 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 05:49:24,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,590 INFO L290 TraceCheckUtils]: 0: Hoare triple {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-08 05:49:24,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 05:49:24,591 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-08 05:49:24,591 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 05:49:24,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,622 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,623 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,623 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,623 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-08 05:49:24,623 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 05:49:24,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,636 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,636 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,637 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,637 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-08 05:49:24,637 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 05:49:24,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,643 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,644 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,644 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,644 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-08 05:49:24,644 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-08 05:49:24,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,650 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-08 05:49:24,652 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-08 05:49:24,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,658 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,659 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-08 05:49:24,659 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-08 05:49:24,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:24,668 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,669 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,669 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-08 05:49:24,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 05:49:24,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-08 05:49:24,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 05:49:24,671 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-08 05:49:24,671 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-08 05:49:24,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#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; {43#true} is VALID [2022-04-08 05:49:24,671 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-08 05:49:24,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,673 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-08 05:49:24,674 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-08 05:49:24,674 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-08 05:49:24,674 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,675 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,675 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,676 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-08 05:49:24,676 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-08 05:49:24,676 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,677 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,677 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,677 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-08 05:49:24,678 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-08 05:49:24,678 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,682 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,682 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,682 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-08 05:49:24,682 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#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; {44#false} is VALID [2022-04-08 05:49:24,683 INFO L272 TraceCheckUtils]: 28: Hoare triple {44#false} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-08 05:49:24,683 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,683 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,684 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,684 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-08 05:49:24,684 INFO L272 TraceCheckUtils]: 33: Hoare triple {44#false} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-08 05:49:24,684 INFO L290 TraceCheckUtils]: 34: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:49:24,685 INFO L290 TraceCheckUtils]: 35: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:49:24,685 INFO L290 TraceCheckUtils]: 36: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:49:24,685 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-08 05:49:24,686 INFO L290 TraceCheckUtils]: 38: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-08 05:49:24,686 INFO L272 TraceCheckUtils]: 39: Hoare triple {44#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {44#false} is VALID [2022-04-08 05:49:24,686 INFO L290 TraceCheckUtils]: 40: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-08 05:49:24,686 INFO L290 TraceCheckUtils]: 41: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-08 05:49:24,686 INFO L290 TraceCheckUtils]: 42: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-08 05:49:24,687 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 05:49:24,687 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:49:24,688 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1339493390] [2022-04-08 05:49:24,688 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1339493390] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:24,688 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:24,689 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:49:24,691 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:49:24,691 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [382250582] [2022-04-08 05:49:24,691 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [382250582] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:24,691 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:24,692 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:49:24,692 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [537090715] [2022-04-08 05:49:24,692 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:49:24,697 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-08 05:49:24,698 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:49:24,701 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:24,742 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:49:24,742 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 05:49:24,742 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:24,769 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 05:49:24,770 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 05:49:24,774 INFO L87 Difference]: Start difference. First operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:25,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:25,028 INFO L93 Difference]: Finished difference Result 73 states and 118 transitions. [2022-04-08 05:49:25,028 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 05:49:25,029 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-08 05:49:25,029 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:49:25,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:25,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-08 05:49:25,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:25,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-08 05:49:25,057 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 118 transitions. [2022-04-08 05:49:25,196 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:25,204 INFO L225 Difference]: With dead ends: 73 [2022-04-08 05:49:25,205 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 05:49:25,207 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 21 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:49:25,210 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:49:25,211 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 42 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:49:25,223 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 05:49:25,241 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-08 05:49:25,241 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:49:25,242 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:25,244 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:25,245 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:25,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:25,253 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-08 05:49:25,253 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 05:49:25,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:25,254 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:25,255 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-08 05:49:25,255 INFO L87 Difference]: Start difference. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-08 05:49:25,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:25,265 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-08 05:49:25,265 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 05:49:25,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:25,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:25,266 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:49:25,266 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:49:25,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:25,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 46 transitions. [2022-04-08 05:49:25,270 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 46 transitions. Word has length 43 [2022-04-08 05:49:25,270 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:49:25,271 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 46 transitions. [2022-04-08 05:49:25,271 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:25,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 46 transitions. [2022-04-08 05:49:25,325 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:49:25,326 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 05:49:25,328 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-08 05:49:25,328 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:49:25,328 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 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:49:25,329 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 05:49:25,329 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:49:25,329 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:49:25,330 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 1 times [2022-04-08 05:49:25,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:25,330 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [602658198] [2022-04-08 05:49:25,331 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:49:25,331 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 2 times [2022-04-08 05:49:25,331 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:49:25,331 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1425800134] [2022-04-08 05:49:25,331 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:49:25,332 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:49:25,353 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:49:25,354 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [111376715] [2022-04-08 05:49:25,354 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:49:25,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:49:25,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:49:25,356 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:49:25,389 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:49:25,417 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:49:25,417 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:49:25,428 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 05:49:25,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:25,448 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:49:25,704 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-08 05:49:25,705 INFO L290 TraceCheckUtils]: 1: Hoare triple {361#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); {361#true} is VALID [2022-04-08 05:49:25,705 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,705 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-08 05:49:25,705 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-08 05:49:25,705 INFO L290 TraceCheckUtils]: 5: Hoare triple {361#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; {361#true} is VALID [2022-04-08 05:49:25,705 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,706 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,706 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,706 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,706 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-08 05:49:25,706 INFO L290 TraceCheckUtils]: 11: Hoare triple {361#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {361#true} is VALID [2022-04-08 05:49:25,707 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,707 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,707 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,707 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,707 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-08 05:49:25,708 INFO L272 TraceCheckUtils]: 17: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,708 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,708 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,708 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,708 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-08 05:49:25,708 INFO L272 TraceCheckUtils]: 22: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,709 INFO L290 TraceCheckUtils]: 23: Hoare triple {361#true} ~cond := #in~cond; {435#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:49:25,709 INFO L290 TraceCheckUtils]: 24: Hoare triple {435#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:49:25,710 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:49:25,711 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {439#(not (= |assume_abort_if_not_#in~cond| 0))} {361#true} #85#return; {446#(<= 1 main_~y~0)} is VALID [2022-04-08 05:49:25,712 INFO L290 TraceCheckUtils]: 27: Hoare triple {446#(<= 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; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,712 INFO L272 TraceCheckUtils]: 28: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,712 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,712 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,712 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,713 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #87#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,713 INFO L272 TraceCheckUtils]: 33: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,713 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,714 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,714 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,714 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #89#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,715 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,715 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-08 05:49:25,716 INFO L272 TraceCheckUtils]: 40: Hoare triple {362#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {362#false} is VALID [2022-04-08 05:49:25,716 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-08 05:49:25,716 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-08 05:49:25,716 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-08 05:49:25,717 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-08 05:49:25,717 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:49:25,976 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-08 05:49:25,976 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-08 05:49:25,976 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-08 05:49:25,976 INFO L272 TraceCheckUtils]: 40: Hoare triple {362#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {362#false} is VALID [2022-04-08 05:49:25,977 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-08 05:49:25,977 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,978 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #89#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,978 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,978 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,979 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,979 INFO L272 TraceCheckUtils]: 33: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,979 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #87#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,980 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,980 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,980 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,980 INFO L272 TraceCheckUtils]: 28: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,981 INFO L290 TraceCheckUtils]: 27: Hoare triple {446#(<= 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; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 05:49:25,981 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {439#(not (= |assume_abort_if_not_#in~cond| 0))} {361#true} #85#return; {446#(<= 1 main_~y~0)} is VALID [2022-04-08 05:49:25,982 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:49:25,982 INFO L290 TraceCheckUtils]: 24: Hoare triple {559#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:49:25,983 INFO L290 TraceCheckUtils]: 23: Hoare triple {361#true} ~cond := #in~cond; {559#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 05:49:25,983 INFO L272 TraceCheckUtils]: 22: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,983 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-08 05:49:25,983 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,983 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,983 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,984 INFO L272 TraceCheckUtils]: 17: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,984 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-08 05:49:25,984 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,984 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,984 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,984 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,984 INFO L290 TraceCheckUtils]: 11: Hoare triple {361#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {361#true} is VALID [2022-04-08 05:49:25,984 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-08 05:49:25,985 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 05:49:25,985 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 05:49:25,985 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-08 05:49:25,985 INFO L290 TraceCheckUtils]: 5: Hoare triple {361#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; {361#true} is VALID [2022-04-08 05:49:25,985 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-08 05:49:25,985 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-08 05:49:25,986 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 05:49:25,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {361#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); {361#true} is VALID [2022-04-08 05:49:25,986 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-08 05:49:25,986 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-08 05:49:25,986 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:49:25,986 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1425800134] [2022-04-08 05:49:25,987 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:49:25,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [111376715] [2022-04-08 05:49:25,987 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [111376715] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:49:25,987 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:49:25,987 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-08 05:49:25,988 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:49:25,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [602658198] [2022-04-08 05:49:25,988 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [602658198] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:25,988 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:25,989 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:49:25,989 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1985825640] [2022-04-08 05:49:25,989 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:49:25,990 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, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-08 05:49:25,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:49:25,990 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, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:26,015 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:49:26,016 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:49:26,016 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:26,016 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:49:26,016 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-08 05:49:26,017 INFO L87 Difference]: Start difference. First operand 35 states and 46 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, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:26,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:26,346 INFO L93 Difference]: Finished difference Result 52 states and 69 transitions. [2022-04-08 05:49:26,346 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:49:26,346 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, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-08 05:49:26,346 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:49:26,347 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, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:26,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 05:49:26,350 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, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:26,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 05:49:26,352 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-08 05:49:26,414 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:49:26,416 INFO L225 Difference]: With dead ends: 52 [2022-04-08 05:49:26,416 INFO L226 Difference]: Without dead ends: 44 [2022-04-08 05:49:26,416 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 81 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:49:26,417 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 19 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:49:26,418 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 128 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:49:26,419 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-08 05:49:26,439 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-08 05:49:26,440 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:49:26,440 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:26,440 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:26,441 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:26,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:26,444 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-08 05:49:26,444 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-08 05:49:26,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:26,445 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:26,445 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-08 05:49:26,446 INFO L87 Difference]: Start difference. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-08 05:49:26,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:26,449 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-08 05:49:26,449 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-08 05:49:26,449 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:26,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:26,450 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:49:26,450 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:49:26,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 05:49:26,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-08 05:49:26,453 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 44 [2022-04-08 05:49:26,453 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:49:26,453 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-08 05:49:26,453 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, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:49:26,453 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 48 transitions. [2022-04-08 05:49:26,504 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:49:26,504 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-08 05:49:26,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-08 05:49:26,505 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:49:26,506 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 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:49:26,534 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:49:26,719 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:49:26,719 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:49:26,720 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:49:26,720 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 1 times [2022-04-08 05:49:26,720 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:26,720 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1895213945] [2022-04-08 05:49:26,720 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:49:26,721 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 2 times [2022-04-08 05:49:26,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:49:26,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [191184121] [2022-04-08 05:49:26,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:49:26,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:49:26,744 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:49:26,744 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [540070824] [2022-04-08 05:49:26,744 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:49:26,744 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:49:26,745 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:49:26,746 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:49:26,759 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:49:26,790 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 05:49:26,790 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:49:26,791 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 05:49:26,801 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:26,802 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:49:26,947 INFO L272 TraceCheckUtils]: 0: Hoare triple {901#true} call ULTIMATE.init(); {901#true} is VALID [2022-04-08 05:49:26,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {901#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); {901#true} is VALID [2022-04-08 05:49:26,948 INFO L290 TraceCheckUtils]: 2: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 05:49:26,948 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {901#true} {901#true} #103#return; {901#true} is VALID [2022-04-08 05:49:26,948 INFO L272 TraceCheckUtils]: 4: Hoare triple {901#true} call #t~ret6 := main(); {901#true} is VALID [2022-04-08 05:49:26,948 INFO L290 TraceCheckUtils]: 5: Hoare triple {901#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; {901#true} is VALID [2022-04-08 05:49:26,949 INFO L272 TraceCheckUtils]: 6: Hoare triple {901#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {901#true} is VALID [2022-04-08 05:49:26,949 INFO L290 TraceCheckUtils]: 7: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 05:49:26,949 INFO L290 TraceCheckUtils]: 8: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 05:49:26,949 INFO L290 TraceCheckUtils]: 9: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 05:49:26,949 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {901#true} {901#true} #79#return; {901#true} is VALID [2022-04-08 05:49:26,949 INFO L290 TraceCheckUtils]: 11: Hoare triple {901#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {901#true} is VALID [2022-04-08 05:49:26,950 INFO L272 TraceCheckUtils]: 12: Hoare triple {901#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {901#true} is VALID [2022-04-08 05:49:26,950 INFO L290 TraceCheckUtils]: 13: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 05:49:26,950 INFO L290 TraceCheckUtils]: 14: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 05:49:26,950 INFO L290 TraceCheckUtils]: 15: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 05:49:26,950 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {901#true} {901#true} #81#return; {901#true} is VALID [2022-04-08 05:49:26,950 INFO L272 TraceCheckUtils]: 17: Hoare triple {901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {901#true} is VALID [2022-04-08 05:49:26,951 INFO L290 TraceCheckUtils]: 18: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 05:49:26,951 INFO L290 TraceCheckUtils]: 19: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 05:49:26,951 INFO L290 TraceCheckUtils]: 20: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 05:49:26,951 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {901#true} {901#true} #83#return; {901#true} is VALID [2022-04-08 05:49:26,951 INFO L272 TraceCheckUtils]: 22: Hoare triple {901#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {901#true} is VALID [2022-04-08 05:49:26,952 INFO L290 TraceCheckUtils]: 23: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 05:49:26,952 INFO L290 TraceCheckUtils]: 24: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 05:49:26,952 INFO L290 TraceCheckUtils]: 25: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 05:49:26,952 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {901#true} {901#true} #85#return; {901#true} is VALID [2022-04-08 05:49:26,952 INFO L290 TraceCheckUtils]: 27: Hoare triple {901#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; {901#true} is VALID [2022-04-08 05:49:26,952 INFO L272 TraceCheckUtils]: 28: Hoare triple {901#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {901#true} is VALID [2022-04-08 05:49:26,953 INFO L290 TraceCheckUtils]: 29: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 05:49:26,953 INFO L290 TraceCheckUtils]: 30: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 05:49:26,953 INFO L290 TraceCheckUtils]: 31: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 05:49:26,953 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {901#true} {901#true} #87#return; {901#true} is VALID [2022-04-08 05:49:26,953 INFO L272 TraceCheckUtils]: 33: Hoare triple {901#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {901#true} is VALID [2022-04-08 05:49:26,953 INFO L290 TraceCheckUtils]: 34: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 05:49:26,954 INFO L290 TraceCheckUtils]: 35: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 05:49:26,954 INFO L290 TraceCheckUtils]: 36: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 05:49:26,954 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {901#true} {901#true} #89#return; {901#true} is VALID [2022-04-08 05:49:26,954 INFO L290 TraceCheckUtils]: 38: Hoare triple {901#true} assume !false; {901#true} is VALID [2022-04-08 05:49:26,955 INFO L290 TraceCheckUtils]: 39: Hoare triple {901#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-08 05:49:26,955 INFO L290 TraceCheckUtils]: 40: Hoare triple {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} assume !false; {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-08 05:49:26,956 INFO L272 TraceCheckUtils]: 41: Hoare triple {1023#(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)); {1030#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:49:26,956 INFO L290 TraceCheckUtils]: 42: Hoare triple {1030#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1034#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:26,957 INFO L290 TraceCheckUtils]: 43: Hoare triple {1034#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {902#false} is VALID [2022-04-08 05:49:26,957 INFO L290 TraceCheckUtils]: 44: Hoare triple {902#false} assume !false; {902#false} is VALID [2022-04-08 05:49:26,957 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 05:49:26,957 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:49:26,958 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:49:26,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [191184121] [2022-04-08 05:49:26,958 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:49:26,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [540070824] [2022-04-08 05:49:26,958 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [540070824] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:26,958 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:26,958 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:49:26,959 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:49:26,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1895213945] [2022-04-08 05:49:26,959 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1895213945] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:26,959 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:26,959 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:49:26,959 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1465727523] [2022-04-08 05:49:26,960 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:49:26,960 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-08 05:49:26,960 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:49:26,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 05:49:26,982 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:49:26,982 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:49:26,982 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:26,983 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:49:26,983 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:49:26,984 INFO L87 Difference]: Start difference. First operand 37 states and 48 transitions. Second operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 05:49:27,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:27,229 INFO L93 Difference]: Finished difference Result 50 states and 65 transitions. [2022-04-08 05:49:27,229 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:49:27,229 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-08 05:49:27,230 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:49:27,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 05:49:27,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-08 05:49:27,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 05:49:27,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-08 05:49:27,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-08 05:49:27,294 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:27,296 INFO L225 Difference]: With dead ends: 50 [2022-04-08 05:49:27,296 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 05:49:27,296 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 41 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:49:27,297 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 6 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 154 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:49:27,298 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 154 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:49:27,298 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 05:49:27,323 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 43. [2022-04-08 05:49:27,323 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:49:27,324 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:49:27,324 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:49:27,325 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:49:27,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:27,327 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-08 05:49:27,328 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-08 05:49:27,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:27,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:27,329 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 48 states. [2022-04-08 05:49:27,329 INFO L87 Difference]: Start difference. First operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 48 states. [2022-04-08 05:49:27,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:27,332 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-08 05:49:27,332 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-08 05:49:27,332 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:27,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:27,333 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:49:27,333 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:49:27,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:49:27,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 54 transitions. [2022-04-08 05:49:27,335 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 54 transitions. Word has length 45 [2022-04-08 05:49:27,335 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:49:27,336 INFO L478 AbstractCegarLoop]: Abstraction has 43 states and 54 transitions. [2022-04-08 05:49:27,336 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 05:49:27,336 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 43 states and 54 transitions. [2022-04-08 05:49:27,391 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:49:27,391 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 05:49:27,392 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-08 05:49:27,392 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:49:27,392 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 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:49:27,408 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:49:27,595 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:49:27,596 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:49:27,596 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:49:27,596 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 1 times [2022-04-08 05:49:27,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:27,596 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1850944468] [2022-04-08 05:49:27,596 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:49:27,596 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 2 times [2022-04-08 05:49:27,597 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:49:27,597 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [749293959] [2022-04-08 05:49:27,597 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:49:27,597 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:49:27,624 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:49:27,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [708464028] [2022-04-08 05:49:27,624 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:49:27,624 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:49:27,624 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:49:27,625 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:49:27,633 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:49:27,678 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:49:27,678 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:49:27,679 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:49:27,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:27,699 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:49:27,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {1324#true} call ULTIMATE.init(); {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {1324#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); {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1324#true} {1324#true} #103#return; {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {1324#true} call #t~ret6 := main(); {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {1324#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; {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L272 TraceCheckUtils]: 6: Hoare triple {1324#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L290 TraceCheckUtils]: 7: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 05:49:27,907 INFO L290 TraceCheckUtils]: 8: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 9: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1324#true} {1324#true} #79#return; {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 11: Hoare triple {1324#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L272 TraceCheckUtils]: 12: Hoare triple {1324#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 13: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 14: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 15: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1324#true} {1324#true} #81#return; {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L272 TraceCheckUtils]: 17: Hoare triple {1324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 18: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 19: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 05:49:27,908 INFO L290 TraceCheckUtils]: 20: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,909 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1324#true} {1324#true} #83#return; {1324#true} is VALID [2022-04-08 05:49:27,909 INFO L272 TraceCheckUtils]: 22: Hoare triple {1324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1324#true} is VALID [2022-04-08 05:49:27,909 INFO L290 TraceCheckUtils]: 23: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 05:49:27,909 INFO L290 TraceCheckUtils]: 24: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 05:49:27,909 INFO L290 TraceCheckUtils]: 25: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,909 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1324#true} {1324#true} #85#return; {1324#true} is VALID [2022-04-08 05:49:27,911 INFO L290 TraceCheckUtils]: 27: Hoare triple {1324#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; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:49:27,911 INFO L272 TraceCheckUtils]: 28: Hoare triple {1410#(and (= main_~r~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)); {1324#true} is VALID [2022-04-08 05:49:27,911 INFO L290 TraceCheckUtils]: 29: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 05:49:27,911 INFO L290 TraceCheckUtils]: 30: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 05:49:27,912 INFO L290 TraceCheckUtils]: 31: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,915 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1324#true} {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:49:27,916 INFO L272 TraceCheckUtils]: 33: Hoare triple {1410#(and (= main_~r~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)); {1324#true} is VALID [2022-04-08 05:49:27,916 INFO L290 TraceCheckUtils]: 34: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 05:49:27,916 INFO L290 TraceCheckUtils]: 35: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 05:49:27,916 INFO L290 TraceCheckUtils]: 36: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,919 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1324#true} {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:49:27,920 INFO L290 TraceCheckUtils]: 38: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:49:27,921 INFO L290 TraceCheckUtils]: 39: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:49:27,921 INFO L290 TraceCheckUtils]: 40: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:49:27,922 INFO L272 TraceCheckUtils]: 41: Hoare triple {1410#(and (= main_~r~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)); {1324#true} is VALID [2022-04-08 05:49:27,922 INFO L290 TraceCheckUtils]: 42: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 05:49:27,922 INFO L290 TraceCheckUtils]: 43: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 05:49:27,922 INFO L290 TraceCheckUtils]: 44: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 05:49:27,923 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1324#true} {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:49:27,924 INFO L272 TraceCheckUtils]: 46: Hoare triple {1410#(and (= main_~r~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)); {1468#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:49:27,925 INFO L290 TraceCheckUtils]: 47: Hoare triple {1468#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1472#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:27,927 INFO L290 TraceCheckUtils]: 48: Hoare triple {1472#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1325#false} is VALID [2022-04-08 05:49:27,927 INFO L290 TraceCheckUtils]: 49: Hoare triple {1325#false} assume !false; {1325#false} is VALID [2022-04-08 05:49:27,927 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 05:49:27,927 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:49:27,928 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:49:27,928 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [749293959] [2022-04-08 05:49:27,928 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:49:27,928 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [708464028] [2022-04-08 05:49:27,928 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [708464028] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:27,928 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:27,928 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:49:27,928 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:49:27,929 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1850944468] [2022-04-08 05:49:27,929 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1850944468] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:27,929 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:27,929 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:49:27,929 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1120104048] [2022-04-08 05:49:27,929 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:49:27,929 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 50 [2022-04-08 05:49:27,930 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:49:27,930 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:49:27,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:27,965 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:49:27,965 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:27,965 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:49:27,965 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:49:27,966 INFO L87 Difference]: Start difference. First operand 43 states and 54 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:49:28,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:28,208 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-08 05:49:28,208 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:49:28,208 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 50 [2022-04-08 05:49:28,208 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:49:28,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:49:28,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:49:28,210 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:49:28,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:49:28,212 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 05:49:28,268 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:28,270 INFO L225 Difference]: With dead ends: 58 [2022-04-08 05:49:28,270 INFO L226 Difference]: Without dead ends: 56 [2022-04-08 05:49:28,270 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 46 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:49:28,271 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 7 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 161 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:49:28,271 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 161 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:49:28,272 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-08 05:49:28,313 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 55. [2022-04-08 05:49:28,313 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:49:28,314 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:28,314 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:28,314 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:28,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:28,317 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-08 05:49:28,317 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-08 05:49:28,318 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:28,318 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:28,318 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 56 states. [2022-04-08 05:49:28,318 INFO L87 Difference]: Start difference. First operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 56 states. [2022-04-08 05:49:28,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:28,321 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-08 05:49:28,321 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-08 05:49:28,322 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:28,322 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:28,322 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:49:28,322 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:49:28,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:28,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 71 transitions. [2022-04-08 05:49:28,325 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 71 transitions. Word has length 50 [2022-04-08 05:49:28,325 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:49:28,325 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 71 transitions. [2022-04-08 05:49:28,325 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:49:28,325 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 71 transitions. [2022-04-08 05:49:28,416 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:49:28,416 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 71 transitions. [2022-04-08 05:49:28,416 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 05:49:28,417 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:49:28,417 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 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, 1, 1, 1] [2022-04-08 05:49:28,435 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-08 05:49:28,627 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:49:28,627 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:49:28,628 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:49:28,628 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 1 times [2022-04-08 05:49:28,628 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:28,628 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1106362991] [2022-04-08 05:49:28,628 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:49:28,629 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 2 times [2022-04-08 05:49:28,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:49:28,629 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [799775637] [2022-04-08 05:49:28,629 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:49:28,629 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:49:28,652 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:49:28,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1930607113] [2022-04-08 05:49:28,653 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:49:28,653 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:49:28,653 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:49:28,654 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:49:28,661 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:49:28,708 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:49:28,708 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:49:28,709 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:49:28,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:28,728 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:49:28,971 INFO L272 TraceCheckUtils]: 0: Hoare triple {1818#true} call ULTIMATE.init(); {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L290 TraceCheckUtils]: 1: Hoare triple {1818#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); {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L290 TraceCheckUtils]: 2: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1818#true} {1818#true} #103#return; {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L272 TraceCheckUtils]: 4: Hoare triple {1818#true} call #t~ret6 := main(); {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L290 TraceCheckUtils]: 5: Hoare triple {1818#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; {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L272 TraceCheckUtils]: 6: Hoare triple {1818#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L290 TraceCheckUtils]: 7: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L290 TraceCheckUtils]: 8: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,972 INFO L290 TraceCheckUtils]: 9: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1818#true} {1818#true} #79#return; {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L290 TraceCheckUtils]: 11: Hoare triple {1818#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L272 TraceCheckUtils]: 12: Hoare triple {1818#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L290 TraceCheckUtils]: 13: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L290 TraceCheckUtils]: 14: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L290 TraceCheckUtils]: 15: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1818#true} {1818#true} #81#return; {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L272 TraceCheckUtils]: 17: Hoare triple {1818#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L290 TraceCheckUtils]: 18: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,973 INFO L290 TraceCheckUtils]: 19: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,974 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1818#true} {1818#true} #83#return; {1818#true} is VALID [2022-04-08 05:49:28,974 INFO L272 TraceCheckUtils]: 22: Hoare triple {1818#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1818#true} is VALID [2022-04-08 05:49:28,974 INFO L290 TraceCheckUtils]: 23: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,974 INFO L290 TraceCheckUtils]: 24: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,974 INFO L290 TraceCheckUtils]: 25: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,974 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1818#true} {1818#true} #85#return; {1818#true} is VALID [2022-04-08 05:49:28,975 INFO L290 TraceCheckUtils]: 27: Hoare triple {1818#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; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,975 INFO L272 TraceCheckUtils]: 28: Hoare triple {1904#(and (= 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)); {1818#true} is VALID [2022-04-08 05:49:28,975 INFO L290 TraceCheckUtils]: 29: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,975 INFO L290 TraceCheckUtils]: 30: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,975 INFO L290 TraceCheckUtils]: 31: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,976 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,976 INFO L272 TraceCheckUtils]: 33: Hoare triple {1904#(and (= 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)); {1818#true} is VALID [2022-04-08 05:49:28,976 INFO L290 TraceCheckUtils]: 34: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,976 INFO L290 TraceCheckUtils]: 35: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,976 INFO L290 TraceCheckUtils]: 36: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,977 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,977 INFO L290 TraceCheckUtils]: 38: Hoare triple {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,978 INFO L290 TraceCheckUtils]: 39: Hoare triple {1904#(and (= 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; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,978 INFO L290 TraceCheckUtils]: 40: Hoare triple {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,978 INFO L272 TraceCheckUtils]: 41: Hoare triple {1904#(and (= 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)); {1818#true} is VALID [2022-04-08 05:49:28,978 INFO L290 TraceCheckUtils]: 42: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,979 INFO L290 TraceCheckUtils]: 43: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,979 INFO L290 TraceCheckUtils]: 44: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,979 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #91#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,979 INFO L272 TraceCheckUtils]: 46: Hoare triple {1904#(and (= 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)); {1818#true} is VALID [2022-04-08 05:49:28,980 INFO L290 TraceCheckUtils]: 47: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 05:49:28,980 INFO L290 TraceCheckUtils]: 48: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 05:49:28,980 INFO L290 TraceCheckUtils]: 49: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 05:49:28,980 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #93#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 05:49:28,981 INFO L272 TraceCheckUtils]: 51: Hoare triple {1904#(and (= 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)); {1977#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:49:28,982 INFO L290 TraceCheckUtils]: 52: Hoare triple {1977#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1981#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:28,982 INFO L290 TraceCheckUtils]: 53: Hoare triple {1981#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1819#false} is VALID [2022-04-08 05:49:28,982 INFO L290 TraceCheckUtils]: 54: Hoare triple {1819#false} assume !false; {1819#false} is VALID [2022-04-08 05:49:28,983 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 05:49:28,983 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:49:28,983 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:49:28,983 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [799775637] [2022-04-08 05:49:28,983 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:49:28,983 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1930607113] [2022-04-08 05:49:28,983 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1930607113] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:28,983 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:28,983 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:49:28,984 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:49:28,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1106362991] [2022-04-08 05:49:28,984 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1106362991] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:49:28,984 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:49:28,984 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:49:28,984 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1552324073] [2022-04-08 05:49:28,984 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:49:28,985 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 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 55 [2022-04-08 05:49:28,985 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:49:28,985 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 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:49:29,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:29,014 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:49:29,014 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:29,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:49:29,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:49:29,015 INFO L87 Difference]: Start difference. First operand 55 states and 71 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 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:49:29,237 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:29,238 INFO L93 Difference]: Finished difference Result 62 states and 77 transitions. [2022-04-08 05:49:29,238 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:49:29,238 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 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 55 [2022-04-08 05:49:29,238 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:49:29,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 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:49:29,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:49:29,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 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:49:29,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:49:29,241 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 05:49:29,295 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:49:29,297 INFO L225 Difference]: With dead ends: 62 [2022-04-08 05:49:29,297 INFO L226 Difference]: Without dead ends: 60 [2022-04-08 05:49:29,297 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 51 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:49:29,298 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 7 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:49:29,298 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 151 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:49:29,299 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-08 05:49:29,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-08 05:49:29,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:49:29,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:29,341 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:29,342 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:29,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:29,344 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-08 05:49:29,344 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-08 05:49:29,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:29,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:29,345 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 60 states. [2022-04-08 05:49:29,345 INFO L87 Difference]: Start difference. First operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 60 states. [2022-04-08 05:49:29,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:49:29,347 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-08 05:49:29,348 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-08 05:49:29,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:49:29,348 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:49:29,348 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:49:29,348 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:49:29,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:49:29,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 74 transitions. [2022-04-08 05:49:29,351 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 74 transitions. Word has length 55 [2022-04-08 05:49:29,351 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:49:29,351 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 74 transitions. [2022-04-08 05:49:29,351 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 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:49:29,351 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 74 transitions. [2022-04-08 05:49:29,438 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:49:29,439 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 74 transitions. [2022-04-08 05:49:29,439 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-08 05:49:29,439 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:49:29,439 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 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, 1, 1, 1] [2022-04-08 05:49:29,458 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:49:29,651 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:49:29,651 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:49:29,652 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:49:29,652 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 1 times [2022-04-08 05:49:29,652 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:49:29,652 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [222440056] [2022-04-08 05:49:29,652 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:49:29,653 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 2 times [2022-04-08 05:49:29,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:49:29,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1681704130] [2022-04-08 05:49:29,653 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:49:29,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:49:29,669 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:49:29,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1898127444] [2022-04-08 05:49:29,669 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:49:29,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:49:29,670 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:49:29,670 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:49:29,678 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:49:29,728 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:49:29,728 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:49:29,730 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 05:49:29,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:49:29,746 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:49:30,084 INFO L272 TraceCheckUtils]: 0: Hoare triple {2351#true} call ULTIMATE.init(); {2351#true} is VALID [2022-04-08 05:49:30,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {2351#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); {2351#true} is VALID [2022-04-08 05:49:30,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,092 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2351#true} {2351#true} #103#return; {2351#true} is VALID [2022-04-08 05:49:30,092 INFO L272 TraceCheckUtils]: 4: Hoare triple {2351#true} call #t~ret6 := main(); {2351#true} is VALID [2022-04-08 05:49:30,092 INFO L290 TraceCheckUtils]: 5: Hoare triple {2351#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; {2351#true} is VALID [2022-04-08 05:49:30,092 INFO L272 TraceCheckUtils]: 6: Hoare triple {2351#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L290 TraceCheckUtils]: 7: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L290 TraceCheckUtils]: 8: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L290 TraceCheckUtils]: 9: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2351#true} {2351#true} #79#return; {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L290 TraceCheckUtils]: 11: Hoare triple {2351#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L272 TraceCheckUtils]: 12: Hoare triple {2351#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L290 TraceCheckUtils]: 13: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L290 TraceCheckUtils]: 14: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L290 TraceCheckUtils]: 15: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,093 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2351#true} {2351#true} #81#return; {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L272 TraceCheckUtils]: 17: Hoare triple {2351#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L290 TraceCheckUtils]: 18: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L290 TraceCheckUtils]: 19: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L290 TraceCheckUtils]: 20: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2351#true} {2351#true} #83#return; {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L272 TraceCheckUtils]: 22: Hoare triple {2351#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L290 TraceCheckUtils]: 23: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L290 TraceCheckUtils]: 24: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 05:49:30,094 INFO L290 TraceCheckUtils]: 25: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,095 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2351#true} {2351#true} #85#return; {2351#true} is VALID [2022-04-08 05:49:30,099 INFO L290 TraceCheckUtils]: 27: Hoare triple {2351#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; {2437#(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:49:30,099 INFO L272 TraceCheckUtils]: 28: Hoare triple {2437#(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)); {2351#true} is VALID [2022-04-08 05:49:30,099 INFO L290 TraceCheckUtils]: 29: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 05:49:30,099 INFO L290 TraceCheckUtils]: 30: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 05:49:30,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,100 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2351#true} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #87#return; {2437#(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:49:30,100 INFO L272 TraceCheckUtils]: 33: Hoare triple {2437#(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)); {2351#true} is VALID [2022-04-08 05:49:30,100 INFO L290 TraceCheckUtils]: 34: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 05:49:30,100 INFO L290 TraceCheckUtils]: 35: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 05:49:30,100 INFO L290 TraceCheckUtils]: 36: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,101 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2351#true} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #89#return; {2437#(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:49:30,101 INFO L290 TraceCheckUtils]: 38: Hoare triple {2437#(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 !false; {2437#(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:49:30,102 INFO L290 TraceCheckUtils]: 39: Hoare triple {2437#(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; {2437#(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:49:30,102 INFO L290 TraceCheckUtils]: 40: Hoare triple {2437#(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 !false; {2437#(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:49:30,103 INFO L272 TraceCheckUtils]: 41: Hoare triple {2437#(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)); {2351#true} is VALID [2022-04-08 05:49:30,103 INFO L290 TraceCheckUtils]: 42: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 05:49:30,103 INFO L290 TraceCheckUtils]: 43: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 05:49:30,103 INFO L290 TraceCheckUtils]: 44: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 05:49:30,104 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2351#true} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #91#return; {2437#(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:49:30,104 INFO L272 TraceCheckUtils]: 46: Hoare triple {2437#(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)); {2351#true} is VALID [2022-04-08 05:49:30,104 INFO L290 TraceCheckUtils]: 47: Hoare triple {2351#true} ~cond := #in~cond; {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:30,105 INFO L290 TraceCheckUtils]: 48: Hoare triple {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:49:30,105 INFO L290 TraceCheckUtils]: 49: Hoare triple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:49:30,106 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #93#return; {2437#(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:49:30,106 INFO L272 TraceCheckUtils]: 51: Hoare triple {2437#(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)); {2351#true} is VALID [2022-04-08 05:49:30,106 INFO L290 TraceCheckUtils]: 52: Hoare triple {2351#true} ~cond := #in~cond; {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:30,107 INFO L290 TraceCheckUtils]: 53: Hoare triple {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:49:30,107 INFO L290 TraceCheckUtils]: 54: Hoare triple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:49:30,108 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #95#return; {2437#(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:49:30,109 INFO L272 TraceCheckUtils]: 56: Hoare triple {2437#(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)); {2527#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:49:30,109 INFO L290 TraceCheckUtils]: 57: Hoare triple {2527#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2531#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:49:30,110 INFO L290 TraceCheckUtils]: 58: Hoare triple {2531#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2352#false} is VALID [2022-04-08 05:49:30,110 INFO L290 TraceCheckUtils]: 59: Hoare triple {2352#false} assume !false; {2352#false} is VALID [2022-04-08 05:49:30,110 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-08 05:49:30,110 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:50:05,133 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:50:05,134 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1681704130] [2022-04-08 05:50:05,134 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:50:05,134 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1898127444] [2022-04-08 05:50:05,134 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1898127444] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:50:05,134 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:50:05,134 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-08 05:50:05,134 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:50:05,134 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [222440056] [2022-04-08 05:50:05,134 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [222440056] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:50:05,135 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:50:05,135 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:50:05,135 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [445404573] [2022-04-08 05:50:05,135 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:50:05,135 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 60 [2022-04-08 05:50:05,136 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:50:05,136 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 05:50:05,191 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:50:05,191 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:50:05,191 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:05,191 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:50:05,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:50:05,192 INFO L87 Difference]: Start difference. First operand 59 states and 74 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 05:50:05,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:05,690 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-04-08 05:50:05,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 05:50:05,690 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 60 [2022-04-08 05:50:05,690 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:50:05,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 05:50:05,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-08 05:50:05,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 05:50:05,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-08 05:50:05,693 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-08 05:50:05,766 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:05,767 INFO L225 Difference]: With dead ends: 66 [2022-04-08 05:50:05,768 INFO L226 Difference]: Without dead ends: 64 [2022-04-08 05:50:05,768 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 56 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:50:05,769 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 11 mSDsluCounter, 128 mSDsCounter, 0 mSdLazyCounter, 128 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 130 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 128 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:50:05,769 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 164 Invalid, 130 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 128 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 05:50:05,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2022-04-08 05:50:05,831 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 63. [2022-04-08 05:50:05,831 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:50:05,831 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:50:05,832 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:50:05,832 INFO L87 Difference]: Start difference. First operand 64 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:50:05,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:05,839 INFO L93 Difference]: Finished difference Result 64 states and 78 transitions. [2022-04-08 05:50:05,839 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 78 transitions. [2022-04-08 05:50:05,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:05,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:05,840 INFO L74 IsIncluded]: Start isIncluded. First operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 64 states. [2022-04-08 05:50:05,840 INFO L87 Difference]: Start difference. First operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 64 states. [2022-04-08 05:50:05,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:05,843 INFO L93 Difference]: Finished difference Result 64 states and 78 transitions. [2022-04-08 05:50:05,843 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 78 transitions. [2022-04-08 05:50:05,844 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:05,844 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:05,844 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:50:05,845 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:50:05,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 05:50:05,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 77 transitions. [2022-04-08 05:50:05,847 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 77 transitions. Word has length 60 [2022-04-08 05:50:05,847 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:50:05,848 INFO L478 AbstractCegarLoop]: Abstraction has 63 states and 77 transitions. [2022-04-08 05:50:05,848 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 05:50:05,848 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 63 states and 77 transitions. [2022-04-08 05:50:05,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:05,950 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-08 05:50:05,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-08 05:50:05,951 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:50:05,951 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 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:50:05,975 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:50:06,151 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:50:06,152 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:50:06,152 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:50:06,152 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 1 times [2022-04-08 05:50:06,153 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:06,153 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1556996329] [2022-04-08 05:50:06,153 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:50:06,153 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 2 times [2022-04-08 05:50:06,153 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:50:06,153 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2041142805] [2022-04-08 05:50:06,153 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:50:06,154 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:50:06,170 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:50:06,170 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [497096151] [2022-04-08 05:50:06,170 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:50:06,170 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:06,171 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:50:06,171 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:50:06,201 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:50:06,245 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:50:06,245 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:50:06,246 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 05:50:06,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:50:06,274 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:50:06,514 INFO L272 TraceCheckUtils]: 0: Hoare triple {2944#true} call ULTIMATE.init(); {2944#true} is VALID [2022-04-08 05:50:06,514 INFO L290 TraceCheckUtils]: 1: Hoare triple {2944#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); {2944#true} is VALID [2022-04-08 05:50:06,514 INFO L290 TraceCheckUtils]: 2: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,514 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2944#true} {2944#true} #103#return; {2944#true} is VALID [2022-04-08 05:50:06,514 INFO L272 TraceCheckUtils]: 4: Hoare triple {2944#true} call #t~ret6 := main(); {2944#true} is VALID [2022-04-08 05:50:06,514 INFO L290 TraceCheckUtils]: 5: Hoare triple {2944#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; {2944#true} is VALID [2022-04-08 05:50:06,515 INFO L272 TraceCheckUtils]: 6: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,515 INFO L290 TraceCheckUtils]: 7: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,515 INFO L290 TraceCheckUtils]: 8: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,518 INFO L290 TraceCheckUtils]: 9: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,518 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2944#true} {2944#true} #79#return; {2944#true} is VALID [2022-04-08 05:50:06,523 INFO L290 TraceCheckUtils]: 11: Hoare triple {2944#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2944#true} is VALID [2022-04-08 05:50:06,524 INFO L272 TraceCheckUtils]: 12: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,524 INFO L290 TraceCheckUtils]: 13: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,524 INFO L290 TraceCheckUtils]: 14: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,524 INFO L290 TraceCheckUtils]: 15: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,524 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2944#true} {2944#true} #81#return; {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L272 TraceCheckUtils]: 17: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L290 TraceCheckUtils]: 18: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L290 TraceCheckUtils]: 19: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L290 TraceCheckUtils]: 20: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2944#true} {2944#true} #83#return; {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L272 TraceCheckUtils]: 22: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L290 TraceCheckUtils]: 23: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L290 TraceCheckUtils]: 24: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L290 TraceCheckUtils]: 25: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2944#true} {2944#true} #85#return; {2944#true} is VALID [2022-04-08 05:50:06,525 INFO L290 TraceCheckUtils]: 27: Hoare triple {2944#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; {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L272 TraceCheckUtils]: 28: Hoare triple {2944#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L290 TraceCheckUtils]: 29: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L290 TraceCheckUtils]: 30: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2944#true} {2944#true} #87#return; {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L272 TraceCheckUtils]: 33: Hoare triple {2944#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L290 TraceCheckUtils]: 35: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L290 TraceCheckUtils]: 36: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2944#true} {2944#true} #89#return; {2944#true} is VALID [2022-04-08 05:50:06,526 INFO L290 TraceCheckUtils]: 38: Hoare triple {2944#true} assume !false; {2944#true} is VALID [2022-04-08 05:50:06,531 INFO L290 TraceCheckUtils]: 39: Hoare triple {2944#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:50:06,531 INFO L290 TraceCheckUtils]: 40: Hoare triple {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !false; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:50:06,531 INFO L272 TraceCheckUtils]: 41: Hoare triple {3066#(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)); {2944#true} is VALID [2022-04-08 05:50:06,532 INFO L290 TraceCheckUtils]: 42: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,532 INFO L290 TraceCheckUtils]: 43: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,532 INFO L290 TraceCheckUtils]: 44: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,532 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #91#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:50:06,533 INFO L272 TraceCheckUtils]: 46: Hoare triple {3066#(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)); {2944#true} is VALID [2022-04-08 05:50:06,533 INFO L290 TraceCheckUtils]: 47: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,533 INFO L290 TraceCheckUtils]: 48: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,533 INFO L290 TraceCheckUtils]: 49: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,533 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #93#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:50:06,534 INFO L272 TraceCheckUtils]: 51: Hoare triple {3066#(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)); {2944#true} is VALID [2022-04-08 05:50:06,534 INFO L290 TraceCheckUtils]: 52: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,534 INFO L290 TraceCheckUtils]: 53: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,534 INFO L290 TraceCheckUtils]: 54: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,535 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #95#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:50:06,535 INFO L272 TraceCheckUtils]: 56: Hoare triple {3066#(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)); {2944#true} is VALID [2022-04-08 05:50:06,535 INFO L290 TraceCheckUtils]: 57: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,535 INFO L290 TraceCheckUtils]: 58: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,535 INFO L290 TraceCheckUtils]: 59: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,536 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #97#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-08 05:50:06,537 INFO L290 TraceCheckUtils]: 61: Hoare triple {3066#(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; {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} is VALID [2022-04-08 05:50:06,538 INFO L290 TraceCheckUtils]: 62: Hoare triple {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} assume !false; {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} is VALID [2022-04-08 05:50:06,538 INFO L272 TraceCheckUtils]: 63: Hoare triple {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:06,539 INFO L290 TraceCheckUtils]: 64: Hoare triple {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:06,539 INFO L290 TraceCheckUtils]: 65: Hoare triple {3144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2945#false} is VALID [2022-04-08 05:50:06,539 INFO L290 TraceCheckUtils]: 66: Hoare triple {2945#false} assume !false; {2945#false} is VALID [2022-04-08 05:50:06,541 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-08 05:50:06,541 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:50:06,804 INFO L290 TraceCheckUtils]: 66: Hoare triple {2945#false} assume !false; {2945#false} is VALID [2022-04-08 05:50:06,805 INFO L290 TraceCheckUtils]: 65: Hoare triple {3144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2945#false} is VALID [2022-04-08 05:50:06,805 INFO L290 TraceCheckUtils]: 64: Hoare triple {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:06,806 INFO L272 TraceCheckUtils]: 63: Hoare triple {3160#(= 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)); {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:06,806 INFO L290 TraceCheckUtils]: 62: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,808 INFO L290 TraceCheckUtils]: 61: Hoare triple {3160#(= 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; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,809 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,809 INFO L290 TraceCheckUtils]: 59: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,809 INFO L290 TraceCheckUtils]: 58: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,809 INFO L290 TraceCheckUtils]: 57: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,809 INFO L272 TraceCheckUtils]: 56: Hoare triple {3160#(= 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)); {2944#true} is VALID [2022-04-08 05:50:06,810 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,810 INFO L290 TraceCheckUtils]: 54: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,810 INFO L290 TraceCheckUtils]: 53: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,810 INFO L290 TraceCheckUtils]: 52: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,810 INFO L272 TraceCheckUtils]: 51: Hoare triple {3160#(= 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)); {2944#true} is VALID [2022-04-08 05:50:06,811 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #93#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,811 INFO L290 TraceCheckUtils]: 49: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,811 INFO L290 TraceCheckUtils]: 48: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,811 INFO L290 TraceCheckUtils]: 47: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,811 INFO L272 TraceCheckUtils]: 46: Hoare triple {3160#(= 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)); {2944#true} is VALID [2022-04-08 05:50:06,811 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #91#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,811 INFO L290 TraceCheckUtils]: 44: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,811 INFO L290 TraceCheckUtils]: 43: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,811 INFO L290 TraceCheckUtils]: 42: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,812 INFO L272 TraceCheckUtils]: 41: Hoare triple {3160#(= 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)); {2944#true} is VALID [2022-04-08 05:50:06,812 INFO L290 TraceCheckUtils]: 40: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,812 INFO L290 TraceCheckUtils]: 39: Hoare triple {2944#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:50:06,812 INFO L290 TraceCheckUtils]: 38: Hoare triple {2944#true} assume !false; {2944#true} is VALID [2022-04-08 05:50:06,812 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2944#true} {2944#true} #89#return; {2944#true} is VALID [2022-04-08 05:50:06,812 INFO L290 TraceCheckUtils]: 36: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L290 TraceCheckUtils]: 35: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L272 TraceCheckUtils]: 33: Hoare triple {2944#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2944#true} {2944#true} #87#return; {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L290 TraceCheckUtils]: 30: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L290 TraceCheckUtils]: 29: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L272 TraceCheckUtils]: 28: Hoare triple {2944#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L290 TraceCheckUtils]: 27: Hoare triple {2944#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; {2944#true} is VALID [2022-04-08 05:50:06,813 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2944#true} {2944#true} #85#return; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 25: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 24: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 23: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L272 TraceCheckUtils]: 22: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2944#true} {2944#true} #83#return; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 20: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 19: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 18: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L272 TraceCheckUtils]: 17: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2944#true} {2944#true} #81#return; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 15: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,814 INFO L290 TraceCheckUtils]: 14: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L290 TraceCheckUtils]: 13: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L272 TraceCheckUtils]: 12: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L290 TraceCheckUtils]: 11: Hoare triple {2944#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2944#true} {2944#true} #79#return; {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L290 TraceCheckUtils]: 9: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L290 TraceCheckUtils]: 8: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L290 TraceCheckUtils]: 7: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L272 TraceCheckUtils]: 6: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L290 TraceCheckUtils]: 5: Hoare triple {2944#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; {2944#true} is VALID [2022-04-08 05:50:06,815 INFO L272 TraceCheckUtils]: 4: Hoare triple {2944#true} call #t~ret6 := main(); {2944#true} is VALID [2022-04-08 05:50:06,816 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2944#true} {2944#true} #103#return; {2944#true} is VALID [2022-04-08 05:50:06,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 05:50:06,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {2944#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); {2944#true} is VALID [2022-04-08 05:50:06,816 INFO L272 TraceCheckUtils]: 0: Hoare triple {2944#true} call ULTIMATE.init(); {2944#true} is VALID [2022-04-08 05:50:06,816 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 86 trivial. 0 not checked. [2022-04-08 05:50:06,816 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:50:06,816 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2041142805] [2022-04-08 05:50:06,816 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:50:06,816 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [497096151] [2022-04-08 05:50:06,816 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [497096151] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 05:50:06,817 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:50:06,817 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-08 05:50:06,817 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:50:06,817 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1556996329] [2022-04-08 05:50:06,817 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1556996329] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:50:06,817 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:50:06,817 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:50:06,817 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [625962443] [2022-04-08 05:50:06,817 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:50:06,818 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, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 67 [2022-04-08 05:50:06,818 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:50:06,818 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, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 05:50:06,849 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:50:06,850 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:50:06,850 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:06,850 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:50:06,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-08 05:50:06,850 INFO L87 Difference]: Start difference. First operand 63 states and 77 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, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 05:50:07,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:07,045 INFO L93 Difference]: Finished difference Result 69 states and 82 transitions. [2022-04-08 05:50:07,045 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:50:07,045 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, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 67 [2022-04-08 05:50:07,045 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:50:07,045 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, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 05:50:07,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-08 05:50:07,047 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, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 05:50:07,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-08 05:50:07,048 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-08 05:50:07,096 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:07,097 INFO L225 Difference]: With dead ends: 69 [2022-04-08 05:50:07,098 INFO L226 Difference]: Without dead ends: 67 [2022-04-08 05:50:07,098 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 126 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-08 05:50:07,099 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 137 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:50:07,099 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 137 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:50:07,100 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-08 05:50:07,147 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 59. [2022-04-08 05:50:07,147 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:50:07,147 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:50:07,148 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:50:07,148 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:50:07,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:07,151 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-08 05:50:07,151 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-08 05:50:07,152 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:07,152 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:07,152 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-08 05:50:07,152 INFO L87 Difference]: Start difference. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-08 05:50:07,155 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:07,155 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-08 05:50:07,156 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-08 05:50:07,156 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:07,156 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:07,156 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:50:07,156 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:50:07,156 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 05:50:07,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 71 transitions. [2022-04-08 05:50:07,159 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 71 transitions. Word has length 67 [2022-04-08 05:50:07,160 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:50:07,160 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 71 transitions. [2022-04-08 05:50:07,160 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, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 05:50:07,161 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 71 transitions. [2022-04-08 05:50:07,267 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:50:07,268 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 71 transitions. [2022-04-08 05:50:07,268 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-08 05:50:07,268 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:50:07,268 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 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, 1, 1, 1] [2022-04-08 05:50:07,297 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 05:50:07,469 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:50:07,469 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:50:07,469 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:50:07,469 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 1 times [2022-04-08 05:50:07,470 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:07,470 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1653127920] [2022-04-08 05:50:07,470 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:50:07,470 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 2 times [2022-04-08 05:50:07,470 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:50:07,470 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1086895366] [2022-04-08 05:50:07,470 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:50:07,470 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:50:07,491 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:50:07,491 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [191790686] [2022-04-08 05:50:07,491 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:50:07,491 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:07,491 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:50:07,498 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:50:07,499 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:50:07,560 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:50:07,560 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:50:07,561 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:50:07,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:50:07,575 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:50:07,847 INFO L272 TraceCheckUtils]: 0: Hoare triple {3744#true} call ULTIMATE.init(); {3744#true} is VALID [2022-04-08 05:50:07,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {3744#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); {3744#true} is VALID [2022-04-08 05:50:07,849 INFO L290 TraceCheckUtils]: 2: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,849 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3744#true} {3744#true} #103#return; {3744#true} is VALID [2022-04-08 05:50:07,850 INFO L272 TraceCheckUtils]: 4: Hoare triple {3744#true} call #t~ret6 := main(); {3744#true} is VALID [2022-04-08 05:50:07,850 INFO L290 TraceCheckUtils]: 5: Hoare triple {3744#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; {3744#true} is VALID [2022-04-08 05:50:07,850 INFO L272 TraceCheckUtils]: 6: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,850 INFO L290 TraceCheckUtils]: 7: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,850 INFO L290 TraceCheckUtils]: 9: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,850 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3744#true} {3744#true} #79#return; {3744#true} is VALID [2022-04-08 05:50:07,851 INFO L290 TraceCheckUtils]: 11: Hoare triple {3744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3744#true} is VALID [2022-04-08 05:50:07,851 INFO L272 TraceCheckUtils]: 12: Hoare triple {3744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,851 INFO L290 TraceCheckUtils]: 13: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,851 INFO L290 TraceCheckUtils]: 14: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,851 INFO L290 TraceCheckUtils]: 15: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,851 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3744#true} {3744#true} #81#return; {3744#true} is VALID [2022-04-08 05:50:07,851 INFO L272 TraceCheckUtils]: 17: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,852 INFO L290 TraceCheckUtils]: 18: Hoare triple {3744#true} ~cond := #in~cond; {3803#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:50:07,852 INFO L290 TraceCheckUtils]: 19: Hoare triple {3803#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:50:07,852 INFO L290 TraceCheckUtils]: 20: Hoare triple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:50:07,853 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} {3744#true} #83#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-08 05:50:07,853 INFO L272 TraceCheckUtils]: 22: Hoare triple {3814#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,853 INFO L290 TraceCheckUtils]: 23: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,853 INFO L290 TraceCheckUtils]: 24: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,853 INFO L290 TraceCheckUtils]: 25: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,854 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3744#true} {3814#(<= 1 main_~x~0)} #85#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-08 05:50:07,854 INFO L290 TraceCheckUtils]: 27: Hoare triple {3814#(<= 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; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:07,855 INFO L272 TraceCheckUtils]: 28: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,855 INFO L290 TraceCheckUtils]: 29: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,855 INFO L290 TraceCheckUtils]: 30: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,855 INFO L290 TraceCheckUtils]: 31: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,855 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #87#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:07,855 INFO L272 TraceCheckUtils]: 33: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,855 INFO L290 TraceCheckUtils]: 34: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,856 INFO L290 TraceCheckUtils]: 35: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,856 INFO L290 TraceCheckUtils]: 36: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,856 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #89#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:07,856 INFO L290 TraceCheckUtils]: 38: Hoare triple {3833#(<= 1 main_~a~0)} assume !false; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:07,857 INFO L290 TraceCheckUtils]: 39: Hoare triple {3833#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:07,857 INFO L290 TraceCheckUtils]: 40: Hoare triple {3870#(<= 1 main_~c~0)} assume !false; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:07,857 INFO L272 TraceCheckUtils]: 41: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,857 INFO L290 TraceCheckUtils]: 42: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,857 INFO L290 TraceCheckUtils]: 43: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,858 INFO L290 TraceCheckUtils]: 44: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,858 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #91#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:07,858 INFO L272 TraceCheckUtils]: 46: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,858 INFO L290 TraceCheckUtils]: 47: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,858 INFO L290 TraceCheckUtils]: 48: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,859 INFO L290 TraceCheckUtils]: 49: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,859 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #93#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:07,859 INFO L272 TraceCheckUtils]: 51: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:07,859 INFO L290 TraceCheckUtils]: 52: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,859 INFO L290 TraceCheckUtils]: 53: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,860 INFO L290 TraceCheckUtils]: 54: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,860 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #95#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:07,860 INFO L272 TraceCheckUtils]: 56: Hoare triple {3870#(<= 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)); {3744#true} is VALID [2022-04-08 05:50:07,860 INFO L290 TraceCheckUtils]: 57: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:07,861 INFO L290 TraceCheckUtils]: 58: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:07,861 INFO L290 TraceCheckUtils]: 59: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:07,861 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #97#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:07,862 INFO L290 TraceCheckUtils]: 61: Hoare triple {3870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:07,862 INFO L290 TraceCheckUtils]: 62: Hoare triple {3870#(<= 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; {3940#(<= 1 main_~b~0)} is VALID [2022-04-08 05:50:07,863 INFO L290 TraceCheckUtils]: 63: Hoare triple {3940#(<= 1 main_~b~0)} assume !false; {3940#(<= 1 main_~b~0)} is VALID [2022-04-08 05:50:07,863 INFO L290 TraceCheckUtils]: 64: Hoare triple {3940#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3745#false} is VALID [2022-04-08 05:50:07,863 INFO L272 TraceCheckUtils]: 65: Hoare triple {3745#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3745#false} is VALID [2022-04-08 05:50:07,863 INFO L290 TraceCheckUtils]: 66: Hoare triple {3745#false} ~cond := #in~cond; {3745#false} is VALID [2022-04-08 05:50:07,863 INFO L290 TraceCheckUtils]: 67: Hoare triple {3745#false} assume 0 == ~cond; {3745#false} is VALID [2022-04-08 05:50:07,863 INFO L290 TraceCheckUtils]: 68: Hoare triple {3745#false} assume !false; {3745#false} is VALID [2022-04-08 05:50:07,864 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-08 05:50:07,864 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:50:08,252 INFO L290 TraceCheckUtils]: 68: Hoare triple {3745#false} assume !false; {3745#false} is VALID [2022-04-08 05:50:08,252 INFO L290 TraceCheckUtils]: 67: Hoare triple {3745#false} assume 0 == ~cond; {3745#false} is VALID [2022-04-08 05:50:08,252 INFO L290 TraceCheckUtils]: 66: Hoare triple {3745#false} ~cond := #in~cond; {3745#false} is VALID [2022-04-08 05:50:08,252 INFO L272 TraceCheckUtils]: 65: Hoare triple {3745#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3745#false} is VALID [2022-04-08 05:50:08,253 INFO L290 TraceCheckUtils]: 64: Hoare triple {3940#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3745#false} is VALID [2022-04-08 05:50:08,253 INFO L290 TraceCheckUtils]: 63: Hoare triple {3940#(<= 1 main_~b~0)} assume !false; {3940#(<= 1 main_~b~0)} is VALID [2022-04-08 05:50:08,253 INFO L290 TraceCheckUtils]: 62: Hoare triple {3870#(<= 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; {3940#(<= 1 main_~b~0)} is VALID [2022-04-08 05:50:08,254 INFO L290 TraceCheckUtils]: 61: Hoare triple {3870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:08,255 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #97#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:08,255 INFO L290 TraceCheckUtils]: 59: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,255 INFO L290 TraceCheckUtils]: 58: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,255 INFO L290 TraceCheckUtils]: 57: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,255 INFO L272 TraceCheckUtils]: 56: Hoare triple {3870#(<= 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)); {3744#true} is VALID [2022-04-08 05:50:08,256 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #95#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:08,256 INFO L290 TraceCheckUtils]: 54: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,256 INFO L290 TraceCheckUtils]: 53: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,256 INFO L290 TraceCheckUtils]: 52: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,256 INFO L272 TraceCheckUtils]: 51: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,257 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #93#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:08,257 INFO L290 TraceCheckUtils]: 49: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,257 INFO L290 TraceCheckUtils]: 48: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,257 INFO L290 TraceCheckUtils]: 47: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,258 INFO L272 TraceCheckUtils]: 46: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,258 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #91#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:08,258 INFO L290 TraceCheckUtils]: 44: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,258 INFO L290 TraceCheckUtils]: 43: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,258 INFO L290 TraceCheckUtils]: 42: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,258 INFO L272 TraceCheckUtils]: 41: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,259 INFO L290 TraceCheckUtils]: 40: Hoare triple {3870#(<= 1 main_~c~0)} assume !false; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:08,259 INFO L290 TraceCheckUtils]: 39: Hoare triple {3833#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:50:08,260 INFO L290 TraceCheckUtils]: 38: Hoare triple {3833#(<= 1 main_~a~0)} assume !false; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:08,260 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #89#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:08,260 INFO L290 TraceCheckUtils]: 36: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,260 INFO L290 TraceCheckUtils]: 35: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,260 INFO L290 TraceCheckUtils]: 34: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,260 INFO L272 TraceCheckUtils]: 33: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,261 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #87#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:08,261 INFO L290 TraceCheckUtils]: 31: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,261 INFO L290 TraceCheckUtils]: 30: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,261 INFO L290 TraceCheckUtils]: 29: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,261 INFO L272 TraceCheckUtils]: 28: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,262 INFO L290 TraceCheckUtils]: 27: Hoare triple {3814#(<= 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; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 05:50:08,262 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3744#true} {3814#(<= 1 main_~x~0)} #85#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-08 05:50:08,262 INFO L290 TraceCheckUtils]: 25: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,263 INFO L290 TraceCheckUtils]: 24: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,263 INFO L290 TraceCheckUtils]: 23: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,264 INFO L272 TraceCheckUtils]: 22: Hoare triple {3814#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,264 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} {3744#true} #83#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-08 05:50:08,265 INFO L290 TraceCheckUtils]: 20: Hoare triple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:50:08,265 INFO L290 TraceCheckUtils]: 19: Hoare triple {4109#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:50:08,265 INFO L290 TraceCheckUtils]: 18: Hoare triple {3744#true} ~cond := #in~cond; {4109#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 05:50:08,265 INFO L272 TraceCheckUtils]: 17: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3744#true} {3744#true} #81#return; {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L290 TraceCheckUtils]: 15: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L290 TraceCheckUtils]: 14: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L290 TraceCheckUtils]: 13: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L272 TraceCheckUtils]: 12: Hoare triple {3744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L290 TraceCheckUtils]: 11: Hoare triple {3744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3744#true} {3744#true} #79#return; {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L290 TraceCheckUtils]: 9: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L290 TraceCheckUtils]: 8: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 05:50:08,266 INFO L272 TraceCheckUtils]: 6: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-08 05:50:08,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {3744#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; {3744#true} is VALID [2022-04-08 05:50:08,267 INFO L272 TraceCheckUtils]: 4: Hoare triple {3744#true} call #t~ret6 := main(); {3744#true} is VALID [2022-04-08 05:50:08,267 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3744#true} {3744#true} #103#return; {3744#true} is VALID [2022-04-08 05:50:08,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 05:50:08,267 INFO L290 TraceCheckUtils]: 1: Hoare triple {3744#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); {3744#true} is VALID [2022-04-08 05:50:08,267 INFO L272 TraceCheckUtils]: 0: Hoare triple {3744#true} call ULTIMATE.init(); {3744#true} is VALID [2022-04-08 05:50:08,267 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-08 05:50:08,267 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:50:08,267 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1086895366] [2022-04-08 05:50:08,268 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:50:08,268 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [191790686] [2022-04-08 05:50:08,268 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [191790686] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:50:08,268 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:50:08,268 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 05:50:08,268 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:50:08,268 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1653127920] [2022-04-08 05:50:08,268 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1653127920] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:50:08,268 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:50:08,268 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:50:08,268 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [485447337] [2022-04-08 05:50:08,268 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:50:08,269 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 69 [2022-04-08 05:50:08,270 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:50:08,270 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:50:08,309 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:50:08,309 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:50:08,309 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:08,310 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:50:08,310 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:50:08,310 INFO L87 Difference]: Start difference. First operand 59 states and 71 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:50:09,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:09,101 INFO L93 Difference]: Finished difference Result 106 states and 146 transitions. [2022-04-08 05:50:09,102 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:50:09,102 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 69 [2022-04-08 05:50:09,102 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:50:09,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:50:09,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-08 05:50:09,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:50:09,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-08 05:50:09,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 110 transitions. [2022-04-08 05:50:09,205 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:50:09,212 INFO L225 Difference]: With dead ends: 106 [2022-04-08 05:50:09,212 INFO L226 Difference]: Without dead ends: 98 [2022-04-08 05:50:09,212 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 129 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:50:09,213 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 30 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 227 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:50:09,213 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 259 Invalid, 227 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 05:50:09,213 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-08 05:50:09,346 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 89. [2022-04-08 05:50:09,346 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:50:09,346 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 05:50:09,347 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 05:50:09,347 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 05:50:09,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:09,353 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-08 05:50:09,353 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-08 05:50:09,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:09,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:09,354 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-08 05:50:09,355 INFO L87 Difference]: Start difference. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-08 05:50:09,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:09,360 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-08 05:50:09,360 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-08 05:50:09,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:09,361 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:09,361 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:50:09,361 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:50:09,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 05:50:09,366 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 122 transitions. [2022-04-08 05:50:09,367 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 122 transitions. Word has length 69 [2022-04-08 05:50:09,367 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:50:09,367 INFO L478 AbstractCegarLoop]: Abstraction has 89 states and 122 transitions. [2022-04-08 05:50:09,367 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 05:50:09,367 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 122 transitions. [2022-04-08 05:50:09,546 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:09,546 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 122 transitions. [2022-04-08 05:50:09,547 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-08 05:50:09,547 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:50:09,547 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 5, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:50:09,563 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:50:09,747 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:50:09,748 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:50:09,748 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:50:09,748 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 1 times [2022-04-08 05:50:09,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:09,748 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1749643000] [2022-04-08 05:50:09,749 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:50:09,749 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 2 times [2022-04-08 05:50:09,749 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:50:09,749 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1174364615] [2022-04-08 05:50:09,749 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:50:09,749 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:50:09,780 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:50:09,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1307904687] [2022-04-08 05:50:09,780 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:50:09,780 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:09,780 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:50:09,791 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:50:09,792 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:50:09,844 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:50:09,845 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:50:09,846 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-08 05:50:09,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:50:09,861 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:50:10,135 INFO L272 TraceCheckUtils]: 0: Hoare triple {4762#true} call ULTIMATE.init(); {4762#true} is VALID [2022-04-08 05:50:10,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {4762#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); {4762#true} is VALID [2022-04-08 05:50:10,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,135 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4762#true} {4762#true} #103#return; {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L272 TraceCheckUtils]: 4: Hoare triple {4762#true} call #t~ret6 := main(); {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L290 TraceCheckUtils]: 5: Hoare triple {4762#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; {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L272 TraceCheckUtils]: 6: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L290 TraceCheckUtils]: 7: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4762#true} {4762#true} #79#return; {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L290 TraceCheckUtils]: 11: Hoare triple {4762#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L272 TraceCheckUtils]: 12: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L290 TraceCheckUtils]: 13: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,136 INFO L290 TraceCheckUtils]: 14: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L290 TraceCheckUtils]: 15: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4762#true} {4762#true} #81#return; {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L272 TraceCheckUtils]: 17: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L290 TraceCheckUtils]: 18: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L290 TraceCheckUtils]: 19: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L290 TraceCheckUtils]: 20: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4762#true} {4762#true} #83#return; {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L272 TraceCheckUtils]: 22: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L290 TraceCheckUtils]: 23: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,137 INFO L290 TraceCheckUtils]: 24: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,138 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4762#true} {4762#true} #85#return; {4762#true} is VALID [2022-04-08 05:50:10,143 INFO L290 TraceCheckUtils]: 27: Hoare triple {4762#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; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:50:10,143 INFO L272 TraceCheckUtils]: 28: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,144 INFO L290 TraceCheckUtils]: 29: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,144 INFO L290 TraceCheckUtils]: 30: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,144 INFO L290 TraceCheckUtils]: 31: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,144 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4762#true} {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #87#return; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:50:10,144 INFO L272 TraceCheckUtils]: 33: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,145 INFO L290 TraceCheckUtils]: 34: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,145 INFO L290 TraceCheckUtils]: 35: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,145 INFO L290 TraceCheckUtils]: 36: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,145 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4762#true} {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #89#return; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:50:10,146 INFO L290 TraceCheckUtils]: 38: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:50:10,146 INFO L290 TraceCheckUtils]: 39: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4885#(= main_~q~0 0)} is VALID [2022-04-08 05:50:10,146 INFO L290 TraceCheckUtils]: 40: Hoare triple {4885#(= main_~q~0 0)} assume !false; {4885#(= main_~q~0 0)} is VALID [2022-04-08 05:50:10,146 INFO L272 TraceCheckUtils]: 41: Hoare triple {4885#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,146 INFO L290 TraceCheckUtils]: 42: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,146 INFO L290 TraceCheckUtils]: 43: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,147 INFO L290 TraceCheckUtils]: 44: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,147 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4762#true} {4885#(= main_~q~0 0)} #91#return; {4885#(= main_~q~0 0)} is VALID [2022-04-08 05:50:10,147 INFO L272 TraceCheckUtils]: 46: Hoare triple {4885#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,147 INFO L290 TraceCheckUtils]: 47: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,147 INFO L290 TraceCheckUtils]: 48: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,148 INFO L290 TraceCheckUtils]: 49: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,148 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4762#true} {4885#(= main_~q~0 0)} #93#return; {4885#(= main_~q~0 0)} is VALID [2022-04-08 05:50:10,148 INFO L272 TraceCheckUtils]: 51: Hoare triple {4885#(= main_~q~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:10,149 INFO L290 TraceCheckUtils]: 52: Hoare triple {4762#true} ~cond := #in~cond; {4925#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:10,149 INFO L290 TraceCheckUtils]: 53: Hoare triple {4925#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:10,149 INFO L290 TraceCheckUtils]: 54: Hoare triple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:10,150 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} {4885#(= main_~q~0 0)} #95#return; {4936#(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:50:10,150 INFO L272 TraceCheckUtils]: 56: Hoare triple {4936#(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)); {4762#true} is VALID [2022-04-08 05:50:10,150 INFO L290 TraceCheckUtils]: 57: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,150 INFO L290 TraceCheckUtils]: 58: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,151 INFO L290 TraceCheckUtils]: 59: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,151 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4762#true} {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} #97#return; {4936#(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:50:10,152 INFO L290 TraceCheckUtils]: 61: Hoare triple {4936#(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); {4936#(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:50:10,152 INFO L290 TraceCheckUtils]: 62: Hoare triple {4936#(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; {4958#(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:50:10,153 INFO L290 TraceCheckUtils]: 63: Hoare triple {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {4958#(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:50:10,153 INFO L290 TraceCheckUtils]: 64: Hoare triple {4958#(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; {4958#(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:50:10,153 INFO L290 TraceCheckUtils]: 65: Hoare triple {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {4958#(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:50:10,154 INFO L272 TraceCheckUtils]: 66: Hoare triple {4958#(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)); {4762#true} is VALID [2022-04-08 05:50:10,154 INFO L290 TraceCheckUtils]: 67: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:10,154 INFO L290 TraceCheckUtils]: 68: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:10,154 INFO L290 TraceCheckUtils]: 69: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:10,155 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4762#true} {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {4958#(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:50:10,155 INFO L272 TraceCheckUtils]: 71: Hoare triple {4958#(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)); {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:10,156 INFO L290 TraceCheckUtils]: 72: Hoare triple {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4990#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:10,156 INFO L290 TraceCheckUtils]: 73: Hoare triple {4990#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4763#false} is VALID [2022-04-08 05:50:10,156 INFO L290 TraceCheckUtils]: 74: Hoare triple {4763#false} assume !false; {4763#false} is VALID [2022-04-08 05:50:10,157 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 15 proven. 12 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 05:50:10,157 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:50:22,300 INFO L290 TraceCheckUtils]: 74: Hoare triple {4763#false} assume !false; {4763#false} is VALID [2022-04-08 05:50:22,300 INFO L290 TraceCheckUtils]: 73: Hoare triple {4990#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4763#false} is VALID [2022-04-08 05:50:22,300 INFO L290 TraceCheckUtils]: 72: Hoare triple {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4990#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:22,301 INFO L272 TraceCheckUtils]: 71: Hoare triple {5006#(= 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)); {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:22,302 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4762#true} {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:50:22,302 INFO L290 TraceCheckUtils]: 69: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,302 INFO L290 TraceCheckUtils]: 68: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,302 INFO L290 TraceCheckUtils]: 67: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,302 INFO L272 TraceCheckUtils]: 66: Hoare triple {5006#(= 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)); {4762#true} is VALID [2022-04-08 05:50:22,302 INFO L290 TraceCheckUtils]: 65: Hoare triple {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:50:22,303 INFO L290 TraceCheckUtils]: 64: Hoare triple {5006#(= 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; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:50:22,303 INFO L290 TraceCheckUtils]: 63: Hoare triple {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:50:22,303 INFO L290 TraceCheckUtils]: 62: Hoare triple {5034#(= 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; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:50:22,304 INFO L290 TraceCheckUtils]: 61: Hoare triple {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:50:22,304 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4762#true} {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:50:22,304 INFO L290 TraceCheckUtils]: 59: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,304 INFO L290 TraceCheckUtils]: 58: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,304 INFO L290 TraceCheckUtils]: 57: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,304 INFO L272 TraceCheckUtils]: 56: Hoare triple {5034#(= 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)); {4762#true} is VALID [2022-04-08 05:50:22,305 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} {4762#true} #95#return; {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:50:22,305 INFO L290 TraceCheckUtils]: 54: Hoare triple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:22,306 INFO L290 TraceCheckUtils]: 53: Hoare triple {5065#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:22,306 INFO L290 TraceCheckUtils]: 52: Hoare triple {4762#true} ~cond := #in~cond; {5065#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:50:22,306 INFO L272 TraceCheckUtils]: 51: Hoare triple {4762#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,306 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4762#true} {4762#true} #93#return; {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 49: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 48: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 47: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L272 TraceCheckUtils]: 46: Hoare triple {4762#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4762#true} {4762#true} #91#return; {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 44: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 43: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 42: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L272 TraceCheckUtils]: 41: Hoare triple {4762#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 40: Hoare triple {4762#true} assume !false; {4762#true} is VALID [2022-04-08 05:50:22,307 INFO L290 TraceCheckUtils]: 39: Hoare triple {4762#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L290 TraceCheckUtils]: 38: Hoare triple {4762#true} assume !false; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4762#true} {4762#true} #89#return; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L290 TraceCheckUtils]: 36: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L290 TraceCheckUtils]: 35: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L290 TraceCheckUtils]: 34: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L272 TraceCheckUtils]: 33: Hoare triple {4762#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4762#true} {4762#true} #87#return; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L290 TraceCheckUtils]: 31: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L290 TraceCheckUtils]: 30: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L290 TraceCheckUtils]: 29: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,308 INFO L272 TraceCheckUtils]: 28: Hoare triple {4762#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L290 TraceCheckUtils]: 27: Hoare triple {4762#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; {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4762#true} {4762#true} #85#return; {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L290 TraceCheckUtils]: 23: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L272 TraceCheckUtils]: 22: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4762#true} {4762#true} #83#return; {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L290 TraceCheckUtils]: 20: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L290 TraceCheckUtils]: 19: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L290 TraceCheckUtils]: 18: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L272 TraceCheckUtils]: 17: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,309 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4762#true} {4762#true} #81#return; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 15: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 14: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 13: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L272 TraceCheckUtils]: 12: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 11: Hoare triple {4762#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4762#true} {4762#true} #79#return; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L272 TraceCheckUtils]: 6: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {4762#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; {4762#true} is VALID [2022-04-08 05:50:22,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {4762#true} call #t~ret6 := main(); {4762#true} is VALID [2022-04-08 05:50:22,311 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4762#true} {4762#true} #103#return; {4762#true} is VALID [2022-04-08 05:50:22,311 INFO L290 TraceCheckUtils]: 2: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 05:50:22,311 INFO L290 TraceCheckUtils]: 1: Hoare triple {4762#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); {4762#true} is VALID [2022-04-08 05:50:22,311 INFO L272 TraceCheckUtils]: 0: Hoare triple {4762#true} call ULTIMATE.init(); {4762#true} is VALID [2022-04-08 05:50:22,311 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 05:50:22,311 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:50:22,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1174364615] [2022-04-08 05:50:22,311 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:50:22,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1307904687] [2022-04-08 05:50:22,312 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1307904687] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:50:22,312 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:50:22,312 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 13 [2022-04-08 05:50:22,312 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:50:22,312 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1749643000] [2022-04-08 05:50:22,312 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1749643000] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:50:22,312 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:50:22,312 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 05:50:22,312 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2067406965] [2022-04-08 05:50:22,312 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:50:22,313 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 75 [2022-04-08 05:50:22,313 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:50:22,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:50:22,352 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:22,353 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 05:50:22,353 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:22,353 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 05:50:22,353 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-08 05:50:22,353 INFO L87 Difference]: Start difference. First operand 89 states and 122 transitions. Second operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:50:23,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:23,219 INFO L93 Difference]: Finished difference Result 124 states and 173 transitions. [2022-04-08 05:50:23,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 05:50:23,219 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 75 [2022-04-08 05:50:23,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:50:23,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:50:23,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-08 05:50:23,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:50:23,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-08 05:50:23,223 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 83 transitions. [2022-04-08 05:50:23,292 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:23,295 INFO L225 Difference]: With dead ends: 124 [2022-04-08 05:50:23,295 INFO L226 Difference]: Without dead ends: 121 [2022-04-08 05:50:23,296 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 152 GetRequests, 137 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=190, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:50:23,296 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 23 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 212 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 218 SdHoareTripleChecker+Invalid, 229 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 212 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 05:50:23,296 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 218 Invalid, 229 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 212 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 05:50:23,297 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-04-08 05:50:23,475 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 118. [2022-04-08 05:50:23,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:50:23,476 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:23,476 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:23,476 INFO L87 Difference]: Start difference. First operand 121 states. Second operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:23,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:23,482 INFO L93 Difference]: Finished difference Result 121 states and 169 transitions. [2022-04-08 05:50:23,482 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 169 transitions. [2022-04-08 05:50:23,482 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:23,482 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:23,483 INFO L74 IsIncluded]: Start isIncluded. First operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 121 states. [2022-04-08 05:50:23,484 INFO L87 Difference]: Start difference. First operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 121 states. [2022-04-08 05:50:23,489 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:23,489 INFO L93 Difference]: Finished difference Result 121 states and 169 transitions. [2022-04-08 05:50:23,489 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 169 transitions. [2022-04-08 05:50:23,490 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:23,490 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:23,490 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:50:23,490 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:50:23,490 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:23,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 166 transitions. [2022-04-08 05:50:23,495 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 166 transitions. Word has length 75 [2022-04-08 05:50:23,495 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:50:23,495 INFO L478 AbstractCegarLoop]: Abstraction has 118 states and 166 transitions. [2022-04-08 05:50:23,495 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 05:50:23,496 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 118 states and 166 transitions. [2022-04-08 05:50:23,761 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:23,761 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 166 transitions. [2022-04-08 05:50:23,762 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-08 05:50:23,762 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:50:23,762 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:50:23,779 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:50:23,967 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:50:23,967 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:50:23,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:50:23,968 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 3 times [2022-04-08 05:50:23,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:23,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1513408824] [2022-04-08 05:50:23,968 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:50:23,968 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 4 times [2022-04-08 05:50:23,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:50:23,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1071166000] [2022-04-08 05:50:23,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:50:23,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:50:23,989 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:50:23,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [388649013] [2022-04-08 05:50:23,990 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:50:23,990 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:23,990 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:50:23,993 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:50:23,994 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:50:24,044 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:50:24,044 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:50:24,046 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-08 05:50:24,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:50:24,063 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:50:24,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {5956#true} call ULTIMATE.init(); {5956#true} is VALID [2022-04-08 05:50:24,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {5956#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); {5956#true} is VALID [2022-04-08 05:50:24,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5956#true} {5956#true} #103#return; {5956#true} is VALID [2022-04-08 05:50:24,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {5956#true} call #t~ret6 := main(); {5956#true} is VALID [2022-04-08 05:50:24,800 INFO L290 TraceCheckUtils]: 5: Hoare triple {5956#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; {5956#true} is VALID [2022-04-08 05:50:24,800 INFO L272 TraceCheckUtils]: 6: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L290 TraceCheckUtils]: 8: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L290 TraceCheckUtils]: 9: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5956#true} {5956#true} #79#return; {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L290 TraceCheckUtils]: 11: Hoare triple {5956#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L272 TraceCheckUtils]: 12: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L290 TraceCheckUtils]: 13: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L290 TraceCheckUtils]: 14: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L290 TraceCheckUtils]: 15: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5956#true} {5956#true} #81#return; {5956#true} is VALID [2022-04-08 05:50:24,801 INFO L272 TraceCheckUtils]: 17: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,804 INFO L290 TraceCheckUtils]: 18: Hoare triple {5956#true} ~cond := #in~cond; {6015#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:50:24,804 INFO L290 TraceCheckUtils]: 19: Hoare triple {6015#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6019#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:50:24,804 INFO L290 TraceCheckUtils]: 20: Hoare triple {6019#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6019#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:50:24,805 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6019#(not (= |assume_abort_if_not_#in~cond| 0))} {5956#true} #83#return; {6026#(<= 1 main_~x~0)} is VALID [2022-04-08 05:50:24,805 INFO L272 TraceCheckUtils]: 22: Hoare triple {6026#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,805 INFO L290 TraceCheckUtils]: 23: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,805 INFO L290 TraceCheckUtils]: 24: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,805 INFO L290 TraceCheckUtils]: 25: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,805 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5956#true} {6026#(<= 1 main_~x~0)} #85#return; {6026#(<= 1 main_~x~0)} is VALID [2022-04-08 05:50:24,806 INFO L290 TraceCheckUtils]: 27: Hoare triple {6026#(<= 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; {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,806 INFO L272 TraceCheckUtils]: 28: Hoare triple {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,806 INFO L290 TraceCheckUtils]: 29: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,806 INFO L290 TraceCheckUtils]: 30: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,806 INFO L290 TraceCheckUtils]: 31: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,807 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5956#true} {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,807 INFO L272 TraceCheckUtils]: 33: Hoare triple {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,807 INFO L290 TraceCheckUtils]: 34: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,807 INFO L290 TraceCheckUtils]: 35: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,807 INFO L290 TraceCheckUtils]: 36: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,808 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5956#true} {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,808 INFO L290 TraceCheckUtils]: 38: Hoare triple {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,808 INFO L290 TraceCheckUtils]: 39: Hoare triple {6045#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,809 INFO L290 TraceCheckUtils]: 40: Hoare triple {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,809 INFO L272 TraceCheckUtils]: 41: Hoare triple {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,809 INFO L290 TraceCheckUtils]: 42: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,809 INFO L290 TraceCheckUtils]: 43: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,809 INFO L290 TraceCheckUtils]: 44: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,810 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5956#true} {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #91#return; {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,810 INFO L272 TraceCheckUtils]: 46: Hoare triple {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,810 INFO L290 TraceCheckUtils]: 47: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,810 INFO L290 TraceCheckUtils]: 48: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,810 INFO L290 TraceCheckUtils]: 49: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,811 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5956#true} {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #93#return; {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,811 INFO L272 TraceCheckUtils]: 51: Hoare triple {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:24,811 INFO L290 TraceCheckUtils]: 52: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,811 INFO L290 TraceCheckUtils]: 53: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,811 INFO L290 TraceCheckUtils]: 54: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,812 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5956#true} {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,812 INFO L272 TraceCheckUtils]: 56: Hoare triple {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} 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)); {5956#true} is VALID [2022-04-08 05:50:24,812 INFO L290 TraceCheckUtils]: 57: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,812 INFO L290 TraceCheckUtils]: 58: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,812 INFO L290 TraceCheckUtils]: 59: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,812 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5956#true} {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,813 INFO L290 TraceCheckUtils]: 61: Hoare triple {6082#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6149#(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_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:50:24,814 INFO L290 TraceCheckUtils]: 62: Hoare triple {6149#(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_~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; {6153#(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:50:24,814 INFO L290 TraceCheckUtils]: 63: Hoare triple {6153#(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 !false; {6153#(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:50:24,814 INFO L290 TraceCheckUtils]: 64: Hoare triple {6153#(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; {6153#(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:50:24,815 INFO L290 TraceCheckUtils]: 65: Hoare triple {6153#(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 !false; {6153#(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:50:24,815 INFO L272 TraceCheckUtils]: 66: Hoare triple {6153#(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)); {5956#true} is VALID [2022-04-08 05:50:24,815 INFO L290 TraceCheckUtils]: 67: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,815 INFO L290 TraceCheckUtils]: 68: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,815 INFO L290 TraceCheckUtils]: 69: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,815 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5956#true} {6153#(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))} #91#return; {6153#(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:50:24,815 INFO L272 TraceCheckUtils]: 71: Hoare triple {6153#(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)); {5956#true} is VALID [2022-04-08 05:50:24,816 INFO L290 TraceCheckUtils]: 72: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:24,816 INFO L290 TraceCheckUtils]: 73: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:24,816 INFO L290 TraceCheckUtils]: 74: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:24,816 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5956#true} {6153#(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))} #93#return; {6153#(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:50:24,817 INFO L272 TraceCheckUtils]: 76: Hoare triple {6153#(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)); {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:24,817 INFO L290 TraceCheckUtils]: 77: Hoare triple {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6200#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:24,817 INFO L290 TraceCheckUtils]: 78: Hoare triple {6200#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5957#false} is VALID [2022-04-08 05:50:24,818 INFO L290 TraceCheckUtils]: 79: Hoare triple {5957#false} assume !false; {5957#false} is VALID [2022-04-08 05:50:24,818 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 18 proven. 15 refuted. 0 times theorem prover too weak. 105 trivial. 0 not checked. [2022-04-08 05:50:24,818 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:50:25,439 INFO L290 TraceCheckUtils]: 79: Hoare triple {5957#false} assume !false; {5957#false} is VALID [2022-04-08 05:50:25,440 INFO L290 TraceCheckUtils]: 78: Hoare triple {6200#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5957#false} is VALID [2022-04-08 05:50:25,440 INFO L290 TraceCheckUtils]: 77: Hoare triple {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6200#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:25,441 INFO L272 TraceCheckUtils]: 76: Hoare triple {6216#(= 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)); {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:25,442 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5956#true} {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #93#return; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:50:25,442 INFO L290 TraceCheckUtils]: 74: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:25,442 INFO L290 TraceCheckUtils]: 73: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:25,442 INFO L290 TraceCheckUtils]: 72: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:25,442 INFO L272 TraceCheckUtils]: 71: Hoare triple {6216#(= 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)); {5956#true} is VALID [2022-04-08 05:50:25,443 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5956#true} {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #91#return; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:50:25,443 INFO L290 TraceCheckUtils]: 69: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:25,443 INFO L290 TraceCheckUtils]: 68: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:25,443 INFO L290 TraceCheckUtils]: 67: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:25,443 INFO L272 TraceCheckUtils]: 66: Hoare triple {6216#(= 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)); {5956#true} is VALID [2022-04-08 05:50:25,443 INFO L290 TraceCheckUtils]: 65: Hoare triple {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:50:25,444 INFO L290 TraceCheckUtils]: 64: Hoare triple {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:50:25,444 INFO L290 TraceCheckUtils]: 63: Hoare triple {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} assume !false; {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} is VALID [2022-04-08 05:50:26,734 INFO L290 TraceCheckUtils]: 62: Hoare triple {6260#(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) (= main_~c~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; {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} is VALID [2022-04-08 05:50:26,734 INFO L290 TraceCheckUtils]: 61: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} assume !(~c~0 >= ~b~0); {6260#(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) (= main_~c~0 0))} is VALID [2022-04-08 05:50:26,735 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #97#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 05:50:26,735 INFO L290 TraceCheckUtils]: 59: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,735 INFO L290 TraceCheckUtils]: 58: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,735 INFO L290 TraceCheckUtils]: 57: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,736 INFO L272 TraceCheckUtils]: 56: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~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)); {5956#true} is VALID [2022-04-08 05:50:26,737 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #95#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 05:50:26,737 INFO L290 TraceCheckUtils]: 54: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,737 INFO L290 TraceCheckUtils]: 53: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,737 INFO L290 TraceCheckUtils]: 52: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,737 INFO L272 TraceCheckUtils]: 51: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,737 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #93#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 05:50:26,738 INFO L290 TraceCheckUtils]: 49: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,738 INFO L290 TraceCheckUtils]: 48: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,738 INFO L290 TraceCheckUtils]: 47: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,738 INFO L272 TraceCheckUtils]: 46: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,738 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #91#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 05:50:26,738 INFO L290 TraceCheckUtils]: 44: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,738 INFO L290 TraceCheckUtils]: 43: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,739 INFO L290 TraceCheckUtils]: 42: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,739 INFO L272 TraceCheckUtils]: 41: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,739 INFO L290 TraceCheckUtils]: 40: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} assume !false; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 05:50:26,739 INFO L290 TraceCheckUtils]: 39: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 05:50:26,740 INFO L290 TraceCheckUtils]: 38: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} assume !false; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-08 05:50:26,740 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5956#true} {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} #89#return; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-08 05:50:26,740 INFO L290 TraceCheckUtils]: 36: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,740 INFO L290 TraceCheckUtils]: 35: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,741 INFO L290 TraceCheckUtils]: 34: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,741 INFO L272 TraceCheckUtils]: 33: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,741 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5956#true} {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} #87#return; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-08 05:50:26,741 INFO L290 TraceCheckUtils]: 31: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,741 INFO L290 TraceCheckUtils]: 30: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,741 INFO L290 TraceCheckUtils]: 29: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,741 INFO L272 TraceCheckUtils]: 28: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L290 TraceCheckUtils]: 27: Hoare triple {5956#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; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-08 05:50:26,742 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5956#true} {5956#true} #85#return; {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L290 TraceCheckUtils]: 25: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L290 TraceCheckUtils]: 24: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L290 TraceCheckUtils]: 23: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L272 TraceCheckUtils]: 22: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5956#true} {5956#true} #83#return; {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L290 TraceCheckUtils]: 20: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,742 INFO L290 TraceCheckUtils]: 19: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 18: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L272 TraceCheckUtils]: 17: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5956#true} {5956#true} #81#return; {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 15: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 14: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 13: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L272 TraceCheckUtils]: 12: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 11: Hoare triple {5956#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5956#true} {5956#true} #79#return; {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 9: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 8: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 05:50:26,743 INFO L290 TraceCheckUtils]: 7: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {5956#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; {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L272 TraceCheckUtils]: 4: Hoare triple {5956#true} call #t~ret6 := main(); {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5956#true} {5956#true} #103#return; {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L290 TraceCheckUtils]: 2: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L290 TraceCheckUtils]: 1: Hoare triple {5956#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); {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L272 TraceCheckUtils]: 0: Hoare triple {5956#true} call ULTIMATE.init(); {5956#true} is VALID [2022-04-08 05:50:26,744 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 12 proven. 6 refuted. 0 times theorem prover too weak. 120 trivial. 0 not checked. [2022-04-08 05:50:26,745 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:50:26,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1071166000] [2022-04-08 05:50:26,745 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:50:26,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [388649013] [2022-04-08 05:50:26,745 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [388649013] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:50:26,745 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:50:26,745 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 16 [2022-04-08 05:50:26,745 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:50:26,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1513408824] [2022-04-08 05:50:26,745 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1513408824] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:50:26,746 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:50:26,746 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 05:50:26,746 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1527445023] [2022-04-08 05:50:26,746 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:50:26,746 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 80 [2022-04-08 05:50:26,747 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:50:26,747 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:50:26,789 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:26,789 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 05:50:26,790 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:26,790 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 05:50:26,790 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=198, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:50:26,790 INFO L87 Difference]: Start difference. First operand 118 states and 166 transitions. Second operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:50:27,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:27,888 INFO L93 Difference]: Finished difference Result 130 states and 176 transitions. [2022-04-08 05:50:27,888 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 05:50:27,888 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 80 [2022-04-08 05:50:27,888 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:50:27,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:50:27,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 91 transitions. [2022-04-08 05:50:27,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:50:27,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 91 transitions. [2022-04-08 05:50:27,892 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 91 transitions. [2022-04-08 05:50:27,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:27,981 INFO L225 Difference]: With dead ends: 130 [2022-04-08 05:50:27,981 INFO L226 Difference]: Without dead ends: 128 [2022-04-08 05:50:27,981 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 163 GetRequests, 144 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 53 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=68, Invalid=312, Unknown=0, NotChecked=0, Total=380 [2022-04-08 05:50:27,982 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 36 mSDsluCounter, 156 mSDsCounter, 0 mSdLazyCounter, 274 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 202 SdHoareTripleChecker+Invalid, 300 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 274 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 05:50:27,982 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 202 Invalid, 300 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 274 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 05:50:27,983 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-08 05:50:28,189 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 126. [2022-04-08 05:50:28,189 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:50:28,189 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:28,190 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:28,190 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:28,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:28,198 INFO L93 Difference]: Finished difference Result 128 states and 174 transitions. [2022-04-08 05:50:28,199 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 174 transitions. [2022-04-08 05:50:28,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:28,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:28,200 INFO L74 IsIncluded]: Start isIncluded. First operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 128 states. [2022-04-08 05:50:28,200 INFO L87 Difference]: Start difference. First operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 128 states. [2022-04-08 05:50:28,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:50:28,204 INFO L93 Difference]: Finished difference Result 128 states and 174 transitions. [2022-04-08 05:50:28,204 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 174 transitions. [2022-04-08 05:50:28,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:50:28,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:50:28,205 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:50:28,205 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:50:28,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:50:28,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 126 states to 126 states and 172 transitions. [2022-04-08 05:50:28,209 INFO L78 Accepts]: Start accepts. Automaton has 126 states and 172 transitions. Word has length 80 [2022-04-08 05:50:28,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:50:28,210 INFO L478 AbstractCegarLoop]: Abstraction has 126 states and 172 transitions. [2022-04-08 05:50:28,210 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 05:50:28,210 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 126 states and 172 transitions. [2022-04-08 05:50:28,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:50:28,458 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 172 transitions. [2022-04-08 05:50:28,459 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-08 05:50:28,459 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:50:28,459 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 6, 6, 6, 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:50:28,477 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:50:28,664 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:50:28,664 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:50:28,664 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:50:28,664 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 5 times [2022-04-08 05:50:28,664 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:50:28,665 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1777246691] [2022-04-08 05:50:28,665 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:50:28,665 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 6 times [2022-04-08 05:50:28,665 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:50:28,665 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2015512407] [2022-04-08 05:50:28,665 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:50:28,665 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:50:28,678 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:50:28,678 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [414548311] [2022-04-08 05:50:28,678 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:50:28,678 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:50:28,678 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:50:28,679 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:50:28,687 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:50:28,747 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:50:28,747 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:50:28,748 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-08 05:50:28,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:50:28,770 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:50:29,624 INFO L272 TraceCheckUtils]: 0: Hoare triple {7227#true} call ULTIMATE.init(); {7227#true} is VALID [2022-04-08 05:50:29,624 INFO L290 TraceCheckUtils]: 1: Hoare triple {7227#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); {7227#true} is VALID [2022-04-08 05:50:29,624 INFO L290 TraceCheckUtils]: 2: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7227#true} {7227#true} #103#return; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L272 TraceCheckUtils]: 4: Hoare triple {7227#true} call #t~ret6 := main(); {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L290 TraceCheckUtils]: 5: Hoare triple {7227#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; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L272 TraceCheckUtils]: 6: Hoare triple {7227#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L290 TraceCheckUtils]: 7: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L290 TraceCheckUtils]: 8: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L290 TraceCheckUtils]: 9: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7227#true} {7227#true} #79#return; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L290 TraceCheckUtils]: 11: Hoare triple {7227#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L272 TraceCheckUtils]: 12: Hoare triple {7227#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L290 TraceCheckUtils]: 13: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,625 INFO L290 TraceCheckUtils]: 14: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L290 TraceCheckUtils]: 15: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7227#true} {7227#true} #81#return; {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L272 TraceCheckUtils]: 17: Hoare triple {7227#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L290 TraceCheckUtils]: 18: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L290 TraceCheckUtils]: 19: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L290 TraceCheckUtils]: 20: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7227#true} {7227#true} #83#return; {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L272 TraceCheckUtils]: 22: Hoare triple {7227#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L290 TraceCheckUtils]: 23: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L290 TraceCheckUtils]: 24: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L290 TraceCheckUtils]: 25: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,626 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7227#true} {7227#true} #85#return; {7227#true} is VALID [2022-04-08 05:50:29,627 INFO L290 TraceCheckUtils]: 27: Hoare triple {7227#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; {7313#(and (= main_~r~0 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))} is VALID [2022-04-08 05:50:29,627 INFO L272 TraceCheckUtils]: 28: Hoare triple {7313#(and (= main_~r~0 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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7227#true} is VALID [2022-04-08 05:50:29,627 INFO L290 TraceCheckUtils]: 29: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,627 INFO L290 TraceCheckUtils]: 30: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,627 INFO L290 TraceCheckUtils]: 31: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,628 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7227#true} {7313#(and (= main_~r~0 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))} #87#return; {7313#(and (= main_~r~0 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))} is VALID [2022-04-08 05:50:29,628 INFO L272 TraceCheckUtils]: 33: Hoare triple {7313#(and (= main_~r~0 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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7227#true} is VALID [2022-04-08 05:50:29,628 INFO L290 TraceCheckUtils]: 34: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,628 INFO L290 TraceCheckUtils]: 35: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,628 INFO L290 TraceCheckUtils]: 36: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,629 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {7227#true} {7313#(and (= main_~r~0 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))} #89#return; {7313#(and (= main_~r~0 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))} is VALID [2022-04-08 05:50:29,630 INFO L290 TraceCheckUtils]: 38: Hoare triple {7313#(and (= main_~r~0 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))} assume !false; {7313#(and (= main_~r~0 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))} is VALID [2022-04-08 05:50:29,630 INFO L290 TraceCheckUtils]: 39: Hoare triple {7313#(and (= main_~r~0 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))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:50:29,631 INFO L290 TraceCheckUtils]: 40: Hoare triple {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !false; {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:50:29,631 INFO L272 TraceCheckUtils]: 41: Hoare triple {7350#(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_~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)); {7227#true} is VALID [2022-04-08 05:50:29,631 INFO L290 TraceCheckUtils]: 42: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,631 INFO L290 TraceCheckUtils]: 43: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,631 INFO L290 TraceCheckUtils]: 44: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,632 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {7227#true} {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #91#return; {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:50:29,632 INFO L272 TraceCheckUtils]: 46: Hoare triple {7350#(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_~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)); {7227#true} is VALID [2022-04-08 05:50:29,633 INFO L290 TraceCheckUtils]: 47: Hoare triple {7227#true} ~cond := #in~cond; {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:29,633 INFO L290 TraceCheckUtils]: 48: Hoare triple {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:29,633 INFO L290 TraceCheckUtils]: 49: Hoare triple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:29,634 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #93#return; {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:50:29,634 INFO L272 TraceCheckUtils]: 51: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~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)); {7227#true} is VALID [2022-04-08 05:50:29,634 INFO L290 TraceCheckUtils]: 52: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,634 INFO L290 TraceCheckUtils]: 53: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,635 INFO L290 TraceCheckUtils]: 54: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,636 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7227#true} {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #95#return; {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:50:29,636 INFO L272 TraceCheckUtils]: 56: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~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)); {7227#true} is VALID [2022-04-08 05:50:29,636 INFO L290 TraceCheckUtils]: 57: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,637 INFO L290 TraceCheckUtils]: 58: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,637 INFO L290 TraceCheckUtils]: 59: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,638 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7227#true} {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #97#return; {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:50:29,638 INFO L290 TraceCheckUtils]: 61: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:50:29,640 INFO L290 TraceCheckUtils]: 62: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~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; {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:50:29,641 INFO L290 TraceCheckUtils]: 63: Hoare triple {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:50:29,641 INFO L290 TraceCheckUtils]: 64: Hoare triple {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:50:29,642 INFO L290 TraceCheckUtils]: 65: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:50:29,642 INFO L272 TraceCheckUtils]: 66: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {7227#true} is VALID [2022-04-08 05:50:29,642 INFO L290 TraceCheckUtils]: 67: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,643 INFO L290 TraceCheckUtils]: 68: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,646 INFO L290 TraceCheckUtils]: 69: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,648 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {7227#true} {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:50:29,648 INFO L272 TraceCheckUtils]: 71: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {7227#true} is VALID [2022-04-08 05:50:29,649 INFO L290 TraceCheckUtils]: 72: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-08 05:50:29,649 INFO L290 TraceCheckUtils]: 73: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-08 05:50:29,649 INFO L290 TraceCheckUtils]: 74: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-08 05:50:29,649 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {7227#true} {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:50:29,650 INFO L272 TraceCheckUtils]: 76: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {7227#true} is VALID [2022-04-08 05:50:29,650 INFO L290 TraceCheckUtils]: 77: Hoare triple {7227#true} ~cond := #in~cond; {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:29,650 INFO L290 TraceCheckUtils]: 78: Hoare triple {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:29,650 INFO L290 TraceCheckUtils]: 79: Hoare triple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:50:29,651 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:50:29,654 INFO L272 TraceCheckUtils]: 81: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {7482#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:50:29,655 INFO L290 TraceCheckUtils]: 82: Hoare triple {7482#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7486#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:50:29,655 INFO L290 TraceCheckUtils]: 83: Hoare triple {7486#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7228#false} is VALID [2022-04-08 05:50:29,655 INFO L290 TraceCheckUtils]: 84: Hoare triple {7228#false} assume !false; {7228#false} is VALID [2022-04-08 05:50:29,657 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 30 proven. 21 refuted. 0 times theorem prover too weak. 114 trivial. 0 not checked. [2022-04-08 05:50:29,657 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:51:11,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:51:11,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2015512407] [2022-04-08 05:51:11,442 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:51:11,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [414548311] [2022-04-08 05:51:11,442 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [414548311] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:51:11,442 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:51:11,442 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-08 05:51:11,443 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:51:11,443 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1777246691] [2022-04-08 05:51:11,443 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1777246691] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:51:11,443 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:51:11,443 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 05:51:11,443 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [147899700] [2022-04-08 05:51:11,443 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:51:11,443 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 85 [2022-04-08 05:51:11,444 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:51:11,444 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:51:11,496 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:11,496 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 05:51:11,496 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:11,496 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 05:51:11,496 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-08 05:51:11,497 INFO L87 Difference]: Start difference. First operand 126 states and 172 transitions. Second operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:51:12,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:12,825 INFO L93 Difference]: Finished difference Result 134 states and 179 transitions. [2022-04-08 05:51:12,825 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 05:51:12,825 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 85 [2022-04-08 05:51:12,825 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:51:12,825 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:51:12,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 91 transitions. [2022-04-08 05:51:12,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:51:12,829 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 91 transitions. [2022-04-08 05:51:12,829 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 91 transitions. [2022-04-08 05:51:12,930 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:12,933 INFO L225 Difference]: With dead ends: 134 [2022-04-08 05:51:12,933 INFO L226 Difference]: Without dead ends: 132 [2022-04-08 05:51:12,934 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 77 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=47, Invalid=193, Unknown=0, NotChecked=0, Total=240 [2022-04-08 05:51:12,934 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 24 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 312 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 329 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 312 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:51:12,934 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 199 Invalid, 329 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 312 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:51:12,935 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-08 05:51:13,120 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 130. [2022-04-08 05:51:13,121 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:51:13,121 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:51:13,121 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:51:13,122 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:51:13,126 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:13,126 INFO L93 Difference]: Finished difference Result 132 states and 177 transitions. [2022-04-08 05:51:13,126 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 177 transitions. [2022-04-08 05:51:13,127 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:13,127 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:13,127 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 132 states. [2022-04-08 05:51:13,127 INFO L87 Difference]: Start difference. First operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 132 states. [2022-04-08 05:51:13,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:13,131 INFO L93 Difference]: Finished difference Result 132 states and 177 transitions. [2022-04-08 05:51:13,131 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 177 transitions. [2022-04-08 05:51:13,132 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:13,132 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:13,132 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:51:13,132 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:51:13,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:51:13,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 175 transitions. [2022-04-08 05:51:13,137 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 175 transitions. Word has length 85 [2022-04-08 05:51:13,137 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:51:13,137 INFO L478 AbstractCegarLoop]: Abstraction has 130 states and 175 transitions. [2022-04-08 05:51:13,137 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 05:51:13,137 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 175 transitions. [2022-04-08 05:51:13,383 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:51:13,383 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 175 transitions. [2022-04-08 05:51:13,384 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 05:51:13,384 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:51:13,384 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 6, 6, 6, 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, 1, 1, 1] [2022-04-08 05:51:13,400 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-04-08 05:51:13,587 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:51:13,587 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:51:13,588 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:51:13,588 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 1 times [2022-04-08 05:51:13,588 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:13,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1999478989] [2022-04-08 05:51:13,588 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:51:13,588 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 2 times [2022-04-08 05:51:13,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:51:13,589 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1242000972] [2022-04-08 05:51:13,589 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:51:13,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:51:13,606 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:51:13,607 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2122556226] [2022-04-08 05:51:13,607 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:51:13,614 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:51:13,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:51:13,615 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:51:13,616 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:51:13,678 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:51:13,678 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:51:13,679 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-08 05:51:13,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:51:13,696 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:51:14,292 INFO L272 TraceCheckUtils]: 0: Hoare triple {8307#true} call ULTIMATE.init(); {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L290 TraceCheckUtils]: 1: Hoare triple {8307#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); {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L290 TraceCheckUtils]: 2: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8307#true} {8307#true} #103#return; {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L272 TraceCheckUtils]: 4: Hoare triple {8307#true} call #t~ret6 := main(); {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L290 TraceCheckUtils]: 5: Hoare triple {8307#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; {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L272 TraceCheckUtils]: 6: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L290 TraceCheckUtils]: 7: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L290 TraceCheckUtils]: 8: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L290 TraceCheckUtils]: 9: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8307#true} {8307#true} #79#return; {8307#true} is VALID [2022-04-08 05:51:14,293 INFO L290 TraceCheckUtils]: 11: Hoare triple {8307#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L272 TraceCheckUtils]: 12: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L290 TraceCheckUtils]: 13: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L290 TraceCheckUtils]: 14: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L290 TraceCheckUtils]: 15: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8307#true} {8307#true} #81#return; {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L272 TraceCheckUtils]: 17: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L290 TraceCheckUtils]: 18: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L290 TraceCheckUtils]: 19: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L290 TraceCheckUtils]: 20: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8307#true} {8307#true} #83#return; {8307#true} is VALID [2022-04-08 05:51:14,294 INFO L272 TraceCheckUtils]: 22: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:14,295 INFO L290 TraceCheckUtils]: 23: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,295 INFO L290 TraceCheckUtils]: 24: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,295 INFO L290 TraceCheckUtils]: 25: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,295 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8307#true} {8307#true} #85#return; {8307#true} is VALID [2022-04-08 05:51:14,295 INFO L290 TraceCheckUtils]: 27: Hoare triple {8307#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; {8393#(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:51:14,295 INFO L272 TraceCheckUtils]: 28: Hoare triple {8393#(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)); {8307#true} is VALID [2022-04-08 05:51:14,296 INFO L290 TraceCheckUtils]: 29: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,296 INFO L290 TraceCheckUtils]: 30: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,296 INFO L290 TraceCheckUtils]: 31: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,296 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8307#true} {8393#(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))} #87#return; {8393#(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:51:14,297 INFO L272 TraceCheckUtils]: 33: Hoare triple {8393#(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)); {8307#true} is VALID [2022-04-08 05:51:14,297 INFO L290 TraceCheckUtils]: 34: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,297 INFO L290 TraceCheckUtils]: 35: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,297 INFO L290 TraceCheckUtils]: 36: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,298 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8307#true} {8393#(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))} #89#return; {8393#(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:51:14,298 INFO L290 TraceCheckUtils]: 38: Hoare triple {8393#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {8393#(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:51:14,299 INFO L290 TraceCheckUtils]: 39: Hoare triple {8393#(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; {8430#(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:51:14,299 INFO L290 TraceCheckUtils]: 40: Hoare triple {8430#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {8430#(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:51:14,299 INFO L272 TraceCheckUtils]: 41: Hoare triple {8430#(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)); {8307#true} is VALID [2022-04-08 05:51:14,299 INFO L290 TraceCheckUtils]: 42: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,299 INFO L290 TraceCheckUtils]: 43: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,299 INFO L290 TraceCheckUtils]: 44: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,300 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8307#true} {8430#(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))} #91#return; {8430#(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:51:14,300 INFO L272 TraceCheckUtils]: 46: Hoare triple {8430#(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)); {8307#true} is VALID [2022-04-08 05:51:14,300 INFO L290 TraceCheckUtils]: 47: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,300 INFO L290 TraceCheckUtils]: 48: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,301 INFO L290 TraceCheckUtils]: 49: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,301 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8307#true} {8430#(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))} #93#return; {8430#(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:51:14,301 INFO L272 TraceCheckUtils]: 51: Hoare triple {8430#(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)); {8307#true} is VALID [2022-04-08 05:51:14,302 INFO L290 TraceCheckUtils]: 52: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,302 INFO L290 TraceCheckUtils]: 53: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,302 INFO L290 TraceCheckUtils]: 54: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,303 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8307#true} {8430#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {8430#(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:51:14,303 INFO L272 TraceCheckUtils]: 56: Hoare triple {8430#(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)); {8307#true} is VALID [2022-04-08 05:51:14,303 INFO L290 TraceCheckUtils]: 57: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,303 INFO L290 TraceCheckUtils]: 58: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,303 INFO L290 TraceCheckUtils]: 59: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,304 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8307#true} {8430#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {8430#(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:51:14,304 INFO L290 TraceCheckUtils]: 61: Hoare triple {8430#(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; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:14,305 INFO L290 TraceCheckUtils]: 62: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:14,305 INFO L272 TraceCheckUtils]: 63: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~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)); {8307#true} is VALID [2022-04-08 05:51:14,305 INFO L290 TraceCheckUtils]: 64: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,305 INFO L290 TraceCheckUtils]: 65: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,305 INFO L290 TraceCheckUtils]: 66: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,306 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #91#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:14,306 INFO L272 TraceCheckUtils]: 68: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 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)); {8307#true} is VALID [2022-04-08 05:51:14,306 INFO L290 TraceCheckUtils]: 69: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,306 INFO L290 TraceCheckUtils]: 70: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,306 INFO L290 TraceCheckUtils]: 71: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,307 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #93#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:14,307 INFO L272 TraceCheckUtils]: 73: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 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)); {8307#true} is VALID [2022-04-08 05:51:14,307 INFO L290 TraceCheckUtils]: 74: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,308 INFO L290 TraceCheckUtils]: 75: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,308 INFO L290 TraceCheckUtils]: 76: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,309 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:14,309 INFO L272 TraceCheckUtils]: 78: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 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)); {8307#true} is VALID [2022-04-08 05:51:14,309 INFO L290 TraceCheckUtils]: 79: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:14,309 INFO L290 TraceCheckUtils]: 80: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:14,309 INFO L290 TraceCheckUtils]: 81: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:14,310 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:14,311 INFO L290 TraceCheckUtils]: 83: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:14,311 INFO L290 TraceCheckUtils]: 84: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8567#(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:51:14,312 INFO L290 TraceCheckUtils]: 85: Hoare triple {8567#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !false; {8567#(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:51:14,312 INFO L290 TraceCheckUtils]: 86: Hoare triple {8567#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {8574#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 05:51:14,313 INFO L272 TraceCheckUtils]: 87: Hoare triple {8574#(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)); {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:51:14,314 INFO L290 TraceCheckUtils]: 88: Hoare triple {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8582#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:14,314 INFO L290 TraceCheckUtils]: 89: Hoare triple {8582#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8308#false} is VALID [2022-04-08 05:51:14,314 INFO L290 TraceCheckUtils]: 90: Hoare triple {8308#false} assume !false; {8308#false} is VALID [2022-04-08 05:51:14,314 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-08 05:51:14,315 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:51:14,873 INFO L290 TraceCheckUtils]: 90: Hoare triple {8308#false} assume !false; {8308#false} is VALID [2022-04-08 05:51:14,873 INFO L290 TraceCheckUtils]: 89: Hoare triple {8582#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8308#false} is VALID [2022-04-08 05:51:14,874 INFO L290 TraceCheckUtils]: 88: Hoare triple {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8582#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:14,874 INFO L272 TraceCheckUtils]: 87: Hoare triple {8598#(= (+ (* 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)); {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:51:14,875 INFO L290 TraceCheckUtils]: 86: Hoare triple {8602#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {8598#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-08 05:51:14,875 INFO L290 TraceCheckUtils]: 85: Hoare triple {8602#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {8602#(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:15,740 INFO L290 TraceCheckUtils]: 84: Hoare triple {8609#(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; {8602#(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:15,741 INFO L290 TraceCheckUtils]: 83: Hoare triple {8609#(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))))} assume !(~c~0 >= ~b~0); {8609#(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:15,742 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8307#true} {8609#(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))))} #97#return; {8609#(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:15,742 INFO L290 TraceCheckUtils]: 81: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:15,742 INFO L290 TraceCheckUtils]: 80: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:15,742 INFO L290 TraceCheckUtils]: 79: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:15,742 INFO L272 TraceCheckUtils]: 78: Hoare triple {8609#(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))))} 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)); {8307#true} is VALID [2022-04-08 05:51:15,743 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8307#true} {8609#(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))))} #95#return; {8609#(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:15,743 INFO L290 TraceCheckUtils]: 76: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:15,743 INFO L290 TraceCheckUtils]: 75: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:15,743 INFO L290 TraceCheckUtils]: 74: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:15,743 INFO L272 TraceCheckUtils]: 73: Hoare triple {8609#(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))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:15,744 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8307#true} {8609#(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))))} #93#return; {8609#(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:15,744 INFO L290 TraceCheckUtils]: 71: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:15,744 INFO L290 TraceCheckUtils]: 70: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:15,744 INFO L290 TraceCheckUtils]: 69: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:15,744 INFO L272 TraceCheckUtils]: 68: Hoare triple {8609#(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))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:15,745 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8307#true} {8609#(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))))} #91#return; {8609#(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:15,745 INFO L290 TraceCheckUtils]: 66: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:15,745 INFO L290 TraceCheckUtils]: 65: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:15,745 INFO L290 TraceCheckUtils]: 64: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:15,745 INFO L272 TraceCheckUtils]: 63: Hoare triple {8609#(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))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:15,745 INFO L290 TraceCheckUtils]: 62: Hoare triple {8609#(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))))} assume !false; {8609#(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:16,139 INFO L290 TraceCheckUtils]: 61: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {8609#(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:16,140 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #97#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,141 INFO L290 TraceCheckUtils]: 59: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,141 INFO L290 TraceCheckUtils]: 58: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,141 INFO L290 TraceCheckUtils]: 57: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,141 INFO L272 TraceCheckUtils]: 56: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~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)); {8307#true} is VALID [2022-04-08 05:51:16,142 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #95#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,142 INFO L290 TraceCheckUtils]: 54: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,142 INFO L290 TraceCheckUtils]: 53: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,142 INFO L290 TraceCheckUtils]: 52: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,142 INFO L272 TraceCheckUtils]: 51: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,143 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #93#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,143 INFO L290 TraceCheckUtils]: 49: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,143 INFO L290 TraceCheckUtils]: 48: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,143 INFO L290 TraceCheckUtils]: 47: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,143 INFO L272 TraceCheckUtils]: 46: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,144 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #91#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,144 INFO L290 TraceCheckUtils]: 44: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,144 INFO L290 TraceCheckUtils]: 43: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,144 INFO L290 TraceCheckUtils]: 42: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,144 INFO L272 TraceCheckUtils]: 41: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,145 INFO L290 TraceCheckUtils]: 40: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !false; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,145 INFO L290 TraceCheckUtils]: 39: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,146 INFO L290 TraceCheckUtils]: 38: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !false; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,147 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8307#true} {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #89#return; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,147 INFO L290 TraceCheckUtils]: 36: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,147 INFO L290 TraceCheckUtils]: 35: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,147 INFO L290 TraceCheckUtils]: 34: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,147 INFO L272 TraceCheckUtils]: 33: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,148 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8307#true} {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #87#return; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,148 INFO L290 TraceCheckUtils]: 31: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,148 INFO L290 TraceCheckUtils]: 30: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,148 INFO L290 TraceCheckUtils]: 29: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,148 INFO L272 TraceCheckUtils]: 28: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L290 TraceCheckUtils]: 27: Hoare triple {8307#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; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-08 05:51:16,149 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8307#true} {8307#true} #85#return; {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L290 TraceCheckUtils]: 25: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L290 TraceCheckUtils]: 24: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L290 TraceCheckUtils]: 23: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L272 TraceCheckUtils]: 22: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8307#true} {8307#true} #83#return; {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L290 TraceCheckUtils]: 20: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,149 INFO L290 TraceCheckUtils]: 19: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L290 TraceCheckUtils]: 18: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L272 TraceCheckUtils]: 17: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8307#true} {8307#true} #81#return; {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L290 TraceCheckUtils]: 15: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L290 TraceCheckUtils]: 14: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L290 TraceCheckUtils]: 13: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L272 TraceCheckUtils]: 12: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L290 TraceCheckUtils]: 11: Hoare triple {8307#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8307#true} {8307#true} #79#return; {8307#true} is VALID [2022-04-08 05:51:16,150 INFO L290 TraceCheckUtils]: 9: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L290 TraceCheckUtils]: 8: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L290 TraceCheckUtils]: 7: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L272 TraceCheckUtils]: 6: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L290 TraceCheckUtils]: 5: Hoare triple {8307#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; {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L272 TraceCheckUtils]: 4: Hoare triple {8307#true} call #t~ret6 := main(); {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8307#true} {8307#true} #103#return; {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L290 TraceCheckUtils]: 2: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L290 TraceCheckUtils]: 1: Hoare triple {8307#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); {8307#true} is VALID [2022-04-08 05:51:16,151 INFO L272 TraceCheckUtils]: 0: Hoare triple {8307#true} call ULTIMATE.init(); {8307#true} is VALID [2022-04-08 05:51:16,152 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-08 05:51:16,152 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:51:16,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1242000972] [2022-04-08 05:51:16,152 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:51:16,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2122556226] [2022-04-08 05:51:16,152 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2122556226] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:51:16,152 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:51:16,153 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 05:51:16,153 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:51:16,153 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1999478989] [2022-04-08 05:51:16,153 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1999478989] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:51:16,153 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:51:16,153 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 05:51:16,153 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1608424092] [2022-04-08 05:51:16,153 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:51:16,153 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 91 [2022-04-08 05:51:16,154 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:51:16,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 05:51:16,201 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:16,201 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 05:51:16,201 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:16,202 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 05:51:16,202 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:51:16,202 INFO L87 Difference]: Start difference. First operand 130 states and 175 transitions. Second operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 05:51:17,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:17,535 INFO L93 Difference]: Finished difference Result 157 states and 211 transitions. [2022-04-08 05:51:17,535 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:51:17,535 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 91 [2022-04-08 05:51:17,535 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:51:17,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 05:51:17,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-04-08 05:51:17,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 05:51:17,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-04-08 05:51:17,539 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 105 transitions. [2022-04-08 05:51:17,651 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:17,654 INFO L225 Difference]: With dead ends: 157 [2022-04-08 05:51:17,654 INFO L226 Difference]: Without dead ends: 154 [2022-04-08 05:51:17,655 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 185 GetRequests, 168 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=63, Invalid=243, Unknown=0, NotChecked=0, Total=306 [2022-04-08 05:51:17,655 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 19 mSDsluCounter, 218 mSDsCounter, 0 mSdLazyCounter, 323 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 275 SdHoareTripleChecker+Invalid, 342 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 323 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:51:17,656 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 275 Invalid, 342 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 323 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:51:17,656 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2022-04-08 05:51:17,863 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 153. [2022-04-08 05:51:17,863 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:51:17,863 INFO L82 GeneralOperation]: Start isEquivalent. First operand 154 states. Second operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:17,864 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:17,864 INFO L87 Difference]: Start difference. First operand 154 states. Second operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:17,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:17,868 INFO L93 Difference]: Finished difference Result 154 states and 207 transitions. [2022-04-08 05:51:17,868 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 207 transitions. [2022-04-08 05:51:17,869 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:17,869 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:17,869 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 154 states. [2022-04-08 05:51:17,869 INFO L87 Difference]: Start difference. First operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 154 states. [2022-04-08 05:51:17,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:17,874 INFO L93 Difference]: Finished difference Result 154 states and 207 transitions. [2022-04-08 05:51:17,874 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 207 transitions. [2022-04-08 05:51:17,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:17,875 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:17,875 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:51:17,875 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:51:17,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:17,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 206 transitions. [2022-04-08 05:51:17,880 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 206 transitions. Word has length 91 [2022-04-08 05:51:17,880 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:51:17,880 INFO L478 AbstractCegarLoop]: Abstraction has 153 states and 206 transitions. [2022-04-08 05:51:17,880 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 05:51:17,880 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 153 states and 206 transitions. [2022-04-08 05:51:18,176 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:18,176 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 206 transitions. [2022-04-08 05:51:18,177 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-08 05:51:18,177 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:51:18,177 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 6, 6, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:51:18,203 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:51:18,399 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:51:18,400 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:51:18,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:51:18,400 INFO L85 PathProgramCache]: Analyzing trace with hash -663071842, now seen corresponding path program 7 times [2022-04-08 05:51:18,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:18,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1504893934] [2022-04-08 05:51:18,401 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:51:18,401 INFO L85 PathProgramCache]: Analyzing trace with hash -663071842, now seen corresponding path program 8 times [2022-04-08 05:51:18,401 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:51:18,401 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1872144299] [2022-04-08 05:51:18,401 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:51:18,401 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:51:18,426 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:51:18,426 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1758650951] [2022-04-08 05:51:18,426 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:51:18,427 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:51:18,427 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:51:18,428 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:51:18,432 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:51:18,484 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:51:18,484 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:51:18,485 INFO L263 TraceCheckSpWp]: Trace formula consists of 262 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 05:51:18,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:51:18,499 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:51:18,707 INFO L272 TraceCheckUtils]: 0: Hoare triple {9802#true} call ULTIMATE.init(); {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L290 TraceCheckUtils]: 1: Hoare triple {9802#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); {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L290 TraceCheckUtils]: 2: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9802#true} {9802#true} #103#return; {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L272 TraceCheckUtils]: 4: Hoare triple {9802#true} call #t~ret6 := main(); {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L290 TraceCheckUtils]: 5: Hoare triple {9802#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; {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L272 TraceCheckUtils]: 6: Hoare triple {9802#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L290 TraceCheckUtils]: 7: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L290 TraceCheckUtils]: 8: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,707 INFO L290 TraceCheckUtils]: 9: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9802#true} {9802#true} #79#return; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 11: Hoare triple {9802#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L272 TraceCheckUtils]: 12: Hoare triple {9802#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 13: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 14: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 15: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9802#true} {9802#true} #81#return; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L272 TraceCheckUtils]: 17: Hoare triple {9802#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 18: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 19: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 20: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9802#true} {9802#true} #83#return; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L272 TraceCheckUtils]: 22: Hoare triple {9802#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 23: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 24: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 25: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9802#true} {9802#true} #85#return; {9802#true} is VALID [2022-04-08 05:51:18,708 INFO L290 TraceCheckUtils]: 27: Hoare triple {9802#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; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L272 TraceCheckUtils]: 28: Hoare triple {9802#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 29: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 30: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 31: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {9802#true} {9802#true} #87#return; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L272 TraceCheckUtils]: 33: Hoare triple {9802#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 34: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 35: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 36: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {9802#true} {9802#true} #89#return; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 38: Hoare triple {9802#true} assume !false; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 39: Hoare triple {9802#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 40: Hoare triple {9802#true} assume !false; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L272 TraceCheckUtils]: 41: Hoare triple {9802#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 42: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 43: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,709 INFO L290 TraceCheckUtils]: 44: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {9802#true} {9802#true} #91#return; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L272 TraceCheckUtils]: 46: Hoare triple {9802#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 47: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 48: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 49: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {9802#true} {9802#true} #93#return; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L272 TraceCheckUtils]: 51: Hoare triple {9802#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 52: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 53: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 54: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9802#true} {9802#true} #95#return; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L272 TraceCheckUtils]: 56: Hoare triple {9802#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)); {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 57: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 58: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L290 TraceCheckUtils]: 59: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,710 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9802#true} {9802#true} #97#return; {9802#true} is VALID [2022-04-08 05:51:18,711 INFO L290 TraceCheckUtils]: 61: Hoare triple {9802#true} assume !(~c~0 >= ~b~0); {9990#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:51:18,712 INFO L290 TraceCheckUtils]: 62: Hoare triple {9990#(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; {9994#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:51:18,712 INFO L290 TraceCheckUtils]: 63: Hoare triple {9994#(< main_~b~0 main_~a~0)} assume !false; {9994#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:51:18,712 INFO L290 TraceCheckUtils]: 64: Hoare triple {9994#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:51:18,713 INFO L290 TraceCheckUtils]: 65: Hoare triple {10001#(< main_~b~0 main_~c~0)} assume !false; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:51:18,713 INFO L272 TraceCheckUtils]: 66: Hoare triple {10001#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,713 INFO L290 TraceCheckUtils]: 67: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,713 INFO L290 TraceCheckUtils]: 68: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,713 INFO L290 TraceCheckUtils]: 69: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,714 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #91#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:51:18,714 INFO L272 TraceCheckUtils]: 71: Hoare triple {10001#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,714 INFO L290 TraceCheckUtils]: 72: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,714 INFO L290 TraceCheckUtils]: 73: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,714 INFO L290 TraceCheckUtils]: 74: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,715 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #93#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:51:18,715 INFO L272 TraceCheckUtils]: 76: Hoare triple {10001#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9802#true} is VALID [2022-04-08 05:51:18,715 INFO L290 TraceCheckUtils]: 77: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,715 INFO L290 TraceCheckUtils]: 78: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,715 INFO L290 TraceCheckUtils]: 79: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,716 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #95#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:51:18,716 INFO L272 TraceCheckUtils]: 81: Hoare triple {10001#(< 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)); {9802#true} is VALID [2022-04-08 05:51:18,716 INFO L290 TraceCheckUtils]: 82: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-08 05:51:18,716 INFO L290 TraceCheckUtils]: 83: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-08 05:51:18,716 INFO L290 TraceCheckUtils]: 84: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-08 05:51:18,717 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #97#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:51:18,717 INFO L290 TraceCheckUtils]: 86: Hoare triple {10001#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {9803#false} is VALID [2022-04-08 05:51:18,717 INFO L290 TraceCheckUtils]: 87: Hoare triple {9803#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; {9803#false} is VALID [2022-04-08 05:51:18,717 INFO L290 TraceCheckUtils]: 88: Hoare triple {9803#false} assume !false; {9803#false} is VALID [2022-04-08 05:51:18,717 INFO L290 TraceCheckUtils]: 89: Hoare triple {9803#false} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9803#false} is VALID [2022-04-08 05:51:18,717 INFO L290 TraceCheckUtils]: 90: Hoare triple {9803#false} assume !false; {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L272 TraceCheckUtils]: 91: Hoare triple {9803#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L290 TraceCheckUtils]: 92: Hoare triple {9803#false} ~cond := #in~cond; {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L290 TraceCheckUtils]: 93: Hoare triple {9803#false} assume !(0 == ~cond); {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L290 TraceCheckUtils]: 94: Hoare triple {9803#false} assume true; {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {9803#false} {9803#false} #91#return; {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L272 TraceCheckUtils]: 96: Hoare triple {9803#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L290 TraceCheckUtils]: 97: Hoare triple {9803#false} ~cond := #in~cond; {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L290 TraceCheckUtils]: 98: Hoare triple {9803#false} assume 0 == ~cond; {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L290 TraceCheckUtils]: 99: Hoare triple {9803#false} assume !false; {9803#false} is VALID [2022-04-08 05:51:18,718 INFO L134 CoverageAnalysis]: Checked inductivity of 241 backedges. 67 proven. 0 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2022-04-08 05:51:18,718 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:51:18,719 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:51:18,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1872144299] [2022-04-08 05:51:18,719 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:51:18,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1758650951] [2022-04-08 05:51:18,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1758650951] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:51:18,719 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:51:18,719 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:51:18,719 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:51:18,720 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1504893934] [2022-04-08 05:51:18,720 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1504893934] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:51:18,720 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:51:18,720 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:51:18,720 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [911262939] [2022-04-08 05:51:18,720 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:51:18,720 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, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) Word has length 100 [2022-04-08 05:51:18,721 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:51:18,721 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, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-08 05:51:18,774 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:18,774 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:51:18,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:18,775 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:51:18,775 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:51:18,775 INFO L87 Difference]: Start difference. First operand 153 states and 206 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, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-08 05:51:19,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:19,236 INFO L93 Difference]: Finished difference Result 201 states and 280 transitions. [2022-04-08 05:51:19,237 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:51:19,237 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, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) Word has length 100 [2022-04-08 05:51:19,237 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:51:19,237 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, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-08 05:51:19,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-04-08 05:51:19,239 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, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-08 05:51:19,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-04-08 05:51:19,240 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 94 transitions. [2022-04-08 05:51:19,315 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:19,317 INFO L225 Difference]: With dead ends: 201 [2022-04-08 05:51:19,317 INFO L226 Difference]: Without dead ends: 156 [2022-04-08 05:51:19,318 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 96 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:51:19,319 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 6 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:51:19,319 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 163 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:51:19,319 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-08 05:51:19,559 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 147. [2022-04-08 05:51:19,559 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:51:19,559 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:19,560 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:19,560 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:19,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:19,565 INFO L93 Difference]: Finished difference Result 156 states and 209 transitions. [2022-04-08 05:51:19,565 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 209 transitions. [2022-04-08 05:51:19,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:19,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:19,566 INFO L74 IsIncluded]: Start isIncluded. First operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 156 states. [2022-04-08 05:51:19,566 INFO L87 Difference]: Start difference. First operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 156 states. [2022-04-08 05:51:19,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:51:19,587 INFO L93 Difference]: Finished difference Result 156 states and 209 transitions. [2022-04-08 05:51:19,587 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 209 transitions. [2022-04-08 05:51:19,587 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:51:19,587 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:51:19,587 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:51:19,588 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:51:19,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 05:51:19,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 147 states to 147 states and 195 transitions. [2022-04-08 05:51:19,594 INFO L78 Accepts]: Start accepts. Automaton has 147 states and 195 transitions. Word has length 100 [2022-04-08 05:51:19,594 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:51:19,594 INFO L478 AbstractCegarLoop]: Abstraction has 147 states and 195 transitions. [2022-04-08 05:51:19,594 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, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-08 05:51:19,594 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 147 states and 195 transitions. [2022-04-08 05:51:19,979 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:51:19,979 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 195 transitions. [2022-04-08 05:51:19,980 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-08 05:51:19,980 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:51:19,980 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 6, 6, 6, 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, 1, 1, 1] [2022-04-08 05:51:19,996 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:51:20,180 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:51:20,181 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:51:20,181 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:51:20,181 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 1 times [2022-04-08 05:51:20,181 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:51:20,181 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1976120986] [2022-04-08 05:51:20,181 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:51:20,181 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 2 times [2022-04-08 05:51:20,182 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:51:20,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [475372631] [2022-04-08 05:51:20,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:51:20,182 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:51:20,194 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:51:20,194 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [368228669] [2022-04-08 05:51:20,195 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:51:20,195 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:51:20,195 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:51:20,196 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:51:20,219 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:51:20,268 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:51:20,268 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:51:20,269 INFO L263 TraceCheckSpWp]: Trace formula consists of 264 conjuncts, 66 conjunts are in the unsatisfiable core [2022-04-08 05:51:20,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:51:20,291 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:51:22,036 INFO L272 TraceCheckUtils]: 0: Hoare triple {11118#true} call ULTIMATE.init(); {11118#true} is VALID [2022-04-08 05:51:22,036 INFO L290 TraceCheckUtils]: 1: Hoare triple {11118#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); {11118#true} is VALID [2022-04-08 05:51:22,036 INFO L290 TraceCheckUtils]: 2: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,036 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11118#true} {11118#true} #103#return; {11118#true} is VALID [2022-04-08 05:51:22,036 INFO L272 TraceCheckUtils]: 4: Hoare triple {11118#true} call #t~ret6 := main(); {11118#true} is VALID [2022-04-08 05:51:22,036 INFO L290 TraceCheckUtils]: 5: Hoare triple {11118#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; {11118#true} is VALID [2022-04-08 05:51:22,036 INFO L272 TraceCheckUtils]: 6: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L290 TraceCheckUtils]: 7: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L290 TraceCheckUtils]: 8: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11118#true} {11118#true} #79#return; {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L290 TraceCheckUtils]: 11: Hoare triple {11118#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L272 TraceCheckUtils]: 12: Hoare triple {11118#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L290 TraceCheckUtils]: 13: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L290 TraceCheckUtils]: 14: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L290 TraceCheckUtils]: 15: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11118#true} {11118#true} #81#return; {11118#true} is VALID [2022-04-08 05:51:22,037 INFO L272 TraceCheckUtils]: 17: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:51:22,038 INFO L290 TraceCheckUtils]: 18: Hoare triple {11118#true} ~cond := #in~cond; {11177#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:51:22,038 INFO L290 TraceCheckUtils]: 19: Hoare triple {11177#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11181#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:51:22,038 INFO L290 TraceCheckUtils]: 20: Hoare triple {11181#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11181#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:51:22,039 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11181#(not (= |assume_abort_if_not_#in~cond| 0))} {11118#true} #83#return; {11188#(<= 1 main_~x~0)} is VALID [2022-04-08 05:51:22,039 INFO L272 TraceCheckUtils]: 22: Hoare triple {11188#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:51:22,039 INFO L290 TraceCheckUtils]: 23: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,039 INFO L290 TraceCheckUtils]: 24: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,040 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11118#true} {11188#(<= 1 main_~x~0)} #85#return; {11188#(<= 1 main_~x~0)} is VALID [2022-04-08 05:51:22,040 INFO L290 TraceCheckUtils]: 27: Hoare triple {11188#(<= 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; {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,040 INFO L272 TraceCheckUtils]: 28: Hoare triple {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:51:22,041 INFO L290 TraceCheckUtils]: 29: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,041 INFO L290 TraceCheckUtils]: 30: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,041 INFO L290 TraceCheckUtils]: 31: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,041 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11118#true} {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,042 INFO L272 TraceCheckUtils]: 33: Hoare triple {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:51:22,042 INFO L290 TraceCheckUtils]: 34: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,042 INFO L290 TraceCheckUtils]: 35: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,042 INFO L290 TraceCheckUtils]: 36: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,043 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {11118#true} {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,043 INFO L290 TraceCheckUtils]: 38: Hoare triple {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,044 INFO L290 TraceCheckUtils]: 39: Hoare triple {11207#(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_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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:51:22,044 INFO L290 TraceCheckUtils]: 40: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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 !false; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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:51:22,044 INFO L272 TraceCheckUtils]: 41: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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)); {11118#true} is VALID [2022-04-08 05:51:22,045 INFO L290 TraceCheckUtils]: 42: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,045 INFO L290 TraceCheckUtils]: 43: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,045 INFO L290 TraceCheckUtils]: 44: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,046 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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))} #91#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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:51:22,046 INFO L272 TraceCheckUtils]: 46: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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)); {11118#true} is VALID [2022-04-08 05:51:22,046 INFO L290 TraceCheckUtils]: 47: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,046 INFO L290 TraceCheckUtils]: 48: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,046 INFO L290 TraceCheckUtils]: 49: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,047 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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))} #93#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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:51:22,047 INFO L272 TraceCheckUtils]: 51: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:51:22,047 INFO L290 TraceCheckUtils]: 52: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,047 INFO L290 TraceCheckUtils]: 53: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,047 INFO L290 TraceCheckUtils]: 54: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,048 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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))} #95#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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:51:22,048 INFO L272 TraceCheckUtils]: 56: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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 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)); {11118#true} is VALID [2022-04-08 05:51:22,048 INFO L290 TraceCheckUtils]: 57: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,048 INFO L290 TraceCheckUtils]: 58: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,048 INFO L290 TraceCheckUtils]: 59: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,049 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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))} #97#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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:51:22,051 INFO L290 TraceCheckUtils]: 61: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~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 !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {11311#(and (= main_~r~0 0) (<= 1 main_~x~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) (= 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:51:22,051 INFO L290 TraceCheckUtils]: 62: Hoare triple {11311#(and (= main_~r~0 0) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {11311#(and (= main_~r~0 0) (<= 1 main_~x~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) (= 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:51:22,052 INFO L272 TraceCheckUtils]: 63: Hoare triple {11311#(and (= main_~r~0 0) (<= 1 main_~x~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) (= 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)); {11118#true} is VALID [2022-04-08 05:51:22,052 INFO L290 TraceCheckUtils]: 64: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:22,052 INFO L290 TraceCheckUtils]: 65: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,053 INFO L290 TraceCheckUtils]: 66: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,055 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11311#(and (= main_~r~0 0) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,055 INFO L272 TraceCheckUtils]: 68: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~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)); {11118#true} is VALID [2022-04-08 05:51:22,055 INFO L290 TraceCheckUtils]: 69: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,055 INFO L290 TraceCheckUtils]: 70: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,055 INFO L290 TraceCheckUtils]: 71: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,056 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {11118#true} {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #93#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,056 INFO L272 TraceCheckUtils]: 73: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~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)); {11118#true} is VALID [2022-04-08 05:51:22,056 INFO L290 TraceCheckUtils]: 74: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:22,057 INFO L290 TraceCheckUtils]: 75: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,057 INFO L290 TraceCheckUtils]: 76: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,058 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #95#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,058 INFO L272 TraceCheckUtils]: 78: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~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)); {11118#true} is VALID [2022-04-08 05:51:22,059 INFO L290 TraceCheckUtils]: 79: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:22,059 INFO L290 TraceCheckUtils]: 80: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,059 INFO L290 TraceCheckUtils]: 81: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,060 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #97#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,061 INFO L290 TraceCheckUtils]: 83: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~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) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {11381#(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))) (= main_~p~0 1))} is VALID [2022-04-08 05:51:22,062 INFO L290 TraceCheckUtils]: 84: Hoare triple {11381#(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))) (= 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; {11385#(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_~q~0 1) (= (+ 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:51:22,063 INFO L290 TraceCheckUtils]: 85: Hoare triple {11385#(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_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !false; {11385#(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_~q~0 1) (= (+ 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:51:22,063 INFO L290 TraceCheckUtils]: 86: Hoare triple {11385#(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_~q~0 1) (= (+ 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; {11385#(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_~q~0 1) (= (+ 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:51:22,064 INFO L290 TraceCheckUtils]: 87: Hoare triple {11385#(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_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !false; {11385#(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_~q~0 1) (= (+ 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:51:22,064 INFO L272 TraceCheckUtils]: 88: Hoare triple {11385#(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_~q~0 1) (= (+ 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)); {11118#true} is VALID [2022-04-08 05:51:22,064 INFO L290 TraceCheckUtils]: 89: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,064 INFO L290 TraceCheckUtils]: 90: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,064 INFO L290 TraceCheckUtils]: 91: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,065 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {11118#true} {11385#(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_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #91#return; {11385#(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_~q~0 1) (= (+ 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:51:22,066 INFO L272 TraceCheckUtils]: 93: Hoare triple {11385#(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_~q~0 1) (= (+ 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)); {11118#true} is VALID [2022-04-08 05:51:22,066 INFO L290 TraceCheckUtils]: 94: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:51:22,066 INFO L290 TraceCheckUtils]: 95: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:51:22,066 INFO L290 TraceCheckUtils]: 96: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:51:22,067 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {11118#true} {11385#(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_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #93#return; {11385#(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_~q~0 1) (= (+ 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:51:22,067 INFO L272 TraceCheckUtils]: 98: Hoare triple {11385#(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_~q~0 1) (= (+ 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)); {11118#true} is VALID [2022-04-08 05:51:22,067 INFO L290 TraceCheckUtils]: 99: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:22,068 INFO L290 TraceCheckUtils]: 100: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,068 INFO L290 TraceCheckUtils]: 101: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:51:22,069 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11385#(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_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #95#return; {11385#(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_~q~0 1) (= (+ 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:51:22,072 INFO L272 TraceCheckUtils]: 103: Hoare triple {11385#(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_~q~0 1) (= (+ 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)); {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:51:22,072 INFO L290 TraceCheckUtils]: 104: Hoare triple {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:51:22,072 INFO L290 TraceCheckUtils]: 105: Hoare triple {11447#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11119#false} is VALID [2022-04-08 05:51:22,073 INFO L290 TraceCheckUtils]: 106: Hoare triple {11119#false} assume !false; {11119#false} is VALID [2022-04-08 05:51:22,073 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 87 proven. 52 refuted. 0 times theorem prover too weak. 181 trivial. 0 not checked. [2022-04-08 05:51:22,073 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:53:56,119 INFO L290 TraceCheckUtils]: 106: Hoare triple {11119#false} assume !false; {11119#false} is VALID [2022-04-08 05:53:56,119 INFO L290 TraceCheckUtils]: 105: Hoare triple {11447#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11119#false} is VALID [2022-04-08 05:53:56,120 INFO L290 TraceCheckUtils]: 104: Hoare triple {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:53:56,120 INFO L272 TraceCheckUtils]: 103: Hoare triple {11463#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:53:56,121 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {11463#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} is VALID [2022-04-08 05:53:56,121 INFO L290 TraceCheckUtils]: 101: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:56,122 INFO L290 TraceCheckUtils]: 100: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:56,122 INFO L290 TraceCheckUtils]: 99: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:53:56,122 INFO L272 TraceCheckUtils]: 98: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {11118#true} is VALID [2022-04-08 05:53:56,123 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {11118#true} {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #93#return; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:53:56,123 INFO L290 TraceCheckUtils]: 96: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:56,123 INFO L290 TraceCheckUtils]: 95: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:56,123 INFO L290 TraceCheckUtils]: 94: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:56,123 INFO L272 TraceCheckUtils]: 93: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {11118#true} is VALID [2022-04-08 05:53:56,124 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {11118#true} {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #91#return; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:53:56,124 INFO L290 TraceCheckUtils]: 91: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:56,124 INFO L290 TraceCheckUtils]: 90: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:56,124 INFO L290 TraceCheckUtils]: 89: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:56,124 INFO L272 TraceCheckUtils]: 88: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:56,124 INFO L290 TraceCheckUtils]: 87: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:53:56,125 INFO L290 TraceCheckUtils]: 86: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= 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; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:53:56,125 INFO L290 TraceCheckUtils]: 85: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 05:53:58,126 WARN L290 TraceCheckUtils]: 84: Hoare triple {11523#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* (+ (* (* 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; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is UNKNOWN [2022-04-08 05:53:58,127 INFO L290 TraceCheckUtils]: 83: Hoare triple {11527#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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); {11523#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* (+ (* (* 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:53:58,129 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11531#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #97#return; {11527#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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:53:58,129 INFO L290 TraceCheckUtils]: 81: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:58,129 INFO L290 TraceCheckUtils]: 80: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:58,130 INFO L290 TraceCheckUtils]: 79: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:53:58,130 INFO L272 TraceCheckUtils]: 78: Hoare triple {11531#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)); {11118#true} is VALID [2022-04-08 05:53:58,132 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #95#return; {11531#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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:53:58,132 INFO L290 TraceCheckUtils]: 76: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:58,132 INFO L290 TraceCheckUtils]: 75: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:58,133 INFO L290 TraceCheckUtils]: 74: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:53:58,133 INFO L272 TraceCheckUtils]: 73: Hoare triple {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,134 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {11118#true} {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #93#return; {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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:53:58,134 INFO L290 TraceCheckUtils]: 71: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,134 INFO L290 TraceCheckUtils]: 70: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,134 INFO L290 TraceCheckUtils]: 69: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,134 INFO L272 TraceCheckUtils]: 68: Hoare triple {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,136 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {11582#(not (= |__VERIFIER_assert_#in~cond| 0))} {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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:53:58,136 INFO L290 TraceCheckUtils]: 66: Hoare triple {11582#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:58,137 INFO L290 TraceCheckUtils]: 65: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:53:58,137 INFO L290 TraceCheckUtils]: 64: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:53:58,137 INFO L272 TraceCheckUtils]: 63: Hoare triple {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,138 INFO L290 TraceCheckUtils]: 62: Hoare triple {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:53:58,306 INFO L290 TraceCheckUtils]: 61: Hoare triple {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:53:58,307 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11118#true} {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #97#return; {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:53:58,307 INFO L290 TraceCheckUtils]: 59: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,307 INFO L290 TraceCheckUtils]: 58: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,307 INFO L290 TraceCheckUtils]: 57: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,307 INFO L272 TraceCheckUtils]: 56: Hoare triple {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= 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)); {11118#true} is VALID [2022-04-08 05:53:58,308 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11118#true} {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #95#return; {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:53:58,308 INFO L290 TraceCheckUtils]: 54: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,308 INFO L290 TraceCheckUtils]: 53: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,308 INFO L290 TraceCheckUtils]: 52: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,308 INFO L272 TraceCheckUtils]: 51: Hoare triple {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,309 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {11118#true} {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #93#return; {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:53:58,309 INFO L290 TraceCheckUtils]: 49: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,309 INFO L290 TraceCheckUtils]: 48: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,309 INFO L290 TraceCheckUtils]: 47: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,309 INFO L272 TraceCheckUtils]: 46: Hoare triple {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,310 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11118#true} {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #91#return; {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:53:58,310 INFO L290 TraceCheckUtils]: 44: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,310 INFO L290 TraceCheckUtils]: 43: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,310 INFO L290 TraceCheckUtils]: 42: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,310 INFO L272 TraceCheckUtils]: 41: Hoare triple {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,311 INFO L290 TraceCheckUtils]: 40: Hoare triple {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} assume !false; {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:53:58,312 INFO L290 TraceCheckUtils]: 39: Hoare triple {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11598#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:53:58,313 INFO L290 TraceCheckUtils]: 38: Hoare triple {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-08 05:53:58,313 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {11118#true} {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} #89#return; {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-08 05:53:58,314 INFO L290 TraceCheckUtils]: 36: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,314 INFO L290 TraceCheckUtils]: 35: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,314 INFO L290 TraceCheckUtils]: 34: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,314 INFO L272 TraceCheckUtils]: 33: Hoare triple {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,314 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11118#true} {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} #87#return; {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-08 05:53:58,315 INFO L290 TraceCheckUtils]: 31: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,315 INFO L290 TraceCheckUtils]: 30: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,315 INFO L290 TraceCheckUtils]: 29: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,315 INFO L272 TraceCheckUtils]: 28: Hoare triple {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L290 TraceCheckUtils]: 27: Hoare triple {11118#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; {11665#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-08 05:53:58,316 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11118#true} {11118#true} #85#return; {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L290 TraceCheckUtils]: 25: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L290 TraceCheckUtils]: 24: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L290 TraceCheckUtils]: 23: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L272 TraceCheckUtils]: 22: Hoare triple {11118#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11118#true} {11118#true} #83#return; {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L290 TraceCheckUtils]: 20: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L290 TraceCheckUtils]: 19: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L290 TraceCheckUtils]: 18: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,316 INFO L272 TraceCheckUtils]: 17: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11118#true} {11118#true} #81#return; {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L290 TraceCheckUtils]: 14: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L272 TraceCheckUtils]: 12: Hoare triple {11118#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L290 TraceCheckUtils]: 11: Hoare triple {11118#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11118#true} {11118#true} #79#return; {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L290 TraceCheckUtils]: 9: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L290 TraceCheckUtils]: 8: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L290 TraceCheckUtils]: 7: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-08 05:53:58,317 INFO L272 TraceCheckUtils]: 6: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-08 05:53:58,318 INFO L290 TraceCheckUtils]: 5: Hoare triple {11118#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; {11118#true} is VALID [2022-04-08 05:53:58,318 INFO L272 TraceCheckUtils]: 4: Hoare triple {11118#true} call #t~ret6 := main(); {11118#true} is VALID [2022-04-08 05:53:58,318 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11118#true} {11118#true} #103#return; {11118#true} is VALID [2022-04-08 05:53:58,318 INFO L290 TraceCheckUtils]: 2: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-08 05:53:58,318 INFO L290 TraceCheckUtils]: 1: Hoare triple {11118#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); {11118#true} is VALID [2022-04-08 05:53:58,318 INFO L272 TraceCheckUtils]: 0: Hoare triple {11118#true} call ULTIMATE.init(); {11118#true} is VALID [2022-04-08 05:53:58,319 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 87 proven. 43 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-04-08 05:53:58,319 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:53:58,319 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [475372631] [2022-04-08 05:53:58,319 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:53:58,319 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [368228669] [2022-04-08 05:53:58,319 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [368228669] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:53:58,319 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:53:58,319 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 16] total 26 [2022-04-08 05:53:58,320 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:53:58,320 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1976120986] [2022-04-08 05:53:58,320 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1976120986] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:53:58,320 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:53:58,320 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 05:53:58,320 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [671554946] [2022-04-08 05:53:58,320 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:53:58,321 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) Word has length 107 [2022-04-08 05:53:58,321 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:53:58,321 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-08 05:53:58,391 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:53:58,392 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 05:53:58,392 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:53:58,392 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 05:53:58,392 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=130, Invalid=518, Unknown=2, NotChecked=0, Total=650 [2022-04-08 05:53:58,392 INFO L87 Difference]: Start difference. First operand 147 states and 195 transitions. Second operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-08 05:54:01,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:54:01,913 INFO L93 Difference]: Finished difference Result 154 states and 201 transitions. [2022-04-08 05:54:01,913 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 05:54:01,913 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) Word has length 107 [2022-04-08 05:54:01,913 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:54:01,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-08 05:54:01,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 103 transitions. [2022-04-08 05:54:01,916 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-08 05:54:01,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 103 transitions. [2022-04-08 05:54:01,917 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 103 transitions. [2022-04-08 05:54:02,040 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:54:02,042 INFO L225 Difference]: With dead ends: 154 [2022-04-08 05:54:02,042 INFO L226 Difference]: Without dead ends: 152 [2022-04-08 05:54:02,042 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 217 GetRequests, 187 SyntacticMatches, 2 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 202 ImplicationChecksByTransitivity, 10.4s TimeCoverageRelationStatistics Valid=165, Invalid=703, Unknown=2, NotChecked=0, Total=870 [2022-04-08 05:54:02,043 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 38 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 605 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 197 SdHoareTripleChecker+Invalid, 641 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 605 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:54:02,043 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 197 Invalid, 641 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 605 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-04-08 05:54:02,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-04-08 05:54:02,266 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 128. [2022-04-08 05:54:02,267 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:54:02,267 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:54:02,267 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:54:02,267 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:54:02,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:54:02,271 INFO L93 Difference]: Finished difference Result 152 states and 199 transitions. [2022-04-08 05:54:02,271 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 199 transitions. [2022-04-08 05:54:02,272 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:54:02,272 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:54:02,272 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 152 states. [2022-04-08 05:54:02,273 INFO L87 Difference]: Start difference. First operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 152 states. [2022-04-08 05:54:02,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:54:02,277 INFO L93 Difference]: Finished difference Result 152 states and 199 transitions. [2022-04-08 05:54:02,277 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 199 transitions. [2022-04-08 05:54:02,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:54:02,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:54:02,278 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:54:02,278 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:54:02,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-08 05:54:02,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 168 transitions. [2022-04-08 05:54:02,289 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 168 transitions. Word has length 107 [2022-04-08 05:54:02,289 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:54:02,289 INFO L478 AbstractCegarLoop]: Abstraction has 128 states and 168 transitions. [2022-04-08 05:54:02,289 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-08 05:54:02,289 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 128 states and 168 transitions. [2022-04-08 05:54:02,683 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 168 edges. 168 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:54:02,683 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 168 transitions. [2022-04-08 05:54:02,684 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-08 05:54:02,684 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:54:02,684 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 6, 6, 6, 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, 1, 1, 1, 1] [2022-04-08 05:54:02,703 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-08 05:54:02,884 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:54:02,885 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:54:02,885 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:54:02,885 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 3 times [2022-04-08 05:54:02,885 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:54:02,885 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [149579027] [2022-04-08 05:54:02,885 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:54:02,885 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 4 times [2022-04-08 05:54:02,886 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:54:02,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1947441962] [2022-04-08 05:54:02,886 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:54:02,886 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:54:02,899 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:54:02,899 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1466016886] [2022-04-08 05:54:02,899 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:54:02,899 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:54:02,899 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:54:02,900 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:54:02,901 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:54:02,955 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:54:02,955 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:54:02,956 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 49 conjunts are in the unsatisfiable core [2022-04-08 05:54:02,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:54:02,973 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:54:04,109 INFO L272 TraceCheckUtils]: 0: Hoare triple {12661#true} call ULTIMATE.init(); {12661#true} is VALID [2022-04-08 05:54:04,109 INFO L290 TraceCheckUtils]: 1: Hoare triple {12661#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); {12661#true} is VALID [2022-04-08 05:54:04,109 INFO L290 TraceCheckUtils]: 2: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,109 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12661#true} {12661#true} #103#return; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L272 TraceCheckUtils]: 4: Hoare triple {12661#true} call #t~ret6 := main(); {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 5: Hoare triple {12661#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; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L272 TraceCheckUtils]: 6: Hoare triple {12661#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 7: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 8: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 9: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12661#true} {12661#true} #79#return; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 11: Hoare triple {12661#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L272 TraceCheckUtils]: 12: Hoare triple {12661#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 13: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 14: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 15: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {12661#true} {12661#true} #81#return; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L272 TraceCheckUtils]: 17: Hoare triple {12661#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 18: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 19: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L290 TraceCheckUtils]: 20: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,110 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12661#true} {12661#true} #83#return; {12661#true} is VALID [2022-04-08 05:54:04,111 INFO L272 TraceCheckUtils]: 22: Hoare triple {12661#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:54:04,111 INFO L290 TraceCheckUtils]: 23: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,111 INFO L290 TraceCheckUtils]: 24: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,111 INFO L290 TraceCheckUtils]: 25: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,111 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12661#true} {12661#true} #85#return; {12661#true} is VALID [2022-04-08 05:54:04,112 INFO L290 TraceCheckUtils]: 27: Hoare triple {12661#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; {12747#(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:54:04,112 INFO L272 TraceCheckUtils]: 28: Hoare triple {12747#(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)); {12661#true} is VALID [2022-04-08 05:54:04,112 INFO L290 TraceCheckUtils]: 29: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,112 INFO L290 TraceCheckUtils]: 30: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,112 INFO L290 TraceCheckUtils]: 31: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,112 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12661#true} {12747#(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))} #87#return; {12747#(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:54:04,113 INFO L272 TraceCheckUtils]: 33: Hoare triple {12747#(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)); {12661#true} is VALID [2022-04-08 05:54:04,113 INFO L290 TraceCheckUtils]: 34: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,113 INFO L290 TraceCheckUtils]: 35: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,113 INFO L290 TraceCheckUtils]: 36: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,113 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {12661#true} {12747#(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))} #89#return; {12747#(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:54:04,114 INFO L290 TraceCheckUtils]: 38: Hoare triple {12747#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12747#(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:54:04,114 INFO L290 TraceCheckUtils]: 39: Hoare triple {12747#(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; {12784#(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:54:04,114 INFO L290 TraceCheckUtils]: 40: Hoare triple {12784#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12784#(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:54:04,114 INFO L272 TraceCheckUtils]: 41: Hoare triple {12784#(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)); {12661#true} is VALID [2022-04-08 05:54:04,115 INFO L290 TraceCheckUtils]: 42: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,115 INFO L290 TraceCheckUtils]: 43: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,115 INFO L290 TraceCheckUtils]: 44: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,115 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12661#true} {12784#(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))} #91#return; {12784#(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:54:04,115 INFO L272 TraceCheckUtils]: 46: Hoare triple {12784#(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)); {12661#true} is VALID [2022-04-08 05:54:04,115 INFO L290 TraceCheckUtils]: 47: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,115 INFO L290 TraceCheckUtils]: 48: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,116 INFO L290 TraceCheckUtils]: 49: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,116 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12661#true} {12784#(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))} #93#return; {12784#(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:54:04,116 INFO L272 TraceCheckUtils]: 51: Hoare triple {12784#(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)); {12661#true} is VALID [2022-04-08 05:54:04,116 INFO L290 TraceCheckUtils]: 52: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,116 INFO L290 TraceCheckUtils]: 53: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,116 INFO L290 TraceCheckUtils]: 54: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,117 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12661#true} {12784#(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))} #95#return; {12784#(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:54:04,117 INFO L272 TraceCheckUtils]: 56: Hoare triple {12784#(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)); {12661#true} is VALID [2022-04-08 05:54:04,117 INFO L290 TraceCheckUtils]: 57: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,117 INFO L290 TraceCheckUtils]: 58: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,117 INFO L290 TraceCheckUtils]: 59: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,118 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12661#true} {12784#(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))} #97#return; {12784#(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:54:04,119 INFO L290 TraceCheckUtils]: 61: Hoare triple {12784#(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; {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,119 INFO L290 TraceCheckUtils]: 62: Hoare triple {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,119 INFO L272 TraceCheckUtils]: 63: Hoare triple {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= 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)); {12661#true} is VALID [2022-04-08 05:54:04,119 INFO L290 TraceCheckUtils]: 64: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,120 INFO L290 TraceCheckUtils]: 65: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,120 INFO L290 TraceCheckUtils]: 66: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,120 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {12661#true} {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,120 INFO L272 TraceCheckUtils]: 68: Hoare triple {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:54:04,123 INFO L290 TraceCheckUtils]: 69: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,123 INFO L290 TraceCheckUtils]: 70: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,123 INFO L290 TraceCheckUtils]: 71: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,128 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12661#true} {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,128 INFO L272 TraceCheckUtils]: 73: Hoare triple {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= 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)); {12661#true} is VALID [2022-04-08 05:54:04,128 INFO L290 TraceCheckUtils]: 74: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,128 INFO L290 TraceCheckUtils]: 75: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,128 INFO L290 TraceCheckUtils]: 76: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,129 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12661#true} {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,129 INFO L272 TraceCheckUtils]: 78: Hoare triple {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= 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)); {12661#true} is VALID [2022-04-08 05:54:04,129 INFO L290 TraceCheckUtils]: 79: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,129 INFO L290 TraceCheckUtils]: 80: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,129 INFO L290 TraceCheckUtils]: 81: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,131 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {12661#true} {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,132 INFO L290 TraceCheckUtils]: 83: Hoare triple {12851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= 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; {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,132 INFO L290 TraceCheckUtils]: 84: Hoare triple {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,132 INFO L272 TraceCheckUtils]: 85: Hoare triple {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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)); {12661#true} is VALID [2022-04-08 05:54:04,133 INFO L290 TraceCheckUtils]: 86: Hoare triple {12661#true} ~cond := #in~cond; {12928#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:04,133 INFO L290 TraceCheckUtils]: 87: Hoare triple {12928#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:04,134 INFO L290 TraceCheckUtils]: 88: Hoare triple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:04,135 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,135 INFO L272 TraceCheckUtils]: 90: Hoare triple {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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)); {12661#true} is VALID [2022-04-08 05:54:04,135 INFO L290 TraceCheckUtils]: 91: Hoare triple {12661#true} ~cond := #in~cond; {12928#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:04,135 INFO L290 TraceCheckUtils]: 92: Hoare triple {12928#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:04,136 INFO L290 TraceCheckUtils]: 93: Hoare triple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:54:04,137 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} {12918#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,137 INFO L272 TraceCheckUtils]: 95: Hoare triple {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:54:04,138 INFO L290 TraceCheckUtils]: 96: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,138 INFO L290 TraceCheckUtils]: 97: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,138 INFO L290 TraceCheckUtils]: 98: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,139 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {12661#true} {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #95#return; {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,139 INFO L272 TraceCheckUtils]: 100: Hoare triple {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~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)); {12661#true} is VALID [2022-04-08 05:54:04,139 INFO L290 TraceCheckUtils]: 101: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:54:04,139 INFO L290 TraceCheckUtils]: 102: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:54:04,139 INFO L290 TraceCheckUtils]: 103: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:54:04,140 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12661#true} {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #97#return; {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,141 INFO L290 TraceCheckUtils]: 105: Hoare triple {12954#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {12988#(and (= main_~r~0 0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 2))) (<= 0 main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:54:04,142 INFO L290 TraceCheckUtils]: 106: Hoare triple {12988#(and (= main_~r~0 0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 2))) (<= 0 main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12992#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} is VALID [2022-04-08 05:54:04,143 INFO L290 TraceCheckUtils]: 107: Hoare triple {12992#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} assume !false; {12992#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} is VALID [2022-04-08 05:54:04,143 INFO L290 TraceCheckUtils]: 108: Hoare triple {12992#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} assume !(0 != ~b~0); {12999#(and (= (+ main_~s~0 2) 0) (< (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 05:54:04,144 INFO L272 TraceCheckUtils]: 109: Hoare triple {12999#(and (= (+ main_~s~0 2) 0) (< (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1) (= (+ (* 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)); {13003#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:54:04,144 INFO L290 TraceCheckUtils]: 110: Hoare triple {13003#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13007#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:54:04,145 INFO L290 TraceCheckUtils]: 111: Hoare triple {13007#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12662#false} is VALID [2022-04-08 05:54:04,145 INFO L290 TraceCheckUtils]: 112: Hoare triple {12662#false} assume !false; {12662#false} is VALID [2022-04-08 05:54:04,145 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 70 proven. 34 refuted. 0 times theorem prover too weak. 264 trivial. 0 not checked. [2022-04-08 05:54:04,146 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:55:29,850 INFO L290 TraceCheckUtils]: 112: Hoare triple {12662#false} assume !false; {12662#false} is VALID [2022-04-08 05:55:29,850 INFO L290 TraceCheckUtils]: 111: Hoare triple {13007#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12662#false} is VALID [2022-04-08 05:55:29,851 INFO L290 TraceCheckUtils]: 110: Hoare triple {13003#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13007#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:29,851 INFO L272 TraceCheckUtils]: 109: Hoare triple {13023#(= (+ (* 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)); {13003#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:55:29,852 INFO L290 TraceCheckUtils]: 108: Hoare triple {13027#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {13023#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-08 05:55:29,852 INFO L290 TraceCheckUtils]: 107: Hoare triple {13027#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {13027#(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:55:31,854 WARN L290 TraceCheckUtils]: 106: Hoare triple {13034#(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; {13027#(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:55:31,854 INFO L290 TraceCheckUtils]: 105: Hoare triple {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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); {13034#(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:55:31,855 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12661#true} {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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))} #97#return; {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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:55:31,855 INFO L290 TraceCheckUtils]: 103: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:31,855 INFO L290 TraceCheckUtils]: 102: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:31,855 INFO L290 TraceCheckUtils]: 101: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:31,855 INFO L272 TraceCheckUtils]: 100: Hoare triple {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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)); {12661#true} is VALID [2022-04-08 05:55:31,856 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {12661#true} {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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))} #95#return; {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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:55:31,856 INFO L290 TraceCheckUtils]: 98: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:31,856 INFO L290 TraceCheckUtils]: 97: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:31,856 INFO L290 TraceCheckUtils]: 96: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:31,856 INFO L272 TraceCheckUtils]: 95: Hoare triple {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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)); {12661#true} is VALID [2022-04-08 05:55:31,859 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} {13072#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~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))} #93#return; {13038#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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:55:31,859 INFO L290 TraceCheckUtils]: 93: Hoare triple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:31,860 INFO L290 TraceCheckUtils]: 92: Hoare triple {13082#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:31,860 INFO L290 TraceCheckUtils]: 91: Hoare triple {12661#true} ~cond := #in~cond; {13082#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:55:31,860 INFO L272 TraceCheckUtils]: 90: Hoare triple {13072#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~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)); {12661#true} is VALID [2022-04-08 05:55:31,861 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} {13089#(or (not (= main_~c~0 0)) (not (= main_~a~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)))) (= (+ (* (+ (* (* 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))} #91#return; {13072#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~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:55:31,861 INFO L290 TraceCheckUtils]: 88: Hoare triple {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:31,861 INFO L290 TraceCheckUtils]: 87: Hoare triple {13082#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12932#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:31,862 INFO L290 TraceCheckUtils]: 86: Hoare triple {12661#true} ~cond := #in~cond; {13082#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:55:31,862 INFO L272 TraceCheckUtils]: 85: Hoare triple {13089#(or (not (= main_~c~0 0)) (not (= main_~a~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)))) (= (+ (* (+ (* (* 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)); {12661#true} is VALID [2022-04-08 05:55:31,862 INFO L290 TraceCheckUtils]: 84: Hoare triple {13089#(or (not (= main_~c~0 0)) (not (= main_~a~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)))) (= (+ (* (+ (* (* 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 !false; {13089#(or (not (= main_~c~0 0)) (not (= main_~a~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)))) (= (+ (* (+ (* (* 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:55:32,045 INFO L290 TraceCheckUtils]: 83: Hoare triple {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {13089#(or (not (= main_~c~0 0)) (not (= main_~a~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)))) (= (+ (* (+ (* (* 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:55:32,046 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {12661#true} {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #97#return; {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:55:32,046 INFO L290 TraceCheckUtils]: 81: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,047 INFO L290 TraceCheckUtils]: 80: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,047 INFO L290 TraceCheckUtils]: 79: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,047 INFO L272 TraceCheckUtils]: 78: Hoare triple {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~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)); {12661#true} is VALID [2022-04-08 05:55:32,047 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12661#true} {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #95#return; {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:55:32,047 INFO L290 TraceCheckUtils]: 76: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,047 INFO L290 TraceCheckUtils]: 75: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,048 INFO L290 TraceCheckUtils]: 74: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,048 INFO L272 TraceCheckUtils]: 73: Hoare triple {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~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)); {12661#true} is VALID [2022-04-08 05:55:32,048 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12661#true} {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #93#return; {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:55:32,048 INFO L290 TraceCheckUtils]: 71: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,048 INFO L290 TraceCheckUtils]: 70: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,048 INFO L290 TraceCheckUtils]: 69: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,048 INFO L272 TraceCheckUtils]: 68: Hoare triple {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~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)); {12661#true} is VALID [2022-04-08 05:55:32,049 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {12661#true} {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #91#return; {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:55:32,049 INFO L290 TraceCheckUtils]: 66: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,049 INFO L290 TraceCheckUtils]: 65: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,049 INFO L290 TraceCheckUtils]: 64: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,049 INFO L272 TraceCheckUtils]: 63: Hoare triple {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:55:32,050 INFO L290 TraceCheckUtils]: 62: Hoare triple {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} assume !false; {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:55:32,276 INFO L290 TraceCheckUtils]: 61: Hoare triple {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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; {13108#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:55:32,277 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12661#true} {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,277 INFO L290 TraceCheckUtils]: 59: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,277 INFO L290 TraceCheckUtils]: 58: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,277 INFO L290 TraceCheckUtils]: 57: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,277 INFO L272 TraceCheckUtils]: 56: Hoare triple {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {12661#true} is VALID [2022-04-08 05:55:32,278 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12661#true} {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,278 INFO L290 TraceCheckUtils]: 54: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,278 INFO L290 TraceCheckUtils]: 53: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,278 INFO L290 TraceCheckUtils]: 52: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,278 INFO L272 TraceCheckUtils]: 51: Hoare triple {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {12661#true} is VALID [2022-04-08 05:55:32,279 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12661#true} {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,279 INFO L290 TraceCheckUtils]: 49: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,279 INFO L290 TraceCheckUtils]: 48: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,279 INFO L290 TraceCheckUtils]: 47: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,279 INFO L272 TraceCheckUtils]: 46: Hoare triple {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {12661#true} is VALID [2022-04-08 05:55:32,280 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12661#true} {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,280 INFO L290 TraceCheckUtils]: 44: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,280 INFO L290 TraceCheckUtils]: 43: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,280 INFO L290 TraceCheckUtils]: 42: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,280 INFO L272 TraceCheckUtils]: 41: Hoare triple {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {12661#true} is VALID [2022-04-08 05:55:32,281 INFO L290 TraceCheckUtils]: 40: Hoare triple {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,281 INFO L290 TraceCheckUtils]: 39: Hoare triple {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13175#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,282 INFO L290 TraceCheckUtils]: 38: Hoare triple {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,283 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {12661#true} {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #89#return; {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,283 INFO L290 TraceCheckUtils]: 36: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,283 INFO L290 TraceCheckUtils]: 35: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,283 INFO L290 TraceCheckUtils]: 34: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,283 INFO L272 TraceCheckUtils]: 33: Hoare triple {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* 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)); {12661#true} is VALID [2022-04-08 05:55:32,283 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12661#true} {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #87#return; {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,283 INFO L290 TraceCheckUtils]: 31: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L272 TraceCheckUtils]: 28: Hoare triple {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* 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)); {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L290 TraceCheckUtils]: 27: Hoare triple {12661#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; {13242#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:32,284 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12661#true} {12661#true} #85#return; {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L290 TraceCheckUtils]: 25: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L290 TraceCheckUtils]: 24: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L290 TraceCheckUtils]: 23: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L272 TraceCheckUtils]: 22: Hoare triple {12661#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:55:32,284 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12661#true} {12661#true} #83#return; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 20: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 19: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 18: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L272 TraceCheckUtils]: 17: Hoare triple {12661#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {12661#true} {12661#true} #81#return; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 15: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 14: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 13: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L272 TraceCheckUtils]: 12: Hoare triple {12661#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 11: Hoare triple {12661#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12661#true} {12661#true} #79#return; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 9: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 8: Hoare triple {12661#true} assume !(0 == ~cond); {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 7: Hoare triple {12661#true} ~cond := #in~cond; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L272 TraceCheckUtils]: 6: Hoare triple {12661#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 5: Hoare triple {12661#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; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L272 TraceCheckUtils]: 4: Hoare triple {12661#true} call #t~ret6 := main(); {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12661#true} {12661#true} #103#return; {12661#true} is VALID [2022-04-08 05:55:32,285 INFO L290 TraceCheckUtils]: 2: Hoare triple {12661#true} assume true; {12661#true} is VALID [2022-04-08 05:55:32,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {12661#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); {12661#true} is VALID [2022-04-08 05:55:32,286 INFO L272 TraceCheckUtils]: 0: Hoare triple {12661#true} call ULTIMATE.init(); {12661#true} is VALID [2022-04-08 05:55:32,286 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 70 proven. 34 refuted. 0 times theorem prover too weak. 264 trivial. 0 not checked. [2022-04-08 05:55:32,286 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:55:32,286 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1947441962] [2022-04-08 05:55:32,286 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:55:32,286 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1466016886] [2022-04-08 05:55:32,286 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1466016886] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:55:32,287 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:55:32,287 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 15] total 24 [2022-04-08 05:55:32,287 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:55:32,287 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [149579027] [2022-04-08 05:55:32,287 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [149579027] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:55:32,287 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:55:32,287 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 05:55:32,287 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [842579956] [2022-04-08 05:55:32,287 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:55:32,288 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 113 [2022-04-08 05:55:32,288 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:55:32,288 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-08 05:55:32,351 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:55:32,351 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 05:55:32,351 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:55:32,351 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 05:55:32,352 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=110, Invalid=442, Unknown=0, NotChecked=0, Total=552 [2022-04-08 05:55:32,352 INFO L87 Difference]: Start difference. First operand 128 states and 168 transitions. Second operand has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-08 05:55:36,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:36,134 INFO L93 Difference]: Finished difference Result 162 states and 215 transitions. [2022-04-08 05:55:36,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 05:55:36,134 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 113 [2022-04-08 05:55:36,134 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:55:36,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-08 05:55:36,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 117 transitions. [2022-04-08 05:55:36,136 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-08 05:55:36,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 117 transitions. [2022-04-08 05:55:36,137 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 117 transitions. [2022-04-08 05:55:36,264 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:55:36,268 INFO L225 Difference]: With dead ends: 162 [2022-04-08 05:55:36,268 INFO L226 Difference]: Without dead ends: 159 [2022-04-08 05:55:36,268 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 229 GetRequests, 201 SyntacticMatches, 2 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 146 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=149, Invalid=607, Unknown=0, NotChecked=0, Total=756 [2022-04-08 05:55:36,269 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 28 mSDsluCounter, 276 mSDsCounter, 0 mSdLazyCounter, 723 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 327 SdHoareTripleChecker+Invalid, 750 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 723 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:55:36,269 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 327 Invalid, 750 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 723 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-08 05:55:36,269 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2022-04-08 05:55:36,553 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 157. [2022-04-08 05:55:36,553 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:55:36,554 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-08 05:55:36,554 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-08 05:55:36,554 INFO L87 Difference]: Start difference. First operand 159 states. Second operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-08 05:55:36,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:36,559 INFO L93 Difference]: Finished difference Result 159 states and 211 transitions. [2022-04-08 05:55:36,559 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 211 transitions. [2022-04-08 05:55:36,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:55:36,560 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:55:36,560 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 159 states. [2022-04-08 05:55:36,560 INFO L87 Difference]: Start difference. First operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 159 states. [2022-04-08 05:55:36,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:36,564 INFO L93 Difference]: Finished difference Result 159 states and 211 transitions. [2022-04-08 05:55:36,565 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 211 transitions. [2022-04-08 05:55:36,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:55:36,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:55:36,565 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:55:36,565 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:55:36,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-08 05:55:36,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 209 transitions. [2022-04-08 05:55:36,571 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 209 transitions. Word has length 113 [2022-04-08 05:55:36,571 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:55:36,571 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 209 transitions. [2022-04-08 05:55:36,571 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-08 05:55:36,571 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 209 transitions. [2022-04-08 05:55:37,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 209 edges. 209 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:55:37,059 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 209 transitions. [2022-04-08 05:55:37,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-08 05:55:37,060 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:55:37,060 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 6, 6, 6, 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, 1, 1, 1] [2022-04-08 05:55:37,080 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:55:37,275 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:55:37,275 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:55:37,276 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:55:37,276 INFO L85 PathProgramCache]: Analyzing trace with hash 884638574, now seen corresponding path program 5 times [2022-04-08 05:55:37,276 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:55:37,276 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1324309999] [2022-04-08 05:55:37,276 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:55:37,276 INFO L85 PathProgramCache]: Analyzing trace with hash 884638574, now seen corresponding path program 6 times [2022-04-08 05:55:37,277 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:55:37,277 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [506053495] [2022-04-08 05:55:37,277 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:55:37,277 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:55:37,303 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:55:37,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1651023802] [2022-04-08 05:55:37,304 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:55:37,304 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:55:37,304 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:55:37,305 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:55:37,306 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:55:37,366 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:55:37,366 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:55:37,367 INFO L263 TraceCheckSpWp]: Trace formula consists of 255 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 05:55:37,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:55:37,383 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:55:37,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {14326#true} call ULTIMATE.init(); {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {14326#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); {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 2: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14326#true} {14326#true} #103#return; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L272 TraceCheckUtils]: 4: Hoare triple {14326#true} call #t~ret6 := main(); {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 5: Hoare triple {14326#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; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L272 TraceCheckUtils]: 6: Hoare triple {14326#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 7: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 8: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 9: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14326#true} {14326#true} #79#return; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 11: Hoare triple {14326#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L272 TraceCheckUtils]: 12: Hoare triple {14326#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 13: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,661 INFO L290 TraceCheckUtils]: 14: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 15: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14326#true} {14326#true} #81#return; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L272 TraceCheckUtils]: 17: Hoare triple {14326#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 19: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 20: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14326#true} {14326#true} #83#return; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L272 TraceCheckUtils]: 22: Hoare triple {14326#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 23: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 24: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 25: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14326#true} {14326#true} #85#return; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 27: Hoare triple {14326#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; {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L272 TraceCheckUtils]: 28: Hoare triple {14326#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,662 INFO L290 TraceCheckUtils]: 29: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 30: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 31: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14326#true} {14326#true} #87#return; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L272 TraceCheckUtils]: 33: Hoare triple {14326#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 34: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 35: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 36: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14326#true} {14326#true} #89#return; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 38: Hoare triple {14326#true} assume !false; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 39: Hoare triple {14326#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14326#true} is VALID [2022-04-08 05:55:37,663 INFO L290 TraceCheckUtils]: 40: Hoare triple {14326#true} assume !false; {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L272 TraceCheckUtils]: 41: Hoare triple {14326#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L290 TraceCheckUtils]: 42: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L290 TraceCheckUtils]: 43: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L290 TraceCheckUtils]: 44: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14326#true} {14326#true} #91#return; {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L272 TraceCheckUtils]: 46: Hoare triple {14326#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L290 TraceCheckUtils]: 47: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L290 TraceCheckUtils]: 48: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L290 TraceCheckUtils]: 49: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14326#true} {14326#true} #93#return; {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L272 TraceCheckUtils]: 51: Hoare triple {14326#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,664 INFO L290 TraceCheckUtils]: 52: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L290 TraceCheckUtils]: 53: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L290 TraceCheckUtils]: 54: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14326#true} {14326#true} #95#return; {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L272 TraceCheckUtils]: 56: Hoare triple {14326#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)); {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L290 TraceCheckUtils]: 57: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L290 TraceCheckUtils]: 58: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L290 TraceCheckUtils]: 59: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,665 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14326#true} {14326#true} #97#return; {14326#true} is VALID [2022-04-08 05:55:37,675 INFO L290 TraceCheckUtils]: 61: Hoare triple {14326#true} assume !(~c~0 >= ~b~0); {14514#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:55:37,676 INFO L290 TraceCheckUtils]: 62: Hoare triple {14514#(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; {14518#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:55:37,676 INFO L290 TraceCheckUtils]: 63: Hoare triple {14518#(< main_~b~0 main_~a~0)} assume !false; {14518#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:55:37,676 INFO L290 TraceCheckUtils]: 64: Hoare triple {14518#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,677 INFO L290 TraceCheckUtils]: 65: Hoare triple {14525#(< main_~b~0 main_~c~0)} assume !false; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,677 INFO L272 TraceCheckUtils]: 66: Hoare triple {14525#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,677 INFO L290 TraceCheckUtils]: 67: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,677 INFO L290 TraceCheckUtils]: 68: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,677 INFO L290 TraceCheckUtils]: 69: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,678 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #91#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,678 INFO L272 TraceCheckUtils]: 71: Hoare triple {14525#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,678 INFO L290 TraceCheckUtils]: 72: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,678 INFO L290 TraceCheckUtils]: 73: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,678 INFO L290 TraceCheckUtils]: 74: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,679 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #93#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,679 INFO L272 TraceCheckUtils]: 76: Hoare triple {14525#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,679 INFO L290 TraceCheckUtils]: 77: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,679 INFO L290 TraceCheckUtils]: 78: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,679 INFO L290 TraceCheckUtils]: 79: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,680 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #95#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,680 INFO L272 TraceCheckUtils]: 81: Hoare triple {14525#(< 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)); {14326#true} is VALID [2022-04-08 05:55:37,680 INFO L290 TraceCheckUtils]: 82: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,680 INFO L290 TraceCheckUtils]: 83: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,680 INFO L290 TraceCheckUtils]: 84: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,681 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #97#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,682 INFO L290 TraceCheckUtils]: 86: Hoare triple {14525#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,682 INFO L290 TraceCheckUtils]: 87: Hoare triple {14592#(< 0 main_~c~0)} assume !false; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,682 INFO L272 TraceCheckUtils]: 88: Hoare triple {14592#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,682 INFO L290 TraceCheckUtils]: 89: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,682 INFO L290 TraceCheckUtils]: 90: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,683 INFO L290 TraceCheckUtils]: 91: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,683 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #91#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,683 INFO L272 TraceCheckUtils]: 93: Hoare triple {14592#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,683 INFO L290 TraceCheckUtils]: 94: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,683 INFO L290 TraceCheckUtils]: 95: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,683 INFO L290 TraceCheckUtils]: 96: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,684 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #93#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,684 INFO L272 TraceCheckUtils]: 98: Hoare triple {14592#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,684 INFO L290 TraceCheckUtils]: 99: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,684 INFO L290 TraceCheckUtils]: 100: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,684 INFO L290 TraceCheckUtils]: 101: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,684 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #95#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,685 INFO L272 TraceCheckUtils]: 103: Hoare triple {14592#(< 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)); {14326#true} is VALID [2022-04-08 05:55:37,685 INFO L290 TraceCheckUtils]: 104: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,685 INFO L290 TraceCheckUtils]: 105: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,685 INFO L290 TraceCheckUtils]: 106: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,685 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #97#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,685 INFO L290 TraceCheckUtils]: 108: Hoare triple {14592#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,686 INFO L290 TraceCheckUtils]: 109: Hoare triple {14592#(< 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; {14662#(< 0 main_~b~0)} is VALID [2022-04-08 05:55:37,686 INFO L290 TraceCheckUtils]: 110: Hoare triple {14662#(< 0 main_~b~0)} assume !false; {14662#(< 0 main_~b~0)} is VALID [2022-04-08 05:55:37,686 INFO L290 TraceCheckUtils]: 111: Hoare triple {14662#(< 0 main_~b~0)} assume !(0 != ~b~0); {14327#false} is VALID [2022-04-08 05:55:37,686 INFO L272 TraceCheckUtils]: 112: Hoare triple {14327#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {14327#false} is VALID [2022-04-08 05:55:37,687 INFO L290 TraceCheckUtils]: 113: Hoare triple {14327#false} ~cond := #in~cond; {14327#false} is VALID [2022-04-08 05:55:37,687 INFO L290 TraceCheckUtils]: 114: Hoare triple {14327#false} assume 0 == ~cond; {14327#false} is VALID [2022-04-08 05:55:37,687 INFO L290 TraceCheckUtils]: 115: Hoare triple {14327#false} assume !false; {14327#false} is VALID [2022-04-08 05:55:37,687 INFO L134 CoverageAnalysis]: Checked inductivity of 373 backedges. 40 proven. 9 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2022-04-08 05:55:37,687 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:55:37,989 INFO L290 TraceCheckUtils]: 115: Hoare triple {14327#false} assume !false; {14327#false} is VALID [2022-04-08 05:55:37,989 INFO L290 TraceCheckUtils]: 114: Hoare triple {14327#false} assume 0 == ~cond; {14327#false} is VALID [2022-04-08 05:55:37,989 INFO L290 TraceCheckUtils]: 113: Hoare triple {14327#false} ~cond := #in~cond; {14327#false} is VALID [2022-04-08 05:55:37,989 INFO L272 TraceCheckUtils]: 112: Hoare triple {14327#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {14327#false} is VALID [2022-04-08 05:55:37,990 INFO L290 TraceCheckUtils]: 111: Hoare triple {14662#(< 0 main_~b~0)} assume !(0 != ~b~0); {14327#false} is VALID [2022-04-08 05:55:37,990 INFO L290 TraceCheckUtils]: 110: Hoare triple {14662#(< 0 main_~b~0)} assume !false; {14662#(< 0 main_~b~0)} is VALID [2022-04-08 05:55:37,990 INFO L290 TraceCheckUtils]: 109: Hoare triple {14592#(< 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; {14662#(< 0 main_~b~0)} is VALID [2022-04-08 05:55:37,991 INFO L290 TraceCheckUtils]: 108: Hoare triple {14592#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,991 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #97#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,991 INFO L290 TraceCheckUtils]: 106: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,991 INFO L290 TraceCheckUtils]: 105: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,991 INFO L290 TraceCheckUtils]: 104: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,991 INFO L272 TraceCheckUtils]: 103: Hoare triple {14592#(< 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)); {14326#true} is VALID [2022-04-08 05:55:37,992 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #95#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,992 INFO L290 TraceCheckUtils]: 101: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,992 INFO L290 TraceCheckUtils]: 100: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,992 INFO L290 TraceCheckUtils]: 99: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,992 INFO L272 TraceCheckUtils]: 98: Hoare triple {14592#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,993 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #93#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,993 INFO L290 TraceCheckUtils]: 96: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,993 INFO L290 TraceCheckUtils]: 95: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,993 INFO L290 TraceCheckUtils]: 94: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,993 INFO L272 TraceCheckUtils]: 93: Hoare triple {14592#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,993 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14326#true} {14592#(< 0 main_~c~0)} #91#return; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,993 INFO L290 TraceCheckUtils]: 91: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,993 INFO L290 TraceCheckUtils]: 90: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,994 INFO L290 TraceCheckUtils]: 89: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,994 INFO L272 TraceCheckUtils]: 88: Hoare triple {14592#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,994 INFO L290 TraceCheckUtils]: 87: Hoare triple {14592#(< 0 main_~c~0)} assume !false; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,995 INFO L290 TraceCheckUtils]: 86: Hoare triple {14525#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14592#(< 0 main_~c~0)} is VALID [2022-04-08 05:55:37,995 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #97#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,995 INFO L290 TraceCheckUtils]: 84: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,995 INFO L290 TraceCheckUtils]: 83: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,996 INFO L290 TraceCheckUtils]: 82: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,996 INFO L272 TraceCheckUtils]: 81: Hoare triple {14525#(< 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)); {14326#true} is VALID [2022-04-08 05:55:37,996 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #95#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,996 INFO L290 TraceCheckUtils]: 79: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,996 INFO L290 TraceCheckUtils]: 78: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,996 INFO L290 TraceCheckUtils]: 77: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,996 INFO L272 TraceCheckUtils]: 76: Hoare triple {14525#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,997 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #93#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,997 INFO L290 TraceCheckUtils]: 74: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,997 INFO L290 TraceCheckUtils]: 73: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,997 INFO L290 TraceCheckUtils]: 72: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,997 INFO L272 TraceCheckUtils]: 71: Hoare triple {14525#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,998 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {14326#true} {14525#(< main_~b~0 main_~c~0)} #91#return; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,998 INFO L290 TraceCheckUtils]: 69: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,998 INFO L290 TraceCheckUtils]: 68: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,998 INFO L290 TraceCheckUtils]: 67: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:37,998 INFO L272 TraceCheckUtils]: 66: Hoare triple {14525#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:37,998 INFO L290 TraceCheckUtils]: 65: Hoare triple {14525#(< main_~b~0 main_~c~0)} assume !false; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,998 INFO L290 TraceCheckUtils]: 64: Hoare triple {14518#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14525#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:55:37,999 INFO L290 TraceCheckUtils]: 63: Hoare triple {14518#(< main_~b~0 main_~a~0)} assume !false; {14518#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:55:37,999 INFO L290 TraceCheckUtils]: 62: Hoare triple {14514#(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; {14518#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:55:37,999 INFO L290 TraceCheckUtils]: 61: Hoare triple {14326#true} assume !(~c~0 >= ~b~0); {14514#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:55:37,999 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14326#true} {14326#true} #97#return; {14326#true} is VALID [2022-04-08 05:55:37,999 INFO L290 TraceCheckUtils]: 59: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:37,999 INFO L290 TraceCheckUtils]: 58: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:37,999 INFO L290 TraceCheckUtils]: 57: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L272 TraceCheckUtils]: 56: Hoare triple {14326#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)); {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14326#true} {14326#true} #95#return; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 54: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 53: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 52: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L272 TraceCheckUtils]: 51: Hoare triple {14326#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14326#true} {14326#true} #93#return; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 49: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 48: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 47: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L272 TraceCheckUtils]: 46: Hoare triple {14326#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14326#true} {14326#true} #91#return; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 44: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 43: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 42: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L272 TraceCheckUtils]: 41: Hoare triple {14326#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 40: Hoare triple {14326#true} assume !false; {14326#true} is VALID [2022-04-08 05:55:38,000 INFO L290 TraceCheckUtils]: 39: Hoare triple {14326#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 38: Hoare triple {14326#true} assume !false; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14326#true} {14326#true} #89#return; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 36: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 35: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 34: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L272 TraceCheckUtils]: 33: Hoare triple {14326#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14326#true} {14326#true} #87#return; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 31: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 30: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 29: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L272 TraceCheckUtils]: 28: Hoare triple {14326#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 27: Hoare triple {14326#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; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14326#true} {14326#true} #85#return; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 25: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 24: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 23: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L272 TraceCheckUtils]: 22: Hoare triple {14326#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14326#true} {14326#true} #83#return; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 20: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,001 INFO L290 TraceCheckUtils]: 19: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 18: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L272 TraceCheckUtils]: 17: Hoare triple {14326#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14326#true} {14326#true} #81#return; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 15: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 14: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L272 TraceCheckUtils]: 12: Hoare triple {14326#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 11: Hoare triple {14326#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14326#true} {14326#true} #79#return; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 9: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 8: Hoare triple {14326#true} assume !(0 == ~cond); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 7: Hoare triple {14326#true} ~cond := #in~cond; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L272 TraceCheckUtils]: 6: Hoare triple {14326#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {14326#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; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L272 TraceCheckUtils]: 4: Hoare triple {14326#true} call #t~ret6 := main(); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14326#true} {14326#true} #103#return; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {14326#true} assume true; {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {14326#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); {14326#true} is VALID [2022-04-08 05:55:38,002 INFO L272 TraceCheckUtils]: 0: Hoare triple {14326#true} call ULTIMATE.init(); {14326#true} is VALID [2022-04-08 05:55:38,003 INFO L134 CoverageAnalysis]: Checked inductivity of 373 backedges. 40 proven. 9 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2022-04-08 05:55:38,003 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:55:38,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [506053495] [2022-04-08 05:55:38,003 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:55:38,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1651023802] [2022-04-08 05:55:38,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1651023802] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:55:38,003 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:55:38,003 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 7 [2022-04-08 05:55:38,003 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:55:38,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1324309999] [2022-04-08 05:55:38,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1324309999] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:55:38,003 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:55:38,004 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 05:55:38,004 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [5064756] [2022-04-08 05:55:38,004 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:55:38,004 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) Word has length 116 [2022-04-08 05:55:38,004 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:55:38,004 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), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-08 05:55:38,074 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:55:38,074 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 05:55:38,074 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:55:38,074 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 05:55:38,075 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-08 05:55:38,075 INFO L87 Difference]: Start difference. First operand 157 states and 209 transitions. Second operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-08 05:55:39,403 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:39,403 INFO L93 Difference]: Finished difference Result 211 states and 298 transitions. [2022-04-08 05:55:39,403 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 05:55:39,404 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) Word has length 116 [2022-04-08 05:55:39,404 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:55:39,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-08 05:55:39,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-08 05:55:39,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-08 05:55:39,408 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-08 05:55:39,409 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 126 transitions. [2022-04-08 05:55:39,543 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:55:39,548 INFO L225 Difference]: With dead ends: 211 [2022-04-08 05:55:39,548 INFO L226 Difference]: Without dead ends: 203 [2022-04-08 05:55:39,548 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 242 GetRequests, 227 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=62, Invalid=148, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:55:39,550 INFO L913 BasicCegarLoop]: 85 mSDtfsCounter, 14 mSDsluCounter, 195 mSDsCounter, 0 mSdLazyCounter, 205 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 280 SdHoareTripleChecker+Invalid, 245 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 205 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 05:55:39,550 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 280 Invalid, 245 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 205 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 05:55:39,550 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-04-08 05:55:40,048 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 184. [2022-04-08 05:55:40,048 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:55:40,048 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:55:40,049 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:55:40,049 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:55:40,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:40,058 INFO L93 Difference]: Finished difference Result 203 states and 289 transitions. [2022-04-08 05:55:40,058 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 289 transitions. [2022-04-08 05:55:40,059 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:55:40,059 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:55:40,059 INFO L74 IsIncluded]: Start isIncluded. First operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 203 states. [2022-04-08 05:55:40,059 INFO L87 Difference]: Start difference. First operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 203 states. [2022-04-08 05:55:40,067 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:40,067 INFO L93 Difference]: Finished difference Result 203 states and 289 transitions. [2022-04-08 05:55:40,067 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 289 transitions. [2022-04-08 05:55:40,068 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:55:40,068 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:55:40,069 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:55:40,069 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:55:40,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 05:55:40,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 256 transitions. [2022-04-08 05:55:40,076 INFO L78 Accepts]: Start accepts. Automaton has 184 states and 256 transitions. Word has length 116 [2022-04-08 05:55:40,076 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:55:40,076 INFO L478 AbstractCegarLoop]: Abstraction has 184 states and 256 transitions. [2022-04-08 05:55:40,076 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-08 05:55:40,077 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 184 states and 256 transitions. [2022-04-08 05:55:40,608 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 256 edges. 256 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:55:40,609 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 256 transitions. [2022-04-08 05:55:40,609 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-04-08 05:55:40,609 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:55:40,609 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 6, 6, 6, 4, 4, 4, 4, 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:55:40,626 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:55:40,810 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:55:40,810 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:55:40,810 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:55:40,810 INFO L85 PathProgramCache]: Analyzing trace with hash -743412771, now seen corresponding path program 3 times [2022-04-08 05:55:40,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:55:40,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2065624249] [2022-04-08 05:55:40,811 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:55:40,811 INFO L85 PathProgramCache]: Analyzing trace with hash -743412771, now seen corresponding path program 4 times [2022-04-08 05:55:40,811 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:55:40,811 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [344154205] [2022-04-08 05:55:40,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:55:40,811 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:55:40,830 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:55:40,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [229206552] [2022-04-08 05:55:40,831 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:55:40,831 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:55:40,831 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:55:40,832 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:55:40,834 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:55:40,886 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:55:40,886 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:55:40,887 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 05:55:40,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:55:40,905 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:55:41,167 INFO L272 TraceCheckUtils]: 0: Hoare triple {16243#true} call ULTIMATE.init(); {16243#true} is VALID [2022-04-08 05:55:41,167 INFO L290 TraceCheckUtils]: 1: Hoare triple {16243#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); {16243#true} is VALID [2022-04-08 05:55:41,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,167 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16243#true} {16243#true} #103#return; {16243#true} is VALID [2022-04-08 05:55:41,167 INFO L272 TraceCheckUtils]: 4: Hoare triple {16243#true} call #t~ret6 := main(); {16243#true} is VALID [2022-04-08 05:55:41,167 INFO L290 TraceCheckUtils]: 5: Hoare triple {16243#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; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L272 TraceCheckUtils]: 6: Hoare triple {16243#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 7: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 8: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 9: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16243#true} {16243#true} #79#return; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 11: Hoare triple {16243#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L272 TraceCheckUtils]: 12: Hoare triple {16243#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 14: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 15: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {16243#true} {16243#true} #81#return; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L272 TraceCheckUtils]: 17: Hoare triple {16243#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 18: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 19: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 20: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16243#true} {16243#true} #83#return; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L272 TraceCheckUtils]: 22: Hoare triple {16243#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 23: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,168 INFO L290 TraceCheckUtils]: 24: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 25: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16243#true} {16243#true} #85#return; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 27: Hoare triple {16243#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; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L272 TraceCheckUtils]: 28: Hoare triple {16243#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 29: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 30: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 31: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {16243#true} {16243#true} #87#return; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L272 TraceCheckUtils]: 33: Hoare triple {16243#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 34: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 35: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 36: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {16243#true} {16243#true} #89#return; {16243#true} is VALID [2022-04-08 05:55:41,169 INFO L290 TraceCheckUtils]: 38: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 39: Hoare triple {16243#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 40: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L272 TraceCheckUtils]: 41: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 42: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 43: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 44: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {16243#true} {16243#true} #91#return; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L272 TraceCheckUtils]: 46: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 47: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 48: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 49: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {16243#true} {16243#true} #93#return; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L272 TraceCheckUtils]: 51: Hoare triple {16243#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 52: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 53: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 54: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16243#true} {16243#true} #95#return; {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L272 TraceCheckUtils]: 56: Hoare triple {16243#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)); {16243#true} is VALID [2022-04-08 05:55:41,170 INFO L290 TraceCheckUtils]: 57: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 58: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 59: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16243#true} {16243#true} #97#return; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 61: Hoare triple {16243#true} assume !(~c~0 >= ~b~0); {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 62: Hoare triple {16243#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; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 63: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 64: Hoare triple {16243#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 65: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L272 TraceCheckUtils]: 66: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 67: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 68: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 69: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {16243#true} {16243#true} #91#return; {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L272 TraceCheckUtils]: 71: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,171 INFO L290 TraceCheckUtils]: 72: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 73: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 74: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {16243#true} {16243#true} #93#return; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L272 TraceCheckUtils]: 76: Hoare triple {16243#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 77: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 78: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 79: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {16243#true} {16243#true} #95#return; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L272 TraceCheckUtils]: 81: Hoare triple {16243#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)); {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 82: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 83: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 84: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {16243#true} {16243#true} #97#return; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 86: Hoare triple {16243#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16243#true} is VALID [2022-04-08 05:55:41,172 INFO L290 TraceCheckUtils]: 87: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L272 TraceCheckUtils]: 88: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L290 TraceCheckUtils]: 89: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L290 TraceCheckUtils]: 90: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L290 TraceCheckUtils]: 91: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {16243#true} {16243#true} #91#return; {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L272 TraceCheckUtils]: 93: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L290 TraceCheckUtils]: 94: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L290 TraceCheckUtils]: 95: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L290 TraceCheckUtils]: 96: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {16243#true} {16243#true} #93#return; {16243#true} is VALID [2022-04-08 05:55:41,173 INFO L272 TraceCheckUtils]: 98: Hoare triple {16243#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:41,183 INFO L290 TraceCheckUtils]: 99: Hoare triple {16243#true} ~cond := #in~cond; {16545#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:41,184 INFO L290 TraceCheckUtils]: 100: Hoare triple {16545#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:41,184 INFO L290 TraceCheckUtils]: 101: Hoare triple {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:41,185 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} {16243#true} #95#return; {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:41,185 INFO L272 TraceCheckUtils]: 103: Hoare triple {16556#(= 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)); {16243#true} is VALID [2022-04-08 05:55:41,185 INFO L290 TraceCheckUtils]: 104: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,185 INFO L290 TraceCheckUtils]: 105: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,185 INFO L290 TraceCheckUtils]: 106: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,185 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {16243#true} {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:41,186 INFO L290 TraceCheckUtils]: 108: Hoare triple {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:41,186 INFO L290 TraceCheckUtils]: 109: Hoare triple {16556#(= 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; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:41,187 INFO L290 TraceCheckUtils]: 110: Hoare triple {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:41,187 INFO L290 TraceCheckUtils]: 111: Hoare triple {16578#(= 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; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:41,187 INFO L290 TraceCheckUtils]: 112: Hoare triple {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:41,187 INFO L272 TraceCheckUtils]: 113: Hoare triple {16578#(= 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)); {16243#true} is VALID [2022-04-08 05:55:41,187 INFO L290 TraceCheckUtils]: 114: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:41,187 INFO L290 TraceCheckUtils]: 115: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:41,187 INFO L290 TraceCheckUtils]: 116: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:41,188 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {16243#true} {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:41,189 INFO L272 TraceCheckUtils]: 118: Hoare triple {16578#(= 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)); {16606#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:55:41,189 INFO L290 TraceCheckUtils]: 119: Hoare triple {16606#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16610#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:41,189 INFO L290 TraceCheckUtils]: 120: Hoare triple {16610#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16244#false} is VALID [2022-04-08 05:55:41,189 INFO L290 TraceCheckUtils]: 121: Hoare triple {16244#false} assume !false; {16244#false} is VALID [2022-04-08 05:55:41,190 INFO L134 CoverageAnalysis]: Checked inductivity of 432 backedges. 73 proven. 7 refuted. 0 times theorem prover too weak. 352 trivial. 0 not checked. [2022-04-08 05:55:41,190 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:55:50,435 INFO L290 TraceCheckUtils]: 121: Hoare triple {16244#false} assume !false; {16244#false} is VALID [2022-04-08 05:55:50,436 INFO L290 TraceCheckUtils]: 120: Hoare triple {16610#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16244#false} is VALID [2022-04-08 05:55:50,436 INFO L290 TraceCheckUtils]: 119: Hoare triple {16606#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16610#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:50,437 INFO L272 TraceCheckUtils]: 118: Hoare triple {16578#(= 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)); {16606#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:55:50,437 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {16243#true} {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:50,437 INFO L290 TraceCheckUtils]: 116: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,437 INFO L290 TraceCheckUtils]: 115: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,437 INFO L290 TraceCheckUtils]: 114: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,437 INFO L272 TraceCheckUtils]: 113: Hoare triple {16578#(= 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)); {16243#true} is VALID [2022-04-08 05:55:50,438 INFO L290 TraceCheckUtils]: 112: Hoare triple {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:50,438 INFO L290 TraceCheckUtils]: 111: Hoare triple {16578#(= 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; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:50,438 INFO L290 TraceCheckUtils]: 110: Hoare triple {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:50,439 INFO L290 TraceCheckUtils]: 109: Hoare triple {16556#(= 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; {16578#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:55:50,439 INFO L290 TraceCheckUtils]: 108: Hoare triple {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:50,440 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {16243#true} {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:50,440 INFO L290 TraceCheckUtils]: 106: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,440 INFO L290 TraceCheckUtils]: 105: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,440 INFO L290 TraceCheckUtils]: 104: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,440 INFO L272 TraceCheckUtils]: 103: Hoare triple {16556#(= 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)); {16243#true} is VALID [2022-04-08 05:55:50,440 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} {16243#true} #95#return; {16556#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:55:50,441 INFO L290 TraceCheckUtils]: 101: Hoare triple {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:50,441 INFO L290 TraceCheckUtils]: 100: Hoare triple {16683#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {16549#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:50,441 INFO L290 TraceCheckUtils]: 99: Hoare triple {16243#true} ~cond := #in~cond; {16683#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:55:50,441 INFO L272 TraceCheckUtils]: 98: Hoare triple {16243#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {16243#true} {16243#true} #93#return; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 96: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 95: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 94: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L272 TraceCheckUtils]: 93: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {16243#true} {16243#true} #91#return; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 91: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 90: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 89: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L272 TraceCheckUtils]: 88: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 87: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 86: Hoare triple {16243#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {16243#true} {16243#true} #97#return; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 84: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 83: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 82: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L272 TraceCheckUtils]: 81: Hoare triple {16243#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)); {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {16243#true} {16243#true} #95#return; {16243#true} is VALID [2022-04-08 05:55:50,442 INFO L290 TraceCheckUtils]: 79: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 78: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 77: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L272 TraceCheckUtils]: 76: Hoare triple {16243#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {16243#true} {16243#true} #93#return; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 74: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 73: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 72: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L272 TraceCheckUtils]: 71: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {16243#true} {16243#true} #91#return; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 69: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 68: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 67: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L272 TraceCheckUtils]: 66: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 65: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 64: Hoare triple {16243#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 63: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:50,443 INFO L290 TraceCheckUtils]: 62: Hoare triple {16243#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; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 61: Hoare triple {16243#true} assume !(~c~0 >= ~b~0); {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16243#true} {16243#true} #97#return; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 59: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 58: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 57: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L272 TraceCheckUtils]: 56: Hoare triple {16243#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)); {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16243#true} {16243#true} #95#return; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 54: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 53: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 52: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L272 TraceCheckUtils]: 51: Hoare triple {16243#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {16243#true} {16243#true} #93#return; {16243#true} is VALID [2022-04-08 05:55:50,444 INFO L290 TraceCheckUtils]: 49: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 48: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 47: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L272 TraceCheckUtils]: 46: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {16243#true} {16243#true} #91#return; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 44: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 43: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 42: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L272 TraceCheckUtils]: 41: Hoare triple {16243#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 40: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 39: Hoare triple {16243#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 38: Hoare triple {16243#true} assume !false; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {16243#true} {16243#true} #89#return; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 36: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 35: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 34: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L272 TraceCheckUtils]: 33: Hoare triple {16243#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {16243#true} {16243#true} #87#return; {16243#true} is VALID [2022-04-08 05:55:50,445 INFO L290 TraceCheckUtils]: 31: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 30: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 29: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L272 TraceCheckUtils]: 28: Hoare triple {16243#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 27: Hoare triple {16243#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; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16243#true} {16243#true} #85#return; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 25: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 24: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 23: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L272 TraceCheckUtils]: 22: Hoare triple {16243#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16243#true} {16243#true} #83#return; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 20: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 19: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L290 TraceCheckUtils]: 18: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L272 TraceCheckUtils]: 17: Hoare triple {16243#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,446 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {16243#true} {16243#true} #81#return; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 15: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 14: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 13: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L272 TraceCheckUtils]: 12: Hoare triple {16243#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 11: Hoare triple {16243#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16243#true} {16243#true} #79#return; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 9: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 8: Hoare triple {16243#true} assume !(0 == ~cond); {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 7: Hoare triple {16243#true} ~cond := #in~cond; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L272 TraceCheckUtils]: 6: Hoare triple {16243#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 5: Hoare triple {16243#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; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L272 TraceCheckUtils]: 4: Hoare triple {16243#true} call #t~ret6 := main(); {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16243#true} {16243#true} #103#return; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {16243#true} assume true; {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {16243#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); {16243#true} is VALID [2022-04-08 05:55:50,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {16243#true} call ULTIMATE.init(); {16243#true} is VALID [2022-04-08 05:55:50,448 INFO L134 CoverageAnalysis]: Checked inductivity of 432 backedges. 73 proven. 7 refuted. 0 times theorem prover too weak. 352 trivial. 0 not checked. [2022-04-08 05:55:50,448 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:55:50,448 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [344154205] [2022-04-08 05:55:50,448 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:55:50,448 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [229206552] [2022-04-08 05:55:50,448 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [229206552] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:55:50,448 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:55:50,448 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 05:55:50,449 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:55:50,449 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2065624249] [2022-04-08 05:55:50,449 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2065624249] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:55:50,449 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:55:50,449 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:55:50,449 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [107349439] [2022-04-08 05:55:50,449 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:55:50,449 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) Word has length 122 [2022-04-08 05:55:50,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:55:50,450 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-08 05:55:50,492 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:55:50,492 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:55:50,493 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:55:50,493 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:55:50,493 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:55:50,493 INFO L87 Difference]: Start difference. First operand 184 states and 256 transitions. Second operand has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-08 05:55:51,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:51,557 INFO L93 Difference]: Finished difference Result 198 states and 267 transitions. [2022-04-08 05:55:51,557 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 05:55:51,558 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) Word has length 122 [2022-04-08 05:55:51,559 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:55:51,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-08 05:55:51,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-08 05:55:51,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-08 05:55:51,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-08 05:55:51,562 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 60 transitions. [2022-04-08 05:55:51,625 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:55:51,630 INFO L225 Difference]: With dead ends: 198 [2022-04-08 05:55:51,630 INFO L226 Difference]: Without dead ends: 195 [2022-04-08 05:55:51,630 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 246 GetRequests, 235 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:55:51,631 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 17 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 129 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:55:51,631 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 156 Invalid, 129 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 05:55:51,631 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2022-04-08 05:55:52,174 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 194. [2022-04-08 05:55:52,174 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:55:52,174 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-08 05:55:52,175 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-08 05:55:52,175 INFO L87 Difference]: Start difference. First operand 195 states. Second operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-08 05:55:52,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:52,185 INFO L93 Difference]: Finished difference Result 195 states and 263 transitions. [2022-04-08 05:55:52,185 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 263 transitions. [2022-04-08 05:55:52,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:55:52,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:55:52,187 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) Second operand 195 states. [2022-04-08 05:55:52,187 INFO L87 Difference]: Start difference. First operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) Second operand 195 states. [2022-04-08 05:55:52,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:55:52,193 INFO L93 Difference]: Finished difference Result 195 states and 263 transitions. [2022-04-08 05:55:52,193 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 263 transitions. [2022-04-08 05:55:52,194 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:55:52,194 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:55:52,194 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:55:52,194 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:55:52,194 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-08 05:55:52,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 262 transitions. [2022-04-08 05:55:52,201 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 262 transitions. Word has length 122 [2022-04-08 05:55:52,201 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:55:52,201 INFO L478 AbstractCegarLoop]: Abstraction has 194 states and 262 transitions. [2022-04-08 05:55:52,201 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-08 05:55:52,201 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 262 transitions. [2022-04-08 05:55:52,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 262 edges. 262 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:55:52,872 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 262 transitions. [2022-04-08 05:55:52,875 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2022-04-08 05:55:52,875 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:55:52,876 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 6, 6, 6, 4, 4, 4, 4, 4, 4, 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:55:52,899 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:55:53,079 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:55:53,079 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:55:53,080 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:55:53,080 INFO L85 PathProgramCache]: Analyzing trace with hash 541794983, now seen corresponding path program 5 times [2022-04-08 05:55:53,080 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:55:53,080 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [245830132] [2022-04-08 05:55:53,080 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:55:53,080 INFO L85 PathProgramCache]: Analyzing trace with hash 541794983, now seen corresponding path program 6 times [2022-04-08 05:55:53,080 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:55:53,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1162236857] [2022-04-08 05:55:53,081 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:55:53,081 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:55:53,102 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:55:53,102 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [438171907] [2022-04-08 05:55:53,102 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:55:53,102 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:55:53,102 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:55:53,104 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:55:53,109 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:55:53,185 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:55:53,185 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:55:53,187 INFO L263 TraceCheckSpWp]: Trace formula consists of 277 conjuncts, 77 conjunts are in the unsatisfiable core [2022-04-08 05:55:53,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:55:53,214 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:55:54,656 INFO L272 TraceCheckUtils]: 0: Hoare triple {18163#true} call ULTIMATE.init(); {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L290 TraceCheckUtils]: 1: Hoare triple {18163#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); {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L290 TraceCheckUtils]: 2: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18163#true} {18163#true} #103#return; {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L272 TraceCheckUtils]: 4: Hoare triple {18163#true} call #t~ret6 := main(); {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L290 TraceCheckUtils]: 5: Hoare triple {18163#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; {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L272 TraceCheckUtils]: 6: Hoare triple {18163#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L290 TraceCheckUtils]: 7: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L290 TraceCheckUtils]: 8: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L290 TraceCheckUtils]: 9: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18163#true} {18163#true} #79#return; {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L290 TraceCheckUtils]: 11: Hoare triple {18163#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18163#true} is VALID [2022-04-08 05:55:54,657 INFO L272 TraceCheckUtils]: 12: Hoare triple {18163#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 13: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 14: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 15: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {18163#true} {18163#true} #81#return; {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L272 TraceCheckUtils]: 17: Hoare triple {18163#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 18: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 19: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18163#true} {18163#true} #83#return; {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L272 TraceCheckUtils]: 22: Hoare triple {18163#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 23: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,658 INFO L290 TraceCheckUtils]: 24: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,659 INFO L290 TraceCheckUtils]: 25: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,659 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18163#true} {18163#true} #85#return; {18163#true} is VALID [2022-04-08 05:55:54,659 INFO L290 TraceCheckUtils]: 27: Hoare triple {18163#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; {18249#(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:55:54,659 INFO L272 TraceCheckUtils]: 28: Hoare triple {18249#(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)); {18163#true} is VALID [2022-04-08 05:55:54,659 INFO L290 TraceCheckUtils]: 29: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,659 INFO L290 TraceCheckUtils]: 30: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,660 INFO L290 TraceCheckUtils]: 31: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,660 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {18163#true} {18249#(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))} #87#return; {18249#(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:55:54,660 INFO L272 TraceCheckUtils]: 33: Hoare triple {18249#(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)); {18163#true} is VALID [2022-04-08 05:55:54,661 INFO L290 TraceCheckUtils]: 34: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,661 INFO L290 TraceCheckUtils]: 35: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,661 INFO L290 TraceCheckUtils]: 36: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,662 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18163#true} {18249#(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))} #89#return; {18249#(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:55:54,662 INFO L290 TraceCheckUtils]: 38: Hoare triple {18249#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {18249#(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:55:54,663 INFO L290 TraceCheckUtils]: 39: Hoare triple {18249#(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; {18286#(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:55:54,663 INFO L290 TraceCheckUtils]: 40: Hoare triple {18286#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {18286#(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:55:54,663 INFO L272 TraceCheckUtils]: 41: Hoare triple {18286#(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)); {18163#true} is VALID [2022-04-08 05:55:54,663 INFO L290 TraceCheckUtils]: 42: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,663 INFO L290 TraceCheckUtils]: 43: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,664 INFO L290 TraceCheckUtils]: 44: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,664 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {18163#true} {18286#(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))} #91#return; {18286#(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:55:54,664 INFO L272 TraceCheckUtils]: 46: Hoare triple {18286#(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)); {18163#true} is VALID [2022-04-08 05:55:54,665 INFO L290 TraceCheckUtils]: 47: Hoare triple {18163#true} ~cond := #in~cond; {18311#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:54,665 INFO L290 TraceCheckUtils]: 48: Hoare triple {18311#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,666 INFO L290 TraceCheckUtils]: 49: Hoare triple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,667 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} {18286#(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))} #93#return; {18322#(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:55:54,667 INFO L272 TraceCheckUtils]: 51: Hoare triple {18322#(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)); {18163#true} is VALID [2022-04-08 05:55:54,667 INFO L290 TraceCheckUtils]: 52: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,667 INFO L290 TraceCheckUtils]: 53: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,667 INFO L290 TraceCheckUtils]: 54: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,668 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18163#true} {18322#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {18322#(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:55:54,668 INFO L272 TraceCheckUtils]: 56: Hoare triple {18322#(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)); {18163#true} is VALID [2022-04-08 05:55:54,668 INFO L290 TraceCheckUtils]: 57: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,668 INFO L290 TraceCheckUtils]: 58: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,668 INFO L290 TraceCheckUtils]: 59: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,669 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18163#true} {18322#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {18322#(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:55:54,669 INFO L290 TraceCheckUtils]: 61: Hoare triple {18322#(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); {18356#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:55:54,670 INFO L290 TraceCheckUtils]: 62: Hoare triple {18356#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= 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; {18360#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:55:54,671 INFO L290 TraceCheckUtils]: 63: Hoare triple {18360#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {18360#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:55:54,671 INFO L290 TraceCheckUtils]: 64: Hoare triple {18360#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:55:54,672 INFO L290 TraceCheckUtils]: 65: Hoare triple {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:55:54,672 INFO L272 TraceCheckUtils]: 66: Hoare triple {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,672 INFO L290 TraceCheckUtils]: 67: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,672 INFO L290 TraceCheckUtils]: 68: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,672 INFO L290 TraceCheckUtils]: 69: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,673 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {18163#true} {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #91#return; {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:55:54,673 INFO L272 TraceCheckUtils]: 71: Hoare triple {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,673 INFO L290 TraceCheckUtils]: 72: Hoare triple {18163#true} ~cond := #in~cond; {18311#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:54,674 INFO L290 TraceCheckUtils]: 73: Hoare triple {18311#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,674 INFO L290 TraceCheckUtils]: 74: Hoare triple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,675 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} {18367#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #93#return; {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,675 INFO L272 TraceCheckUtils]: 76: Hoare triple {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,676 INFO L290 TraceCheckUtils]: 77: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,676 INFO L290 TraceCheckUtils]: 78: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,676 INFO L290 TraceCheckUtils]: 79: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,677 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18163#true} {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,677 INFO L272 TraceCheckUtils]: 81: Hoare triple {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~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)); {18163#true} is VALID [2022-04-08 05:55:54,677 INFO L290 TraceCheckUtils]: 82: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,677 INFO L290 TraceCheckUtils]: 83: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,677 INFO L290 TraceCheckUtils]: 84: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,678 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {18163#true} {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,679 INFO L290 TraceCheckUtils]: 86: Hoare triple {18401#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~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; {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,680 INFO L290 TraceCheckUtils]: 87: Hoare triple {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,680 INFO L272 TraceCheckUtils]: 88: Hoare triple {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,680 INFO L290 TraceCheckUtils]: 89: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,680 INFO L290 TraceCheckUtils]: 90: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,680 INFO L290 TraceCheckUtils]: 91: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,681 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18163#true} {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #91#return; {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,681 INFO L272 TraceCheckUtils]: 93: Hoare triple {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,681 INFO L290 TraceCheckUtils]: 94: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,681 INFO L290 TraceCheckUtils]: 95: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,681 INFO L290 TraceCheckUtils]: 96: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,682 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {18163#true} {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #93#return; {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,682 INFO L272 TraceCheckUtils]: 98: Hoare triple {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,682 INFO L290 TraceCheckUtils]: 99: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,682 INFO L290 TraceCheckUtils]: 100: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,682 INFO L290 TraceCheckUtils]: 101: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,683 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {18163#true} {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #95#return; {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,683 INFO L272 TraceCheckUtils]: 103: Hoare triple {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} 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)); {18163#true} is VALID [2022-04-08 05:55:54,683 INFO L290 TraceCheckUtils]: 104: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,683 INFO L290 TraceCheckUtils]: 105: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,683 INFO L290 TraceCheckUtils]: 106: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,684 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {18163#true} {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #97#return; {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,685 INFO L290 TraceCheckUtils]: 108: Hoare triple {18435#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {18502#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:55:54,686 INFO L290 TraceCheckUtils]: 109: Hoare triple {18502#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18506#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:55:54,687 INFO L290 TraceCheckUtils]: 110: Hoare triple {18506#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} assume !false; {18506#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:55:54,687 INFO L290 TraceCheckUtils]: 111: Hoare triple {18506#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18513#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:55:54,688 INFO L290 TraceCheckUtils]: 112: Hoare triple {18513#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} assume !false; {18513#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:55:54,688 INFO L272 TraceCheckUtils]: 113: Hoare triple {18513#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,688 INFO L290 TraceCheckUtils]: 114: Hoare triple {18163#true} ~cond := #in~cond; {18311#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:54,689 INFO L290 TraceCheckUtils]: 115: Hoare triple {18311#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,689 INFO L290 TraceCheckUtils]: 116: Hoare triple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:55:54,695 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} {18513#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} #91#return; {18532#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} is VALID [2022-04-08 05:55:54,696 INFO L272 TraceCheckUtils]: 118: Hoare triple {18532#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:55:54,696 INFO L290 TraceCheckUtils]: 119: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:55:54,696 INFO L290 TraceCheckUtils]: 120: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:55:54,696 INFO L290 TraceCheckUtils]: 121: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:55:54,697 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {18163#true} {18532#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} #93#return; {18532#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} is VALID [2022-04-08 05:55:54,698 INFO L272 TraceCheckUtils]: 123: Hoare triple {18532#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18551#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:55:54,698 INFO L290 TraceCheckUtils]: 124: Hoare triple {18551#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18555#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:55:54,698 INFO L290 TraceCheckUtils]: 125: Hoare triple {18555#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18164#false} is VALID [2022-04-08 05:55:54,698 INFO L290 TraceCheckUtils]: 126: Hoare triple {18164#false} assume !false; {18164#false} is VALID [2022-04-08 05:55:54,699 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 70 proven. 94 refuted. 0 times theorem prover too weak. 325 trivial. 0 not checked. [2022-04-08 05:55:54,699 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:56:52,591 INFO L290 TraceCheckUtils]: 126: Hoare triple {18164#false} assume !false; {18164#false} is VALID [2022-04-08 05:56:52,592 INFO L290 TraceCheckUtils]: 125: Hoare triple {18555#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18164#false} is VALID [2022-04-08 05:56:52,592 INFO L290 TraceCheckUtils]: 124: Hoare triple {18551#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18555#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:56:52,593 INFO L272 TraceCheckUtils]: 123: Hoare triple {18571#(= 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)); {18551#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:56:52,594 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {18163#true} {18571#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #93#return; {18571#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:56:52,594 INFO L290 TraceCheckUtils]: 121: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:52,594 INFO L290 TraceCheckUtils]: 120: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:52,594 INFO L290 TraceCheckUtils]: 119: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:52,594 INFO L272 TraceCheckUtils]: 118: Hoare triple {18571#(= 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)); {18163#true} is VALID [2022-04-08 05:56:52,595 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} {18590#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {18571#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:56:52,595 INFO L290 TraceCheckUtils]: 116: Hoare triple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:52,596 INFO L290 TraceCheckUtils]: 115: Hoare triple {18600#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:52,596 INFO L290 TraceCheckUtils]: 114: Hoare triple {18163#true} ~cond := #in~cond; {18600#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:56:52,596 INFO L272 TraceCheckUtils]: 113: Hoare triple {18590#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {18163#true} is VALID [2022-04-08 05:56:52,597 INFO L290 TraceCheckUtils]: 112: Hoare triple {18590#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {18590#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:56:52,597 INFO L290 TraceCheckUtils]: 111: Hoare triple {18571#(= 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; {18590#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 05:56:52,597 INFO L290 TraceCheckUtils]: 110: Hoare triple {18571#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {18571#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:56:54,599 WARN L290 TraceCheckUtils]: 109: Hoare triple {18616#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18571#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-08 05:56:54,600 INFO L290 TraceCheckUtils]: 108: Hoare triple {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {18616#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 05:56:54,601 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {18163#true} {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #97#return; {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:56:54,601 INFO L290 TraceCheckUtils]: 106: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:54,601 INFO L290 TraceCheckUtils]: 105: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:54,601 INFO L290 TraceCheckUtils]: 104: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:54,601 INFO L272 TraceCheckUtils]: 103: Hoare triple {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} 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)); {18163#true} is VALID [2022-04-08 05:56:54,602 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {18163#true} {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #95#return; {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:56:54,602 INFO L290 TraceCheckUtils]: 101: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:54,602 INFO L290 TraceCheckUtils]: 100: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:54,602 INFO L290 TraceCheckUtils]: 99: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:54,602 INFO L272 TraceCheckUtils]: 98: Hoare triple {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:54,603 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {18163#true} {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #93#return; {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:56:54,603 INFO L290 TraceCheckUtils]: 96: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:54,603 INFO L290 TraceCheckUtils]: 95: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:54,603 INFO L290 TraceCheckUtils]: 94: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:54,603 INFO L272 TraceCheckUtils]: 93: Hoare triple {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:54,603 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18163#true} {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #91#return; {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:56:54,604 INFO L290 TraceCheckUtils]: 91: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:54,604 INFO L290 TraceCheckUtils]: 90: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:54,604 INFO L290 TraceCheckUtils]: 89: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:54,604 INFO L272 TraceCheckUtils]: 88: Hoare triple {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:54,604 INFO L290 TraceCheckUtils]: 87: Hoare triple {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !false; {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:56:55,130 INFO L290 TraceCheckUtils]: 86: Hoare triple {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18620#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:56:55,131 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {18163#true} {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:56:55,131 INFO L290 TraceCheckUtils]: 84: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,131 INFO L290 TraceCheckUtils]: 83: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,131 INFO L290 TraceCheckUtils]: 82: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,131 INFO L272 TraceCheckUtils]: 81: Hoare triple {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} 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)); {18163#true} is VALID [2022-04-08 05:56:55,132 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18163#true} {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:56:55,132 INFO L290 TraceCheckUtils]: 79: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,132 INFO L290 TraceCheckUtils]: 78: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,132 INFO L290 TraceCheckUtils]: 77: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,132 INFO L272 TraceCheckUtils]: 76: Hoare triple {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,133 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {18687#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:56:55,133 INFO L290 TraceCheckUtils]: 74: Hoare triple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:55,133 INFO L290 TraceCheckUtils]: 73: Hoare triple {18600#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:55,134 INFO L290 TraceCheckUtils]: 72: Hoare triple {18163#true} ~cond := #in~cond; {18600#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:56:55,134 INFO L272 TraceCheckUtils]: 71: Hoare triple {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,134 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {18163#true} {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:56:55,135 INFO L290 TraceCheckUtils]: 69: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,135 INFO L290 TraceCheckUtils]: 68: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,135 INFO L290 TraceCheckUtils]: 67: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,135 INFO L272 TraceCheckUtils]: 66: Hoare triple {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,135 INFO L290 TraceCheckUtils]: 65: Hoare triple {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:56:55,136 INFO L290 TraceCheckUtils]: 64: Hoare triple {18755#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18721#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:56:55,136 INFO L290 TraceCheckUtils]: 63: Hoare triple {18755#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {18755#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-08 05:56:55,223 INFO L290 TraceCheckUtils]: 62: Hoare triple {18762#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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; {18755#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-08 05:56:55,223 INFO L290 TraceCheckUtils]: 61: Hoare triple {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18762#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:56:55,224 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18163#true} {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:56:55,224 INFO L290 TraceCheckUtils]: 59: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,225 INFO L290 TraceCheckUtils]: 58: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,225 INFO L290 TraceCheckUtils]: 57: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,225 INFO L272 TraceCheckUtils]: 56: Hoare triple {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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)); {18163#true} is VALID [2022-04-08 05:56:55,226 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18163#true} {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:56:55,226 INFO L290 TraceCheckUtils]: 54: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,226 INFO L290 TraceCheckUtils]: 53: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,226 INFO L290 TraceCheckUtils]: 52: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,226 INFO L272 TraceCheckUtils]: 51: Hoare triple {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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)); {18163#true} is VALID [2022-04-08 05:56:55,227 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #93#return; {18766#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:56:55,227 INFO L290 TraceCheckUtils]: 49: Hoare triple {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:55,228 INFO L290 TraceCheckUtils]: 48: Hoare triple {18600#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18315#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:56:55,228 INFO L290 TraceCheckUtils]: 47: Hoare triple {18163#true} ~cond := #in~cond; {18600#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:56:55,228 INFO L272 TraceCheckUtils]: 46: Hoare triple {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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)); {18163#true} is VALID [2022-04-08 05:56:55,229 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {18163#true} {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #91#return; {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:56:55,229 INFO L290 TraceCheckUtils]: 44: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,229 INFO L290 TraceCheckUtils]: 43: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,229 INFO L290 TraceCheckUtils]: 42: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,229 INFO L272 TraceCheckUtils]: 41: Hoare triple {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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)); {18163#true} is VALID [2022-04-08 05:56:55,229 INFO L290 TraceCheckUtils]: 40: Hoare triple {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 39: Hoare triple {18163#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18800#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 38: Hoare triple {18163#true} assume !false; {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18163#true} {18163#true} #89#return; {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 36: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 35: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 34: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L272 TraceCheckUtils]: 33: Hoare triple {18163#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {18163#true} {18163#true} #87#return; {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 31: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 30: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,230 INFO L290 TraceCheckUtils]: 29: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L272 TraceCheckUtils]: 28: Hoare triple {18163#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 27: Hoare triple {18163#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; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18163#true} {18163#true} #85#return; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 25: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 24: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 23: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L272 TraceCheckUtils]: 22: Hoare triple {18163#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18163#true} {18163#true} #83#return; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 20: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 19: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 18: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L272 TraceCheckUtils]: 17: Hoare triple {18163#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {18163#true} {18163#true} #81#return; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 15: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 14: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 13: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L272 TraceCheckUtils]: 12: Hoare triple {18163#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L290 TraceCheckUtils]: 11: Hoare triple {18163#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18163#true} is VALID [2022-04-08 05:56:55,231 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18163#true} {18163#true} #79#return; {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L290 TraceCheckUtils]: 9: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {18163#true} assume !(0 == ~cond); {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L290 TraceCheckUtils]: 7: Hoare triple {18163#true} ~cond := #in~cond; {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L272 TraceCheckUtils]: 6: Hoare triple {18163#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L290 TraceCheckUtils]: 5: Hoare triple {18163#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; {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L272 TraceCheckUtils]: 4: Hoare triple {18163#true} call #t~ret6 := main(); {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18163#true} {18163#true} #103#return; {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L290 TraceCheckUtils]: 2: Hoare triple {18163#true} assume true; {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L290 TraceCheckUtils]: 1: Hoare triple {18163#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); {18163#true} is VALID [2022-04-08 05:56:55,232 INFO L272 TraceCheckUtils]: 0: Hoare triple {18163#true} call ULTIMATE.init(); {18163#true} is VALID [2022-04-08 05:56:55,233 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 89 proven. 75 refuted. 0 times theorem prover too weak. 325 trivial. 0 not checked. [2022-04-08 05:56:55,233 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:56:55,233 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1162236857] [2022-04-08 05:56:55,233 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:56:55,233 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [438171907] [2022-04-08 05:56:55,233 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [438171907] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:56:55,233 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:56:55,233 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 16] total 29 [2022-04-08 05:56:55,234 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:56:55,234 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [245830132] [2022-04-08 05:56:55,234 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [245830132] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:56:55,234 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:56:55,234 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-08 05:56:55,234 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [586754542] [2022-04-08 05:56:55,234 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:56:55,234 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) Word has length 127 [2022-04-08 05:56:55,235 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:56:55,235 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-08 05:56:55,314 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:56:55,314 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-08 05:56:55,315 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:56:55,315 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-08 05:56:55,315 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=168, Invalid=644, Unknown=0, NotChecked=0, Total=812 [2022-04-08 05:56:55,315 INFO L87 Difference]: Start difference. First operand 194 states and 262 transitions. Second operand has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-08 05:57:01,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:57:01,717 INFO L93 Difference]: Finished difference Result 265 states and 355 transitions. [2022-04-08 05:57:01,717 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 05:57:01,717 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) Word has length 127 [2022-04-08 05:57:01,717 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:57:01,717 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-08 05:57:01,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 135 transitions. [2022-04-08 05:57:01,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-08 05:57:01,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 135 transitions. [2022-04-08 05:57:01,723 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 135 transitions. [2022-04-08 05:57:01,934 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:57:01,941 INFO L225 Difference]: With dead ends: 265 [2022-04-08 05:57:01,941 INFO L226 Difference]: Without dead ends: 263 [2022-04-08 05:57:01,941 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 258 GetRequests, 225 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 240 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=227, Invalid=895, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 05:57:01,942 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 36 mSDsluCounter, 295 mSDsCounter, 0 mSdLazyCounter, 841 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 345 SdHoareTripleChecker+Invalid, 887 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 841 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-08 05:57:01,942 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 345 Invalid, 887 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 841 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-08 05:57:01,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 263 states. [2022-04-08 05:57:02,598 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 263 to 260. [2022-04-08 05:57:02,599 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:57:02,599 INFO L82 GeneralOperation]: Start isEquivalent. First operand 263 states. Second operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:57:02,599 INFO L74 IsIncluded]: Start isIncluded. First operand 263 states. Second operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:57:02,600 INFO L87 Difference]: Start difference. First operand 263 states. Second operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:57:02,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:57:02,609 INFO L93 Difference]: Finished difference Result 263 states and 353 transitions. [2022-04-08 05:57:02,609 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 353 transitions. [2022-04-08 05:57:02,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:57:02,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:57:02,611 INFO L74 IsIncluded]: Start isIncluded. First operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 263 states. [2022-04-08 05:57:02,611 INFO L87 Difference]: Start difference. First operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 263 states. [2022-04-08 05:57:02,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:57:02,620 INFO L93 Difference]: Finished difference Result 263 states and 353 transitions. [2022-04-08 05:57:02,620 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 353 transitions. [2022-04-08 05:57:02,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:57:02,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:57:02,621 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:57:02,621 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:57:02,622 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:57:02,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 260 states to 260 states and 350 transitions. [2022-04-08 05:57:02,632 INFO L78 Accepts]: Start accepts. Automaton has 260 states and 350 transitions. Word has length 127 [2022-04-08 05:57:02,632 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:57:02,632 INFO L478 AbstractCegarLoop]: Abstraction has 260 states and 350 transitions. [2022-04-08 05:57:02,632 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-08 05:57:02,632 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 260 states and 350 transitions. [2022-04-08 05:57:03,468 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 350 edges. 350 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:57:03,468 INFO L276 IsEmpty]: Start isEmpty. Operand 260 states and 350 transitions. [2022-04-08 05:57:03,472 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 130 [2022-04-08 05:57:03,472 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:57:03,472 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:57:03,498 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:57:03,685 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:57:03,686 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:57:03,686 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:57:03,686 INFO L85 PathProgramCache]: Analyzing trace with hash -2138166692, now seen corresponding path program 7 times [2022-04-08 05:57:03,686 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:57:03,686 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2137145853] [2022-04-08 05:57:03,687 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:57:03,687 INFO L85 PathProgramCache]: Analyzing trace with hash -2138166692, now seen corresponding path program 8 times [2022-04-08 05:57:03,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:57:03,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [214783794] [2022-04-08 05:57:03,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:57:03,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:57:03,707 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:57:03,707 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1483637634] [2022-04-08 05:57:03,707 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:57:03,707 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:57:03,707 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:57:03,708 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:57:03,735 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:57:03,794 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:57:03,794 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:57:03,795 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 71 conjunts are in the unsatisfiable core [2022-04-08 05:57:03,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:57:03,820 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:57:15,528 INFO L272 TraceCheckUtils]: 0: Hoare triple {20539#true} call ULTIMATE.init(); {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {20539#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); {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20539#true} {20539#true} #103#return; {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {20539#true} call #t~ret6 := main(); {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {20539#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; {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L272 TraceCheckUtils]: 6: Hoare triple {20539#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L290 TraceCheckUtils]: 7: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L290 TraceCheckUtils]: 8: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L290 TraceCheckUtils]: 9: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20539#true} {20539#true} #79#return; {20539#true} is VALID [2022-04-08 05:57:15,528 INFO L290 TraceCheckUtils]: 11: Hoare triple {20539#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20539#true} is VALID [2022-04-08 05:57:15,529 INFO L272 TraceCheckUtils]: 12: Hoare triple {20539#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,529 INFO L290 TraceCheckUtils]: 15: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,529 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20539#true} {20539#true} #81#return; {20539#true} is VALID [2022-04-08 05:57:15,529 INFO L272 TraceCheckUtils]: 17: Hoare triple {20539#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,529 INFO L290 TraceCheckUtils]: 18: Hoare triple {20539#true} ~cond := #in~cond; {20598#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:57:15,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {20598#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {20602#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:57:15,530 INFO L290 TraceCheckUtils]: 20: Hoare triple {20602#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {20602#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:57:15,530 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20602#(not (= |assume_abort_if_not_#in~cond| 0))} {20539#true} #83#return; {20609#(<= 1 main_~x~0)} is VALID [2022-04-08 05:57:15,530 INFO L272 TraceCheckUtils]: 22: Hoare triple {20609#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,530 INFO L290 TraceCheckUtils]: 23: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,530 INFO L290 TraceCheckUtils]: 24: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,530 INFO L290 TraceCheckUtils]: 25: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,531 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20539#true} {20609#(<= 1 main_~x~0)} #85#return; {20609#(<= 1 main_~x~0)} is VALID [2022-04-08 05:57:15,531 INFO L290 TraceCheckUtils]: 27: Hoare triple {20609#(<= 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; {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,531 INFO L272 TraceCheckUtils]: 28: Hoare triple {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,531 INFO L290 TraceCheckUtils]: 29: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,531 INFO L290 TraceCheckUtils]: 30: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,531 INFO L290 TraceCheckUtils]: 31: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,532 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {20539#true} {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,532 INFO L272 TraceCheckUtils]: 33: Hoare triple {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,532 INFO L290 TraceCheckUtils]: 34: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,532 INFO L290 TraceCheckUtils]: 35: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,532 INFO L290 TraceCheckUtils]: 36: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,533 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {20539#true} {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,533 INFO L290 TraceCheckUtils]: 38: Hoare triple {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,534 INFO L290 TraceCheckUtils]: 39: Hoare triple {20628#(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_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,534 INFO L290 TraceCheckUtils]: 40: Hoare triple {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,534 INFO L272 TraceCheckUtils]: 41: Hoare triple {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,534 INFO L290 TraceCheckUtils]: 42: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,534 INFO L290 TraceCheckUtils]: 43: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,534 INFO L290 TraceCheckUtils]: 44: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,535 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {20539#true} {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,535 INFO L272 TraceCheckUtils]: 46: Hoare triple {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,535 INFO L290 TraceCheckUtils]: 47: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,535 INFO L290 TraceCheckUtils]: 48: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,535 INFO L290 TraceCheckUtils]: 49: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,536 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {20539#true} {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,536 INFO L272 TraceCheckUtils]: 51: Hoare triple {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,536 INFO L290 TraceCheckUtils]: 52: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,536 INFO L290 TraceCheckUtils]: 53: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,536 INFO L290 TraceCheckUtils]: 54: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,537 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {20539#true} {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,537 INFO L272 TraceCheckUtils]: 56: Hoare triple {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,537 INFO L290 TraceCheckUtils]: 57: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,537 INFO L290 TraceCheckUtils]: 58: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,537 INFO L290 TraceCheckUtils]: 59: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,538 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {20539#true} {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,539 INFO L290 TraceCheckUtils]: 61: Hoare triple {20665#(and (= main_~r~0 0) (= main_~c~0 main_~a~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_~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; {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,540 INFO L290 TraceCheckUtils]: 62: Hoare triple {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,540 INFO L272 TraceCheckUtils]: 63: Hoare triple {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,540 INFO L290 TraceCheckUtils]: 64: Hoare triple {20539#true} ~cond := #in~cond; {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:57:15,541 INFO L290 TraceCheckUtils]: 65: Hoare triple {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,541 INFO L290 TraceCheckUtils]: 66: Hoare triple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,542 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,542 INFO L272 TraceCheckUtils]: 68: Hoare triple {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,542 INFO L290 TraceCheckUtils]: 69: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,542 INFO L290 TraceCheckUtils]: 70: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,542 INFO L290 TraceCheckUtils]: 71: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,542 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {20539#true} {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,543 INFO L272 TraceCheckUtils]: 73: Hoare triple {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,543 INFO L290 TraceCheckUtils]: 74: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,543 INFO L290 TraceCheckUtils]: 75: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,543 INFO L290 TraceCheckUtils]: 76: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,543 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {20539#true} {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,544 INFO L272 TraceCheckUtils]: 78: Hoare triple {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,544 INFO L290 TraceCheckUtils]: 79: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,544 INFO L290 TraceCheckUtils]: 80: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,544 INFO L290 TraceCheckUtils]: 81: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,544 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {20539#true} {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,545 INFO L290 TraceCheckUtils]: 83: Hoare triple {20732#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~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_~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; {20801#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~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_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,546 INFO L290 TraceCheckUtils]: 84: Hoare triple {20801#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~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_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} assume !false; {20801#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~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_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,546 INFO L272 TraceCheckUtils]: 85: Hoare triple {20801#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,546 INFO L290 TraceCheckUtils]: 86: Hoare triple {20539#true} ~cond := #in~cond; {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:57:15,547 INFO L290 TraceCheckUtils]: 87: Hoare triple {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,547 INFO L290 TraceCheckUtils]: 88: Hoare triple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,549 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} {20801#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~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_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} #91#return; {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} is VALID [2022-04-08 05:57:15,549 INFO L272 TraceCheckUtils]: 90: Hoare triple {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,549 INFO L290 TraceCheckUtils]: 91: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,549 INFO L290 TraceCheckUtils]: 92: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,549 INFO L290 TraceCheckUtils]: 93: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,550 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {20539#true} {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} #93#return; {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} is VALID [2022-04-08 05:57:15,550 INFO L272 TraceCheckUtils]: 95: Hoare triple {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20539#true} is VALID [2022-04-08 05:57:15,550 INFO L290 TraceCheckUtils]: 96: Hoare triple {20539#true} ~cond := #in~cond; {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:57:15,551 INFO L290 TraceCheckUtils]: 97: Hoare triple {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,551 INFO L290 TraceCheckUtils]: 98: Hoare triple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,552 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} #95#return; {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} is VALID [2022-04-08 05:57:15,552 INFO L272 TraceCheckUtils]: 100: Hoare triple {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,552 INFO L290 TraceCheckUtils]: 101: Hoare triple {20539#true} ~cond := #in~cond; {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:57:15,552 INFO L290 TraceCheckUtils]: 102: Hoare triple {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,553 INFO L290 TraceCheckUtils]: 103: Hoare triple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,553 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} #97#return; {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} is VALID [2022-04-08 05:57:15,554 INFO L290 TraceCheckUtils]: 105: Hoare triple {20820#(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))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~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_~p~0 1))} assume !(~c~0 >= ~b~0); {20869#(and (= main_~r~0 0) (< main_~c~0 main_~y~0) (= main_~s~0 1) (<= (* main_~y~0 2) (+ main_~c~0 (* main_~k~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_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= (* main_~y~0 2) (* main_~k~0 main_~y~0)) (= main_~p~0 1))} is VALID [2022-04-08 05:57:15,556 INFO L290 TraceCheckUtils]: 106: Hoare triple {20869#(and (= main_~r~0 0) (< main_~c~0 main_~y~0) (= main_~s~0 1) (<= (* main_~y~0 2) (+ main_~c~0 (* main_~k~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_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= (* main_~y~0 2) (* main_~k~0 main_~y~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; {20873#(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_~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:57:15,557 INFO L290 TraceCheckUtils]: 107: Hoare triple {20873#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {20873#(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_~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:57:15,557 INFO L290 TraceCheckUtils]: 108: Hoare triple {20873#(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_~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; {20873#(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_~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:57:15,558 INFO L290 TraceCheckUtils]: 109: Hoare triple {20873#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {20873#(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_~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:57:15,558 INFO L272 TraceCheckUtils]: 110: Hoare triple {20873#(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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,558 INFO L290 TraceCheckUtils]: 111: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,558 INFO L290 TraceCheckUtils]: 112: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,558 INFO L290 TraceCheckUtils]: 113: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,559 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {20539#true} {20873#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {20873#(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_~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:57:15,559 INFO L272 TraceCheckUtils]: 115: Hoare triple {20873#(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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,559 INFO L290 TraceCheckUtils]: 116: Hoare triple {20539#true} ~cond := #in~cond; {20539#true} is VALID [2022-04-08 05:57:15,559 INFO L290 TraceCheckUtils]: 117: Hoare triple {20539#true} assume !(0 == ~cond); {20539#true} is VALID [2022-04-08 05:57:15,559 INFO L290 TraceCheckUtils]: 118: Hoare triple {20539#true} assume true; {20539#true} is VALID [2022-04-08 05:57:15,560 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {20539#true} {20873#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {20873#(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_~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:57:15,560 INFO L272 TraceCheckUtils]: 120: Hoare triple {20873#(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_~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)); {20539#true} is VALID [2022-04-08 05:57:15,560 INFO L290 TraceCheckUtils]: 121: Hoare triple {20539#true} ~cond := #in~cond; {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:57:15,560 INFO L290 TraceCheckUtils]: 122: Hoare triple {20742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,560 INFO L290 TraceCheckUtils]: 123: Hoare triple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:57:15,561 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {20746#(not (= |__VERIFIER_assert_#in~cond| 0))} {20873#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {20873#(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_~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:57:15,564 INFO L272 TraceCheckUtils]: 125: Hoare triple {20873#(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_~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)); {20931#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:57:15,564 INFO L290 TraceCheckUtils]: 126: Hoare triple {20931#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20935#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:57:15,565 INFO L290 TraceCheckUtils]: 127: Hoare triple {20935#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20540#false} is VALID [2022-04-08 05:57:15,565 INFO L290 TraceCheckUtils]: 128: Hoare triple {20540#false} assume !false; {20540#false} is VALID [2022-04-08 05:57:15,566 INFO L134 CoverageAnalysis]: Checked inductivity of 545 backedges. 142 proven. 88 refuted. 0 times theorem prover too weak. 315 trivial. 0 not checked. [2022-04-08 05:57:15,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:59:04,657 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 05:59:10,316 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:59:10,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [214783794] [2022-04-08 05:59:10,317 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:59:10,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1483637634] [2022-04-08 05:59:10,317 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1483637634] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 05:59:10,317 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:59:10,317 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-04-08 05:59:10,317 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:59:10,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2137145853] [2022-04-08 05:59:10,317 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2137145853] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:59:10,317 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:59:10,317 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 05:59:10,317 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1257680884] [2022-04-08 05:59:10,317 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:59:10,318 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) Word has length 129 [2022-04-08 05:59:10,318 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:59:10,318 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 05:59:10,456 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:59:10,456 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 05:59:10,456 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:10,456 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 05:59:10,457 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=114, Invalid=436, Unknown=2, NotChecked=0, Total=552 [2022-04-08 05:59:10,457 INFO L87 Difference]: Start difference. First operand 260 states and 350 transitions. Second operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 05:59:19,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:19,893 INFO L93 Difference]: Finished difference Result 268 states and 357 transitions. [2022-04-08 05:59:19,893 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 05:59:19,893 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) Word has length 129 [2022-04-08 05:59:19,894 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:59:19,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 05:59:19,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 113 transitions. [2022-04-08 05:59:19,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 05:59:19,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 113 transitions. [2022-04-08 05:59:19,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 113 transitions. [2022-04-08 05:59:20,106 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:20,112 INFO L225 Difference]: With dead ends: 268 [2022-04-08 05:59:20,112 INFO L226 Difference]: Without dead ends: 266 [2022-04-08 05:59:20,113 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 141 SyntacticMatches, 5 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 180 ImplicationChecksByTransitivity, 7.9s TimeCoverageRelationStatistics Valid=159, Invalid=650, Unknown=3, NotChecked=0, Total=812 [2022-04-08 05:59:20,113 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 35 mSDsluCounter, 203 mSDsCounter, 0 mSdLazyCounter, 812 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 860 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 812 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.6s IncrementalHoareTripleChecker+Time [2022-04-08 05:59:20,114 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [45 Valid, 246 Invalid, 860 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 812 Invalid, 0 Unknown, 0 Unchecked, 2.6s Time] [2022-04-08 05:59:20,114 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 266 states. [2022-04-08 05:59:20,769 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 266 to 264. [2022-04-08 05:59:20,770 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:59:20,770 INFO L82 GeneralOperation]: Start isEquivalent. First operand 266 states. Second operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:59:20,771 INFO L74 IsIncluded]: Start isIncluded. First operand 266 states. Second operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:59:20,771 INFO L87 Difference]: Start difference. First operand 266 states. Second operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:59:20,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:20,779 INFO L93 Difference]: Finished difference Result 266 states and 355 transitions. [2022-04-08 05:59:20,780 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 355 transitions. [2022-04-08 05:59:20,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:20,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:20,781 INFO L74 IsIncluded]: Start isIncluded. First operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 266 states. [2022-04-08 05:59:20,782 INFO L87 Difference]: Start difference. First operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 266 states. [2022-04-08 05:59:20,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:20,793 INFO L93 Difference]: Finished difference Result 266 states and 355 transitions. [2022-04-08 05:59:20,793 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 355 transitions. [2022-04-08 05:59:20,794 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:20,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:20,794 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:59:20,794 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:59:20,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-08 05:59:20,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 264 states to 264 states and 353 transitions. [2022-04-08 05:59:20,805 INFO L78 Accepts]: Start accepts. Automaton has 264 states and 353 transitions. Word has length 129 [2022-04-08 05:59:20,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:59:20,805 INFO L478 AbstractCegarLoop]: Abstraction has 264 states and 353 transitions. [2022-04-08 05:59:20,805 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 05:59:20,805 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 264 states and 353 transitions. [2022-04-08 05:59:21,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 353 edges. 353 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:21,716 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 353 transitions. [2022-04-08 05:59:21,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2022-04-08 05:59:21,717 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:59:21,717 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 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:59:21,734 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:59:21,917 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:59:21,918 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:59:21,918 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:59:21,918 INFO L85 PathProgramCache]: Analyzing trace with hash -1899875875, now seen corresponding path program 9 times [2022-04-08 05:59:21,918 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:21,918 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [182888754] [2022-04-08 05:59:21,918 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:59:21,919 INFO L85 PathProgramCache]: Analyzing trace with hash -1899875875, now seen corresponding path program 10 times [2022-04-08 05:59:21,919 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:59:21,919 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [656416235] [2022-04-08 05:59:21,919 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:59:21,919 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:59:21,929 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:59:21,930 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [47191539] [2022-04-08 05:59:21,930 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:59:21,930 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:59:21,930 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:59:21,931 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:59:21,949 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:59:22,022 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:59:22,022 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:59:22,024 INFO L263 TraceCheckSpWp]: Trace formula consists of 275 conjuncts, 79 conjunts are in the unsatisfiable core [2022-04-08 05:59:22,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:59:22,054 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:59:24,169 INFO L272 TraceCheckUtils]: 0: Hoare triple {22675#true} call ULTIMATE.init(); {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {22675#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); {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22675#true} {22675#true} #103#return; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L272 TraceCheckUtils]: 4: Hoare triple {22675#true} call #t~ret6 := main(); {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 5: Hoare triple {22675#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; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L272 TraceCheckUtils]: 6: Hoare triple {22675#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 7: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 8: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 9: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22675#true} {22675#true} #79#return; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 11: Hoare triple {22675#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L272 TraceCheckUtils]: 12: Hoare triple {22675#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 13: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 14: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L290 TraceCheckUtils]: 15: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {22675#true} {22675#true} #81#return; {22675#true} is VALID [2022-04-08 05:59:24,170 INFO L272 TraceCheckUtils]: 17: Hoare triple {22675#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L290 TraceCheckUtils]: 18: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L290 TraceCheckUtils]: 19: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22675#true} {22675#true} #83#return; {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L272 TraceCheckUtils]: 22: Hoare triple {22675#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L290 TraceCheckUtils]: 23: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L290 TraceCheckUtils]: 24: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L290 TraceCheckUtils]: 25: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22675#true} {22675#true} #85#return; {22675#true} is VALID [2022-04-08 05:59:24,171 INFO L290 TraceCheckUtils]: 27: Hoare triple {22675#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; {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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:59:24,172 INFO L272 TraceCheckUtils]: 28: Hoare triple {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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)); {22675#true} is VALID [2022-04-08 05:59:24,172 INFO L290 TraceCheckUtils]: 29: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,172 INFO L290 TraceCheckUtils]: 30: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,172 INFO L290 TraceCheckUtils]: 31: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,172 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {22675#true} {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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))} #87#return; {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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:59:24,172 INFO L272 TraceCheckUtils]: 33: Hoare triple {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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)); {22675#true} is VALID [2022-04-08 05:59:24,172 INFO L290 TraceCheckUtils]: 34: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,173 INFO L290 TraceCheckUtils]: 35: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,173 INFO L290 TraceCheckUtils]: 36: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,180 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22675#true} {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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))} #89#return; {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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:59:24,181 INFO L290 TraceCheckUtils]: 38: Hoare triple {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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 !false; {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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:59:24,181 INFO L290 TraceCheckUtils]: 39: Hoare triple {22761#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~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; {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:59:24,182 INFO L290 TraceCheckUtils]: 40: Hoare triple {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:59:24,182 INFO L272 TraceCheckUtils]: 41: Hoare triple {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~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)); {22675#true} is VALID [2022-04-08 05:59:24,182 INFO L290 TraceCheckUtils]: 42: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,182 INFO L290 TraceCheckUtils]: 43: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,182 INFO L290 TraceCheckUtils]: 44: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,183 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {22675#true} {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} #91#return; {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:59:24,183 INFO L272 TraceCheckUtils]: 46: Hoare triple {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~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)); {22675#true} is VALID [2022-04-08 05:59:24,184 INFO L290 TraceCheckUtils]: 47: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,184 INFO L290 TraceCheckUtils]: 48: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,184 INFO L290 TraceCheckUtils]: 49: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,185 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {22675#true} {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} #93#return; {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:59:24,185 INFO L272 TraceCheckUtils]: 51: Hoare triple {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~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)); {22675#true} is VALID [2022-04-08 05:59:24,185 INFO L290 TraceCheckUtils]: 52: Hoare triple {22675#true} ~cond := #in~cond; {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:24,186 INFO L290 TraceCheckUtils]: 53: Hoare triple {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,186 INFO L290 TraceCheckUtils]: 54: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,187 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:59:24,187 INFO L272 TraceCheckUtils]: 56: Hoare triple {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~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)); {22675#true} is VALID [2022-04-08 05:59:24,188 INFO L290 TraceCheckUtils]: 57: Hoare triple {22675#true} ~cond := #in~cond; {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:24,188 INFO L290 TraceCheckUtils]: 58: Hoare triple {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,188 INFO L290 TraceCheckUtils]: 59: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,190 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {22798#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {22864#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:59:24,191 INFO L290 TraceCheckUtils]: 61: Hoare triple {22864#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 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_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {22868#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:59:24,191 INFO L290 TraceCheckUtils]: 62: Hoare triple {22868#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~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; {22872#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,192 INFO L290 TraceCheckUtils]: 63: Hoare triple {22872#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {22872#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,193 INFO L290 TraceCheckUtils]: 64: Hoare triple {22872#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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; {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,194 INFO L290 TraceCheckUtils]: 65: Hoare triple {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,194 INFO L272 TraceCheckUtils]: 66: Hoare triple {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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)); {22675#true} is VALID [2022-04-08 05:59:24,194 INFO L290 TraceCheckUtils]: 67: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,194 INFO L290 TraceCheckUtils]: 68: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,194 INFO L290 TraceCheckUtils]: 69: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,195 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {22675#true} {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,195 INFO L272 TraceCheckUtils]: 71: Hoare triple {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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)); {22675#true} is VALID [2022-04-08 05:59:24,195 INFO L290 TraceCheckUtils]: 72: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,195 INFO L290 TraceCheckUtils]: 73: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,195 INFO L290 TraceCheckUtils]: 74: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,196 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {22675#true} {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,196 INFO L272 TraceCheckUtils]: 76: Hoare triple {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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)); {22675#true} is VALID [2022-04-08 05:59:24,196 INFO L290 TraceCheckUtils]: 77: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,197 INFO L290 TraceCheckUtils]: 78: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,197 INFO L290 TraceCheckUtils]: 79: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,198 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {22675#true} {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,198 INFO L272 TraceCheckUtils]: 81: Hoare triple {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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)); {22675#true} is VALID [2022-04-08 05:59:24,198 INFO L290 TraceCheckUtils]: 82: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,198 INFO L290 TraceCheckUtils]: 83: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,198 INFO L290 TraceCheckUtils]: 84: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,199 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {22675#true} {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #97#return; {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~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:59:24,202 INFO L290 TraceCheckUtils]: 86: Hoare triple {22879#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~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; {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,203 INFO L290 TraceCheckUtils]: 87: Hoare triple {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,203 INFO L272 TraceCheckUtils]: 88: Hoare triple {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= 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)); {22675#true} is VALID [2022-04-08 05:59:24,203 INFO L290 TraceCheckUtils]: 89: Hoare triple {22675#true} ~cond := #in~cond; {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:24,203 INFO L290 TraceCheckUtils]: 90: Hoare triple {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,204 INFO L290 TraceCheckUtils]: 91: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,205 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,205 INFO L272 TraceCheckUtils]: 93: Hoare triple {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= 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)); {22675#true} is VALID [2022-04-08 05:59:24,205 INFO L290 TraceCheckUtils]: 94: Hoare triple {22675#true} ~cond := #in~cond; {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:24,206 INFO L290 TraceCheckUtils]: 95: Hoare triple {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,206 INFO L290 TraceCheckUtils]: 96: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,211 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {22946#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:24,211 INFO L272 TraceCheckUtils]: 98: Hoare triple {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= 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)); {22675#true} is VALID [2022-04-08 05:59:24,212 INFO L290 TraceCheckUtils]: 99: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,212 INFO L290 TraceCheckUtils]: 100: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,212 INFO L290 TraceCheckUtils]: 101: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,213 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {22675#true} {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #95#return; {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:24,213 INFO L272 TraceCheckUtils]: 103: Hoare triple {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 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)); {22675#true} is VALID [2022-04-08 05:59:24,213 INFO L290 TraceCheckUtils]: 104: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,213 INFO L290 TraceCheckUtils]: 105: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,213 INFO L290 TraceCheckUtils]: 106: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,214 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {22675#true} {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #97#return; {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:24,215 INFO L290 TraceCheckUtils]: 108: Hoare triple {22980#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {23014#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (< 0 main_~c~0) (= main_~s~0 0) (not (<= main_~x~0 main_~c~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 main_~x~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~p~0 main_~x~0) (* main_~y~0 main_~x~0) (* main_~c~0 main_~y~0))))} is VALID [2022-04-08 05:59:24,218 INFO L290 TraceCheckUtils]: 109: Hoare triple {23014#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (< 0 main_~c~0) (= main_~s~0 0) (not (<= main_~x~0 main_~c~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 main_~x~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~p~0 main_~x~0) (* main_~y~0 main_~x~0) (* main_~c~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; {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,219 INFO L290 TraceCheckUtils]: 110: Hoare triple {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,220 INFO L290 TraceCheckUtils]: 111: Hoare triple {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,220 INFO L290 TraceCheckUtils]: 112: Hoare triple {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,221 INFO L272 TraceCheckUtils]: 113: Hoare triple {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) 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)); {22675#true} is VALID [2022-04-08 05:59:24,221 INFO L290 TraceCheckUtils]: 114: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,221 INFO L290 TraceCheckUtils]: 115: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,221 INFO L290 TraceCheckUtils]: 116: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,222 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {22675#true} {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,222 INFO L272 TraceCheckUtils]: 118: Hoare triple {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) 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)); {22675#true} is VALID [2022-04-08 05:59:24,222 INFO L290 TraceCheckUtils]: 119: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 05:59:24,222 INFO L290 TraceCheckUtils]: 120: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 05:59:24,222 INFO L290 TraceCheckUtils]: 121: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 05:59:24,223 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {22675#true} {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,223 INFO L272 TraceCheckUtils]: 123: Hoare triple {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) 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)); {22675#true} is VALID [2022-04-08 05:59:24,224 INFO L290 TraceCheckUtils]: 124: Hoare triple {22675#true} ~cond := #in~cond; {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:24,224 INFO L290 TraceCheckUtils]: 125: Hoare triple {22838#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,225 INFO L290 TraceCheckUtils]: 126: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:24,225 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 05:59:24,228 INFO L272 TraceCheckUtils]: 128: Hoare triple {23018#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) 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)); {23076#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:59:24,229 INFO L290 TraceCheckUtils]: 129: Hoare triple {23076#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23080#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:24,229 INFO L290 TraceCheckUtils]: 130: Hoare triple {23080#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22676#false} is VALID [2022-04-08 05:59:24,229 INFO L290 TraceCheckUtils]: 131: Hoare triple {22676#false} assume !false; {22676#false} is VALID [2022-04-08 05:59:24,230 INFO L134 CoverageAnalysis]: Checked inductivity of 550 backedges. 103 proven. 117 refuted. 0 times theorem prover too weak. 330 trivial. 0 not checked. [2022-04-08 05:59:24,231 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:01:04,053 WARN L232 SmtUtils]: Spent 9.04s on a formula simplification that was a NOOP. DAG size: 52 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-08 06:01:27,746 INFO L290 TraceCheckUtils]: 131: Hoare triple {22676#false} assume !false; {22676#false} is VALID [2022-04-08 06:01:27,747 INFO L290 TraceCheckUtils]: 130: Hoare triple {23080#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22676#false} is VALID [2022-04-08 06:01:27,747 INFO L290 TraceCheckUtils]: 129: Hoare triple {23076#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23080#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:27,748 INFO L272 TraceCheckUtils]: 128: Hoare triple {23096#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {23076#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:01:27,749 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {23096#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} is VALID [2022-04-08 06:01:27,749 INFO L290 TraceCheckUtils]: 126: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:27,750 INFO L290 TraceCheckUtils]: 125: Hoare triple {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:27,750 INFO L290 TraceCheckUtils]: 124: Hoare triple {22675#true} ~cond := #in~cond; {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:01:27,750 INFO L272 TraceCheckUtils]: 123: Hoare triple {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {22675#true} is VALID [2022-04-08 06:01:27,751 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {22675#true} {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #93#return; {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:27,751 INFO L290 TraceCheckUtils]: 121: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:27,751 INFO L290 TraceCheckUtils]: 120: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:27,751 INFO L290 TraceCheckUtils]: 119: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:27,751 INFO L272 TraceCheckUtils]: 118: Hoare triple {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {22675#true} is VALID [2022-04-08 06:01:27,752 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {22675#true} {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #91#return; {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:27,752 INFO L290 TraceCheckUtils]: 116: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:27,752 INFO L290 TraceCheckUtils]: 115: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:27,753 INFO L290 TraceCheckUtils]: 114: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:27,753 INFO L272 TraceCheckUtils]: 113: Hoare triple {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:27,753 INFO L290 TraceCheckUtils]: 112: Hoare triple {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:27,754 INFO L290 TraceCheckUtils]: 111: Hoare triple {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= 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; {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:27,754 INFO L290 TraceCheckUtils]: 110: Hoare triple {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:29,756 WARN L290 TraceCheckUtils]: 109: Hoare triple {23156#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= (+ (* (+ (* (* 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; {23100#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is UNKNOWN [2022-04-08 06:01:29,757 INFO L290 TraceCheckUtils]: 108: Hoare triple {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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); {23156#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= (+ (* (+ (* (* 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 06:01:29,760 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {22675#true} {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #97#return; {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 06:01:29,760 INFO L290 TraceCheckUtils]: 106: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:29,760 INFO L290 TraceCheckUtils]: 105: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:29,760 INFO L290 TraceCheckUtils]: 104: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:29,760 INFO L272 TraceCheckUtils]: 103: Hoare triple {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)); {22675#true} is VALID [2022-04-08 06:01:29,761 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {22675#true} {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #95#return; {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 06:01:29,761 INFO L290 TraceCheckUtils]: 101: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:29,761 INFO L290 TraceCheckUtils]: 100: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:29,761 INFO L290 TraceCheckUtils]: 99: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:29,762 INFO L272 TraceCheckUtils]: 98: Hoare triple {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:29,763 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {23194#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #93#return; {23160#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 06:01:29,763 INFO L290 TraceCheckUtils]: 96: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:29,764 INFO L290 TraceCheckUtils]: 95: Hoare triple {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:29,764 INFO L290 TraceCheckUtils]: 94: Hoare triple {22675#true} ~cond := #in~cond; {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:01:29,764 INFO L272 TraceCheckUtils]: 93: Hoare triple {23194#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:29,766 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {23210#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {23194#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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 06:01:29,766 INFO L290 TraceCheckUtils]: 91: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:29,767 INFO L290 TraceCheckUtils]: 90: Hoare triple {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:29,767 INFO L290 TraceCheckUtils]: 89: Hoare triple {22675#true} ~cond := #in~cond; {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:01:29,767 INFO L272 TraceCheckUtils]: 88: Hoare triple {23210#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:29,768 INFO L290 TraceCheckUtils]: 87: Hoare triple {23210#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {23210#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 06:01:31,770 WARN L290 TraceCheckUtils]: 86: Hoare triple {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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; {23210#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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_~c~0 (* main_~b~0 main_~k~0)))))} is UNKNOWN [2022-04-08 06:01:31,771 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {22675#true} {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:31,771 INFO L290 TraceCheckUtils]: 84: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:31,771 INFO L290 TraceCheckUtils]: 83: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:31,771 INFO L290 TraceCheckUtils]: 82: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:31,772 INFO L272 TraceCheckUtils]: 81: Hoare triple {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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)); {22675#true} is VALID [2022-04-08 06:01:31,772 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {22675#true} {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:31,772 INFO L290 TraceCheckUtils]: 79: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:31,772 INFO L290 TraceCheckUtils]: 78: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:31,773 INFO L290 TraceCheckUtils]: 77: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:31,773 INFO L272 TraceCheckUtils]: 76: Hoare triple {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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)); {22675#true} is VALID [2022-04-08 06:01:31,773 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {22675#true} {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:31,773 INFO L290 TraceCheckUtils]: 74: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:31,774 INFO L290 TraceCheckUtils]: 73: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:31,774 INFO L290 TraceCheckUtils]: 72: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:31,774 INFO L272 TraceCheckUtils]: 71: Hoare triple {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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)); {22675#true} is VALID [2022-04-08 06:01:31,774 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {22675#true} {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:31,774 INFO L290 TraceCheckUtils]: 69: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:31,775 INFO L290 TraceCheckUtils]: 68: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:31,775 INFO L290 TraceCheckUtils]: 67: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:31,775 INFO L272 TraceCheckUtils]: 66: Hoare triple {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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)); {22675#true} is VALID [2022-04-08 06:01:31,776 INFO L290 TraceCheckUtils]: 65: Hoare triple {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:31,777 INFO L290 TraceCheckUtils]: 64: Hoare triple {23296#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23229#(or (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) main_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:31,777 INFO L290 TraceCheckUtils]: 63: Hoare triple {23296#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} assume !false; {23296#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 06:01:33,785 WARN L290 TraceCheckUtils]: 62: Hoare triple {23303#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~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; {23296#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} is UNKNOWN [2022-04-08 06:01:33,786 INFO L290 TraceCheckUtils]: 61: Hoare triple {23307#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} assume !(~c~0 >= ~b~0); {23303#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-08 06:01:33,788 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #97#return; {23307#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-08 06:01:33,788 INFO L290 TraceCheckUtils]: 59: Hoare triple {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:33,789 INFO L290 TraceCheckUtils]: 58: Hoare triple {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:33,789 INFO L290 TraceCheckUtils]: 57: Hoare triple {22675#true} ~cond := #in~cond; {23110#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:01:33,789 INFO L272 TraceCheckUtils]: 56: Hoare triple {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~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)); {22675#true} is VALID [2022-04-08 06:01:33,790 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22675#true} {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #95#return; {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-08 06:01:33,790 INFO L290 TraceCheckUtils]: 54: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,790 INFO L290 TraceCheckUtils]: 53: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,790 INFO L290 TraceCheckUtils]: 52: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,790 INFO L272 TraceCheckUtils]: 51: Hoare triple {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:33,791 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {22675#true} {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #93#return; {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-08 06:01:33,791 INFO L290 TraceCheckUtils]: 49: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,792 INFO L290 TraceCheckUtils]: 48: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,792 INFO L290 TraceCheckUtils]: 47: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,792 INFO L272 TraceCheckUtils]: 46: Hoare triple {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:33,793 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {22675#true} {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #91#return; {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-08 06:01:33,793 INFO L290 TraceCheckUtils]: 44: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,793 INFO L290 TraceCheckUtils]: 43: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,793 INFO L290 TraceCheckUtils]: 42: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,793 INFO L272 TraceCheckUtils]: 41: Hoare triple {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:33,794 INFO L290 TraceCheckUtils]: 40: Hoare triple {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} assume !false; {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-08 06:01:33,797 INFO L290 TraceCheckUtils]: 39: Hoare triple {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23311#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-08 06:01:33,798 INFO L290 TraceCheckUtils]: 38: Hoare triple {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:33,799 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22675#true} {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #89#return; {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:33,799 INFO L290 TraceCheckUtils]: 36: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,799 INFO L290 TraceCheckUtils]: 35: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,799 INFO L290 TraceCheckUtils]: 34: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,799 INFO L272 TraceCheckUtils]: 33: Hoare triple {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~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)); {22675#true} is VALID [2022-04-08 06:01:33,800 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {22675#true} {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #87#return; {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:33,800 INFO L290 TraceCheckUtils]: 31: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,800 INFO L290 TraceCheckUtils]: 30: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,800 INFO L290 TraceCheckUtils]: 29: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,800 INFO L272 TraceCheckUtils]: 28: Hoare triple {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~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)); {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 27: Hoare triple {22675#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; {23375#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:01:33,803 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22675#true} {22675#true} #85#return; {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 25: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 24: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 23: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L272 TraceCheckUtils]: 22: Hoare triple {22675#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22675#true} {22675#true} #83#return; {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 20: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 19: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 18: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L272 TraceCheckUtils]: 17: Hoare triple {22675#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {22675#true} {22675#true} #81#return; {22675#true} is VALID [2022-04-08 06:01:33,803 INFO L290 TraceCheckUtils]: 15: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 14: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 13: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L272 TraceCheckUtils]: 12: Hoare triple {22675#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 11: Hoare triple {22675#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22675#true} {22675#true} #79#return; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 9: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 8: Hoare triple {22675#true} assume !(0 == ~cond); {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 7: Hoare triple {22675#true} ~cond := #in~cond; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L272 TraceCheckUtils]: 6: Hoare triple {22675#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 5: Hoare triple {22675#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; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L272 TraceCheckUtils]: 4: Hoare triple {22675#true} call #t~ret6 := main(); {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22675#true} {22675#true} #103#return; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 2: Hoare triple {22675#true} assume true; {22675#true} is VALID [2022-04-08 06:01:33,804 INFO L290 TraceCheckUtils]: 1: Hoare triple {22675#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); {22675#true} is VALID [2022-04-08 06:01:33,805 INFO L272 TraceCheckUtils]: 0: Hoare triple {22675#true} call ULTIMATE.init(); {22675#true} is VALID [2022-04-08 06:01:33,806 INFO L134 CoverageAnalysis]: Checked inductivity of 550 backedges. 112 proven. 88 refuted. 2 times theorem prover too weak. 348 trivial. 0 not checked. [2022-04-08 06:01:33,806 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:01:33,806 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [656416235] [2022-04-08 06:01:33,806 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:01:33,806 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [47191539] [2022-04-08 06:01:33,806 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [47191539] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:01:33,806 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:01:33,806 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 18] total 29 [2022-04-08 06:01:33,806 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:01:33,807 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [182888754] [2022-04-08 06:01:33,807 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [182888754] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:01:33,807 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:01:33,807 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 06:01:33,807 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1512263559] [2022-04-08 06:01:33,808 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:01:33,810 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) Word has length 132 [2022-04-08 06:01:33,812 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:01:33,823 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-08 06:01:33,999 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 06:01:33,999 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 06:01:33,999 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:33,999 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 06:01:34,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=179, Invalid=631, Unknown=2, NotChecked=0, Total=812 [2022-04-08 06:01:34,000 INFO L87 Difference]: Start difference. First operand 264 states and 353 transitions. Second operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-08 06:01:43,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:43,823 INFO L93 Difference]: Finished difference Result 277 states and 364 transitions. [2022-04-08 06:01:43,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 06:01:43,824 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) Word has length 132 [2022-04-08 06:01:43,824 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:01:43,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-08 06:01:43,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-08 06:01:43,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-08 06:01:43,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-08 06:01:43,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 125 transitions. [2022-04-08 06:01:44,104 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 06:01:44,110 INFO L225 Difference]: With dead ends: 277 [2022-04-08 06:01:44,111 INFO L226 Difference]: Without dead ends: 275 [2022-04-08 06:01:44,111 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 269 GetRequests, 232 SyntacticMatches, 4 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 242 ImplicationChecksByTransitivity, 26.3s TimeCoverageRelationStatistics Valid=258, Invalid=929, Unknown=3, NotChecked=0, Total=1190 [2022-04-08 06:01:44,112 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 29 mSDsluCounter, 265 mSDsCounter, 0 mSdLazyCounter, 752 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 315 SdHoareTripleChecker+Invalid, 785 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 752 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:01:44,112 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 315 Invalid, 785 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 752 Invalid, 0 Unknown, 0 Unchecked, 3.0s Time] [2022-04-08 06:01:44,117 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states. [2022-04-08 06:01:45,080 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 239. [2022-04-08 06:01:45,080 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:01:45,081 INFO L82 GeneralOperation]: Start isEquivalent. First operand 275 states. Second operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 06:01:45,082 INFO L74 IsIncluded]: Start isIncluded. First operand 275 states. Second operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 06:01:45,082 INFO L87 Difference]: Start difference. First operand 275 states. Second operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 06:01:45,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:45,089 INFO L93 Difference]: Finished difference Result 275 states and 362 transitions. [2022-04-08 06:01:45,089 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 362 transitions. [2022-04-08 06:01:45,104 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:45,104 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:45,104 INFO L74 IsIncluded]: Start isIncluded. First operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 275 states. [2022-04-08 06:01:45,105 INFO L87 Difference]: Start difference. First operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 275 states. [2022-04-08 06:01:45,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:45,113 INFO L93 Difference]: Finished difference Result 275 states and 362 transitions. [2022-04-08 06:01:45,113 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 362 transitions. [2022-04-08 06:01:45,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:45,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:45,114 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:01:45,114 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:01:45,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 06:01:45,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 239 states to 239 states and 315 transitions. [2022-04-08 06:01:45,132 INFO L78 Accepts]: Start accepts. Automaton has 239 states and 315 transitions. Word has length 132 [2022-04-08 06:01:45,132 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:01:45,132 INFO L478 AbstractCegarLoop]: Abstraction has 239 states and 315 transitions. [2022-04-08 06:01:45,132 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-08 06:01:45,132 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 239 states and 315 transitions. [2022-04-08 06:01:46,233 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 315 edges. 315 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:46,233 INFO L276 IsEmpty]: Start isEmpty. Operand 239 states and 315 transitions. [2022-04-08 06:01:46,234 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 136 [2022-04-08 06:01:46,234 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:01:46,235 INFO L499 BasicCegarLoop]: trace histogram [17, 16, 16, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:01:46,261 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 06:01:46,435 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 06:01:46,435 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:01:46,435 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:01:46,436 INFO L85 PathProgramCache]: Analyzing trace with hash 1068997356, now seen corresponding path program 7 times [2022-04-08 06:01:46,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:46,436 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [594551100] [2022-04-08 06:01:46,445 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:01:46,445 INFO L85 PathProgramCache]: Analyzing trace with hash 1068997356, now seen corresponding path program 8 times [2022-04-08 06:01:46,446 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:01:46,446 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1101793122] [2022-04-08 06:01:46,446 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:01:46,446 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:01:46,471 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:01:46,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1216431151] [2022-04-08 06:01:46,472 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:01:46,472 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:01:46,472 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:01:46,473 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 06:01:46,476 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 06:01:46,610 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:01:46,611 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:01:46,613 INFO L263 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-08 06:01:46,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:01:46,638 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:01:48,290 INFO L272 TraceCheckUtils]: 0: Hoare triple {25089#true} call ULTIMATE.init(); {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L290 TraceCheckUtils]: 1: Hoare triple {25089#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); {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L290 TraceCheckUtils]: 2: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25089#true} {25089#true} #103#return; {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L272 TraceCheckUtils]: 4: Hoare triple {25089#true} call #t~ret6 := main(); {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L290 TraceCheckUtils]: 5: Hoare triple {25089#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; {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L272 TraceCheckUtils]: 6: Hoare triple {25089#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L290 TraceCheckUtils]: 7: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L290 TraceCheckUtils]: 8: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L290 TraceCheckUtils]: 9: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25089#true} {25089#true} #79#return; {25089#true} is VALID [2022-04-08 06:01:48,291 INFO L290 TraceCheckUtils]: 11: Hoare triple {25089#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L272 TraceCheckUtils]: 12: Hoare triple {25089#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 13: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 14: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 15: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {25089#true} {25089#true} #81#return; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L272 TraceCheckUtils]: 17: Hoare triple {25089#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 18: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 19: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 20: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {25089#true} {25089#true} #83#return; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L272 TraceCheckUtils]: 22: Hoare triple {25089#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 23: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 24: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,292 INFO L290 TraceCheckUtils]: 25: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,293 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {25089#true} {25089#true} #85#return; {25089#true} is VALID [2022-04-08 06:01:48,293 INFO L290 TraceCheckUtils]: 27: Hoare triple {25089#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; {25175#(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 06:01:48,293 INFO L272 TraceCheckUtils]: 28: Hoare triple {25175#(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)); {25089#true} is VALID [2022-04-08 06:01:48,293 INFO L290 TraceCheckUtils]: 29: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,293 INFO L290 TraceCheckUtils]: 30: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,293 INFO L290 TraceCheckUtils]: 31: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,294 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {25089#true} {25175#(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))} #87#return; {25175#(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 06:01:48,294 INFO L272 TraceCheckUtils]: 33: Hoare triple {25175#(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)); {25089#true} is VALID [2022-04-08 06:01:48,294 INFO L290 TraceCheckUtils]: 34: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,294 INFO L290 TraceCheckUtils]: 35: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,294 INFO L290 TraceCheckUtils]: 36: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,295 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25089#true} {25175#(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))} #89#return; {25175#(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 06:01:48,296 INFO L290 TraceCheckUtils]: 38: Hoare triple {25175#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25175#(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 06:01:48,296 INFO L290 TraceCheckUtils]: 39: Hoare triple {25175#(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; {25212#(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 06:01:48,297 INFO L290 TraceCheckUtils]: 40: Hoare triple {25212#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25212#(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 06:01:48,297 INFO L272 TraceCheckUtils]: 41: Hoare triple {25212#(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)); {25089#true} is VALID [2022-04-08 06:01:48,297 INFO L290 TraceCheckUtils]: 42: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,297 INFO L290 TraceCheckUtils]: 43: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,297 INFO L290 TraceCheckUtils]: 44: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,298 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {25089#true} {25212#(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))} #91#return; {25212#(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 06:01:48,298 INFO L272 TraceCheckUtils]: 46: Hoare triple {25212#(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)); {25089#true} is VALID [2022-04-08 06:01:48,298 INFO L290 TraceCheckUtils]: 47: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,298 INFO L290 TraceCheckUtils]: 48: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,298 INFO L290 TraceCheckUtils]: 49: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,299 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {25089#true} {25212#(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))} #93#return; {25212#(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 06:01:48,299 INFO L272 TraceCheckUtils]: 51: Hoare triple {25212#(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)); {25089#true} is VALID [2022-04-08 06:01:48,299 INFO L290 TraceCheckUtils]: 52: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,299 INFO L290 TraceCheckUtils]: 53: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,299 INFO L290 TraceCheckUtils]: 54: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,300 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25089#true} {25212#(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))} #95#return; {25212#(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 06:01:48,300 INFO L272 TraceCheckUtils]: 56: Hoare triple {25212#(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)); {25089#true} is VALID [2022-04-08 06:01:48,300 INFO L290 TraceCheckUtils]: 57: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,300 INFO L290 TraceCheckUtils]: 58: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,300 INFO L290 TraceCheckUtils]: 59: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,301 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25089#true} {25212#(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))} #97#return; {25212#(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 06:01:48,303 INFO L290 TraceCheckUtils]: 61: Hoare triple {25212#(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; {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,304 INFO L290 TraceCheckUtils]: 62: Hoare triple {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,304 INFO L272 TraceCheckUtils]: 63: Hoare triple {25279#(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_~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)); {25089#true} is VALID [2022-04-08 06:01:48,304 INFO L290 TraceCheckUtils]: 64: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,304 INFO L290 TraceCheckUtils]: 65: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,304 INFO L290 TraceCheckUtils]: 66: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,305 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {25089#true} {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,305 INFO L272 TraceCheckUtils]: 68: Hoare triple {25279#(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_~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)); {25089#true} is VALID [2022-04-08 06:01:48,305 INFO L290 TraceCheckUtils]: 69: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,305 INFO L290 TraceCheckUtils]: 70: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,305 INFO L290 TraceCheckUtils]: 71: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,306 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {25089#true} {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,306 INFO L272 TraceCheckUtils]: 73: Hoare triple {25279#(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_~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)); {25089#true} is VALID [2022-04-08 06:01:48,306 INFO L290 TraceCheckUtils]: 74: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,306 INFO L290 TraceCheckUtils]: 75: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,306 INFO L290 TraceCheckUtils]: 76: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,307 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {25089#true} {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,307 INFO L272 TraceCheckUtils]: 78: Hoare triple {25279#(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_~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)); {25089#true} is VALID [2022-04-08 06:01:48,307 INFO L290 TraceCheckUtils]: 79: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,307 INFO L290 TraceCheckUtils]: 80: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,307 INFO L290 TraceCheckUtils]: 81: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,308 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {25089#true} {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {25279#(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_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,310 INFO L290 TraceCheckUtils]: 83: Hoare triple {25279#(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_~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; {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,310 INFO L290 TraceCheckUtils]: 84: Hoare triple {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,310 INFO L272 TraceCheckUtils]: 85: Hoare triple {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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)); {25089#true} is VALID [2022-04-08 06:01:48,310 INFO L290 TraceCheckUtils]: 86: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,311 INFO L290 TraceCheckUtils]: 87: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,311 INFO L290 TraceCheckUtils]: 88: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,314 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {25089#true} {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,314 INFO L272 TraceCheckUtils]: 90: Hoare triple {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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)); {25089#true} is VALID [2022-04-08 06:01:48,314 INFO L290 TraceCheckUtils]: 91: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,314 INFO L290 TraceCheckUtils]: 92: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,314 INFO L290 TraceCheckUtils]: 93: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,315 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {25089#true} {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,315 INFO L272 TraceCheckUtils]: 95: Hoare triple {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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)); {25089#true} is VALID [2022-04-08 06:01:48,316 INFO L290 TraceCheckUtils]: 96: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,316 INFO L290 TraceCheckUtils]: 97: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,316 INFO L290 TraceCheckUtils]: 98: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,317 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {25089#true} {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,317 INFO L272 TraceCheckUtils]: 100: Hoare triple {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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)); {25089#true} is VALID [2022-04-08 06:01:48,317 INFO L290 TraceCheckUtils]: 101: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,317 INFO L290 TraceCheckUtils]: 102: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,317 INFO L290 TraceCheckUtils]: 103: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,318 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {25089#true} {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,319 INFO L290 TraceCheckUtils]: 105: Hoare triple {25346#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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; {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,320 INFO L290 TraceCheckUtils]: 106: Hoare triple {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,320 INFO L272 TraceCheckUtils]: 107: Hoare triple {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 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)); {25089#true} is VALID [2022-04-08 06:01:48,320 INFO L290 TraceCheckUtils]: 108: Hoare triple {25089#true} ~cond := #in~cond; {25423#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:48,320 INFO L290 TraceCheckUtils]: 109: Hoare triple {25423#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:48,321 INFO L290 TraceCheckUtils]: 110: Hoare triple {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:48,322 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,322 INFO L272 TraceCheckUtils]: 112: Hoare triple {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 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)); {25089#true} is VALID [2022-04-08 06:01:48,322 INFO L290 TraceCheckUtils]: 113: Hoare triple {25089#true} ~cond := #in~cond; {25423#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:48,322 INFO L290 TraceCheckUtils]: 114: Hoare triple {25423#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:48,323 INFO L290 TraceCheckUtils]: 115: Hoare triple {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:48,324 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {25427#(not (= |__VERIFIER_assert_#in~cond| 0))} {25413#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,324 INFO L272 TraceCheckUtils]: 117: Hoare triple {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~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)); {25089#true} is VALID [2022-04-08 06:01:48,324 INFO L290 TraceCheckUtils]: 118: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,324 INFO L290 TraceCheckUtils]: 119: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,324 INFO L290 TraceCheckUtils]: 120: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,325 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {25089#true} {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,325 INFO L272 TraceCheckUtils]: 122: Hoare triple {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~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)); {25089#true} is VALID [2022-04-08 06:01:48,325 INFO L290 TraceCheckUtils]: 123: Hoare triple {25089#true} ~cond := #in~cond; {25089#true} is VALID [2022-04-08 06:01:48,325 INFO L290 TraceCheckUtils]: 124: Hoare triple {25089#true} assume !(0 == ~cond); {25089#true} is VALID [2022-04-08 06:01:48,326 INFO L290 TraceCheckUtils]: 125: Hoare triple {25089#true} assume true; {25089#true} is VALID [2022-04-08 06:01:48,326 INFO L284 TraceCheckUtils]: 126: Hoare quadruple {25089#true} {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,327 INFO L290 TraceCheckUtils]: 127: Hoare triple {25449#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {25483#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~y~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:01:48,328 INFO L290 TraceCheckUtils]: 128: Hoare triple {25483#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~y~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~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; {25487#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} is VALID [2022-04-08 06:01:48,328 INFO L290 TraceCheckUtils]: 129: Hoare triple {25487#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} assume !false; {25487#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} is VALID [2022-04-08 06:01:48,329 INFO L290 TraceCheckUtils]: 130: Hoare triple {25487#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} assume !(0 != ~b~0); {25494#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} is VALID [2022-04-08 06:01:48,330 INFO L272 TraceCheckUtils]: 131: Hoare triple {25494#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {25498#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:01:48,330 INFO L290 TraceCheckUtils]: 132: Hoare triple {25498#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25502#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:48,330 INFO L290 TraceCheckUtils]: 133: Hoare triple {25502#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25090#false} is VALID [2022-04-08 06:01:48,330 INFO L290 TraceCheckUtils]: 134: Hoare triple {25090#false} assume !false; {25090#false} is VALID [2022-04-08 06:01:48,331 INFO L134 CoverageAnalysis]: Checked inductivity of 610 backedges. 102 proven. 52 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2022-04-08 06:01:48,331 INFO L328 TraceCheckSpWp]: Computing backward predicates...