/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 12:18:56,114 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 12:18:56,115 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 12:18:56,135 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 12:18:56,135 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 12:18:56,136 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 12:18:56,137 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 12:18:56,139 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 12:18:56,140 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 12:18:56,141 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 12:18:56,141 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 12:18:56,142 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 12:18:56,143 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 12:18:56,143 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 12:18:56,144 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 12:18:56,145 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 12:18:56,145 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 12:18:56,146 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 12:18:56,147 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 12:18:56,148 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 12:18:56,149 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 12:18:56,151 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 12:18:56,152 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 12:18:56,153 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 12:18:56,153 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 12:18:56,155 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 12:18:56,155 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 12:18:56,155 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 12:18:56,156 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 12:18:56,156 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 12:18:56,157 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 12:18:56,157 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 12:18:56,157 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 12:18:56,158 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 12:18:56,158 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 12:18:56,159 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 12:18:56,159 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 12:18:56,159 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 12:18:56,160 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 12:18:56,160 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 12:18:56,160 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 12:18:56,167 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 12:18:56,168 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-08 12:18:56,174 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 12:18:56,175 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 12:18:56,175 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 12:18:56,175 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 12:18:56,175 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 12:18:56,176 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 12:18:56,176 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 12:18:56,177 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 12:18:56,177 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 12:18:56,177 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 12:18:56,177 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 12:18:56,177 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 12:18:56,177 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 12:18:56,177 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 12:18:56,177 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 12:18:56,177 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 12:18:56,372 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 12:18:56,393 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 12:18:56,395 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 12:18:56,396 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 12:18:56,397 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 12:18:56,398 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound10.c [2022-04-08 12:18:56,445 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a1280425/ef28c82af8714105af11afbb3610a251/FLAG6e8b784cd [2022-04-08 12:18:56,809 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 12:18:56,810 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound10.c [2022-04-08 12:18:56,814 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a1280425/ef28c82af8714105af11afbb3610a251/FLAG6e8b784cd [2022-04-08 12:18:56,827 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a1280425/ef28c82af8714105af11afbb3610a251 [2022-04-08 12:18:56,829 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 12:18:56,831 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 12:18:56,832 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 12:18:56,832 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 12:18:56,834 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 12:18:56,835 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:18:56" (1/1) ... [2022-04-08 12:18:56,836 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6f026e2b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:56, skipping insertion in model container [2022-04-08 12:18:56,836 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:18:56" (1/1) ... [2022-04-08 12:18:56,842 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 12:18:56,857 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 12:18:56,988 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_valuebound10.c[490,503] [2022-04-08 12:18:57,026 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 12:18:57,032 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 12:18:57,045 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_valuebound10.c[490,503] [2022-04-08 12:18:57,070 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 12:18:57,079 INFO L208 MainTranslator]: Completed translation [2022-04-08 12:18:57,080 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57 WrapperNode [2022-04-08 12:18:57,080 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 12:18:57,081 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 12:18:57,081 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 12:18:57,081 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 12:18:57,089 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,089 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,095 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,095 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,110 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,113 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,114 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,115 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 12:18:57,116 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 12:18:57,116 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 12:18:57,116 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 12:18:57,117 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (1/1) ... [2022-04-08 12:18:57,124 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 12:18:57,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:18:57,142 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 12:18:57,164 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 12:18:57,180 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 12:18:57,180 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 12:18:57,180 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 12:18:57,180 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 12:18:57,181 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 12:18:57,181 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 12:18:57,181 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 12:18:57,181 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 12:18:57,181 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 12:18:57,181 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 12:18:57,182 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 12:18:57,182 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 12:18:57,182 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 12:18:57,182 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 12:18:57,183 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 12:18:57,184 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 12:18:57,184 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 12:18:57,184 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 12:18:57,184 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 12:18:57,184 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 12:18:57,241 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 12:18:57,242 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 12:18:57,486 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 12:18:57,491 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 12:18:57,491 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 12:18:57,493 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:18:57 BoogieIcfgContainer [2022-04-08 12:18:57,493 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 12:18:57,494 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 12:18:57,494 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 12:18:57,500 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 12:18:57,501 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 12:18:56" (1/3) ... [2022-04-08 12:18:57,501 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@32804356 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:18:57, skipping insertion in model container [2022-04-08 12:18:57,501 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:18:57" (2/3) ... [2022-04-08 12:18:57,501 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@32804356 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:18:57, skipping insertion in model container [2022-04-08 12:18:57,501 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:18:57" (3/3) ... [2022-04-08 12:18:57,502 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_valuebound10.c [2022-04-08 12:18:57,506 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 12:18:57,506 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 12:18:57,550 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 12:18:57,564 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 12:18:57,565 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 12:18:57,581 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 12:18:57,587 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 12:18:57,587 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:18:57,588 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 12:18:57,589 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:18:57,593 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:18:57,593 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 1 times [2022-04-08 12:18:57,599 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:18:57,599 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1548315441] [2022-04-08 12:18:57,607 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:18:57,607 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 2 times [2022-04-08 12:18:57,610 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:18:57,610 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [262968522] [2022-04-08 12:18:57,611 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:18:57,611 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:18:57,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,747 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 12:18:57,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,766 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 12:18:57,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 12:18:57,767 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-08 12:18:57,767 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 12:18:57,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,776 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,777 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,777 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,777 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-08 12:18:57,779 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 12:18:57,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,790 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,791 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,791 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,791 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-08 12:18:57,791 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 12:18:57,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,796 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,797 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,797 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,797 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-08 12:18:57,797 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-08 12:18:57,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,802 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,803 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,803 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,803 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-08 12:18:57,803 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-08 12:18:57,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,808 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,809 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,809 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-08 12:18:57,809 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-08 12:18:57,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:57,820 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,821 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,821 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,822 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-08 12:18:57,823 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 12:18:57,823 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 12:18:57,823 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 12:18:57,823 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-08 12:18:57,823 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-08 12:18:57,824 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 12:18:57,824 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {43#true} is VALID [2022-04-08 12:18:57,824 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,825 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,825 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,826 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-08 12:18:57,826 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 12:18:57,826 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {43#true} is VALID [2022-04-08 12:18:57,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,836 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,836 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,836 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-08 12:18:57,836 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 12:18:57,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,837 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,839 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-08 12:18:57,839 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 12:18:57,840 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,840 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,840 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,840 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-08 12:18:57,841 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 12:18:57,841 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 12:18:57,841 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,842 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,842 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-08 12:18:57,842 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 12:18:57,843 INFO L290 TraceCheckUtils]: 34: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:18:57,843 INFO L290 TraceCheckUtils]: 35: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:18:57,843 INFO L290 TraceCheckUtils]: 36: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:18:57,843 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-08 12:18:57,844 INFO L290 TraceCheckUtils]: 38: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-08 12:18:57,844 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 12:18:57,844 INFO L290 TraceCheckUtils]: 40: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-08 12:18:57,844 INFO L290 TraceCheckUtils]: 41: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-08 12:18:57,844 INFO L290 TraceCheckUtils]: 42: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-08 12:18:57,845 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 12:18:57,845 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:18:57,845 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [262968522] [2022-04-08 12:18:57,846 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [262968522] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:18:57,846 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:18:57,846 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 12:18:57,849 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:18:57,849 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1548315441] [2022-04-08 12:18:57,849 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1548315441] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:18:57,849 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:18:57,850 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 12:18:57,850 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1580441122] [2022-04-08 12:18:57,850 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:18:57,854 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 12:18:57,855 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:18:57,857 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 12:18:57,901 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 12:18:57,901 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 12:18:57,901 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:18:57,932 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 12:18:57,933 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 12:18:57,934 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 12:18:58,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:18:58,115 INFO L93 Difference]: Finished difference Result 73 states and 118 transitions. [2022-04-08 12:18:58,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 12:18:58,116 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 12:18:58,116 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:18:58,117 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 12:18:58,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-08 12:18:58,125 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 12:18:58,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-08 12:18:58,143 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 118 transitions. [2022-04-08 12:18:58,268 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 12:18:58,278 INFO L225 Difference]: With dead ends: 73 [2022-04-08 12:18:58,278 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 12:18:58,282 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 12:18:58,286 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 12:18:58,288 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 12:18:58,301 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 12:18:58,323 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-08 12:18:58,323 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:18:58,324 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 12:18:58,326 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 12:18:58,327 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 12:18:58,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:18:58,336 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-08 12:18:58,336 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 12:18:58,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:18:58,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:18:58,338 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 12:18:58,338 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 12:18:58,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:18:58,348 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-08 12:18:58,349 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 12:18:58,349 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:18:58,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:18:58,349 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:18:58,350 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:18:58,350 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 12:18:58,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 46 transitions. [2022-04-08 12:18:58,353 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 46 transitions. Word has length 43 [2022-04-08 12:18:58,353 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:18:58,354 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 46 transitions. [2022-04-08 12:18:58,354 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 12:18:58,354 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 46 transitions. [2022-04-08 12:18:58,403 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 12:18:58,403 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-08 12:18:58,410 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-08 12:18:58,410 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:18:58,411 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 12:18:58,411 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 12:18:58,411 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:18:58,412 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:18:58,412 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 1 times [2022-04-08 12:18:58,412 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:18:58,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [996810145] [2022-04-08 12:18:58,414 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:18:58,414 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 2 times [2022-04-08 12:18:58,414 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:18:58,415 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1963092341] [2022-04-08 12:18:58,415 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:18:58,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:18:58,455 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:18:58,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [980227292] [2022-04-08 12:18:58,456 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:18:58,456 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:18:58,456 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:18:58,458 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 12:18:58,459 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 12:18:58,508 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:18:58,508 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:18:58,510 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 12:18:58,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:58,539 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:18:58,724 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-08 12:18:58,724 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 12:18:58,725 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:58,725 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-08 12:18:58,726 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-08 12:18:58,726 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 12:18:58,726 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {361#true} is VALID [2022-04-08 12:18:58,726 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:58,726 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:58,727 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:58,727 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-08 12:18:58,727 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 12:18:58,727 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {361#true} is VALID [2022-04-08 12:18:58,728 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:58,729 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:58,729 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:58,729 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-08 12:18:58,730 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 12:18:58,730 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:58,730 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:58,731 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:58,731 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-08 12:18:58,731 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 12:18:58,731 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 12:18:58,732 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 12:18:58,732 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 12:18:58,733 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 12:18:58,734 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 12:18:58,734 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 12:18:58,734 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:58,736 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:58,736 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:58,737 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 12:18:58,738 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 12:18:58,740 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:58,740 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:58,744 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:58,745 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 12:18:58,745 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 12:18:58,746 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-08 12:18:58,746 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 12:18:58,747 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-08 12:18:58,748 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-08 12:18:58,748 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-08 12:18:58,749 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 12:18:58,749 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:18:59,010 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-08 12:18:59,010 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-08 12:18:59,010 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-08 12:18:59,010 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 12:18:59,018 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-08 12:18:59,019 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-08 12:18:59,019 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 12:18:59,019 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:59,019 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:59,020 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:59,020 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 12:18:59,020 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 12:18:59,020 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:59,020 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:59,020 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:59,021 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 12:18:59,021 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 12:18:59,022 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 12:18:59,022 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 12:18:59,022 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 12:18:59,023 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 12:18:59,023 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 12:18:59,023 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-08 12:18:59,023 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:59,023 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:59,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:59,023 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 12:18:59,024 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-08 12:18:59,024 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:59,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:59,024 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:59,024 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {361#true} is VALID [2022-04-08 12:18:59,024 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 12:18:59,024 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-08 12:18:59,024 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:59,024 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-08 12:18:59,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-08 12:18:59,025 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {361#true} is VALID [2022-04-08 12:18:59,025 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 12:18:59,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-08 12:18:59,025 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-08 12:18:59,025 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-08 12:18:59,025 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 12:18:59,025 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-08 12:18:59,026 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 12:18:59,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:18:59,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1963092341] [2022-04-08 12:18:59,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:18:59,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [980227292] [2022-04-08 12:18:59,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [980227292] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:18:59,026 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:18:59,026 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-08 12:18:59,027 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:18:59,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [996810145] [2022-04-08 12:18:59,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [996810145] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:18:59,027 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:18:59,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 12:18:59,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [991176654] [2022-04-08 12:18:59,028 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:18:59,028 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 12:18:59,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:18:59,029 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 12:18:59,049 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 12:18:59,050 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 12:18:59,050 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:18:59,050 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 12:18:59,050 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-08 12:18:59,051 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 12:18:59,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:18:59,325 INFO L93 Difference]: Finished difference Result 52 states and 69 transitions. [2022-04-08 12:18:59,325 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 12:18:59,326 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 12:18:59,326 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:18:59,326 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 12:18:59,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 12:18:59,329 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 12:18:59,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 12:18:59,330 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-08 12:18:59,394 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 12:18:59,396 INFO L225 Difference]: With dead ends: 52 [2022-04-08 12:18:59,396 INFO L226 Difference]: Without dead ends: 44 [2022-04-08 12:18:59,397 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 12:18:59,398 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 12:18:59,401 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 12:18:59,402 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-08 12:18:59,420 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-08 12:18:59,420 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:18:59,420 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 12:18:59,422 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 12:18:59,423 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 12:18:59,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:18:59,429 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-08 12:18:59,429 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-08 12:18:59,430 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:18:59,430 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:18:59,430 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 12:18:59,430 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 12:18:59,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:18:59,439 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-08 12:18:59,439 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-08 12:18:59,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:18:59,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:18:59,440 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:18:59,440 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:18:59,441 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 12:18:59,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-08 12:18:59,443 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 44 [2022-04-08 12:18:59,443 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:18:59,444 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-08 12:18:59,444 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 12:18:59,444 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 48 transitions. [2022-04-08 12:18:59,480 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 12:18:59,480 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-08 12:18:59,482 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-08 12:18:59,482 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:18:59,484 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 12:18:59,503 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 12:18:59,699 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 12:18:59,700 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:18:59,700 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:18:59,700 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 1 times [2022-04-08 12:18:59,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:18:59,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1386967440] [2022-04-08 12:18:59,701 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:18:59,701 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 2 times [2022-04-08 12:18:59,701 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:18:59,701 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1533599334] [2022-04-08 12:18:59,701 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:18:59,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:18:59,717 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:18:59,717 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [934287811] [2022-04-08 12:18:59,718 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:18:59,718 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:18:59,718 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:18:59,718 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 12:18:59,744 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 12:18:59,766 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 12:18:59,766 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:18:59,767 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 12:18:59,779 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:18:59,780 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:18:59,897 INFO L272 TraceCheckUtils]: 0: Hoare triple {901#true} call ULTIMATE.init(); {901#true} is VALID [2022-04-08 12:18:59,897 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 12:18:59,897 INFO L290 TraceCheckUtils]: 2: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 12:18:59,898 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {901#true} {901#true} #103#return; {901#true} is VALID [2022-04-08 12:18:59,898 INFO L272 TraceCheckUtils]: 4: Hoare triple {901#true} call #t~ret6 := main(); {901#true} is VALID [2022-04-08 12:18:59,898 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 12:18:59,898 INFO L272 TraceCheckUtils]: 6: Hoare triple {901#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {901#true} is VALID [2022-04-08 12:18:59,898 INFO L290 TraceCheckUtils]: 7: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 12:18:59,898 INFO L290 TraceCheckUtils]: 8: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 12:18:59,898 INFO L290 TraceCheckUtils]: 9: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 12:18:59,898 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {901#true} {901#true} #79#return; {901#true} is VALID [2022-04-08 12:18:59,898 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 12:18:59,898 INFO L272 TraceCheckUtils]: 12: Hoare triple {901#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {901#true} is VALID [2022-04-08 12:18:59,899 INFO L290 TraceCheckUtils]: 13: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 12:18:59,899 INFO L290 TraceCheckUtils]: 14: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 12:18:59,899 INFO L290 TraceCheckUtils]: 15: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 12:18:59,899 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {901#true} {901#true} #81#return; {901#true} is VALID [2022-04-08 12:18:59,899 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 12:18:59,899 INFO L290 TraceCheckUtils]: 18: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 12:18:59,899 INFO L290 TraceCheckUtils]: 19: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 12:18:59,899 INFO L290 TraceCheckUtils]: 20: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 12:18:59,899 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {901#true} {901#true} #83#return; {901#true} is VALID [2022-04-08 12:18:59,899 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 12:18:59,900 INFO L290 TraceCheckUtils]: 23: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 12:18:59,900 INFO L290 TraceCheckUtils]: 24: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 12:18:59,900 INFO L290 TraceCheckUtils]: 25: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 12:18:59,900 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {901#true} {901#true} #85#return; {901#true} is VALID [2022-04-08 12:18:59,900 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 12:18:59,900 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 12:18:59,900 INFO L290 TraceCheckUtils]: 29: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 12:18:59,900 INFO L290 TraceCheckUtils]: 30: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 12:18:59,900 INFO L290 TraceCheckUtils]: 31: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 12:18:59,900 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {901#true} {901#true} #87#return; {901#true} is VALID [2022-04-08 12:18:59,901 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 12:18:59,901 INFO L290 TraceCheckUtils]: 34: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-08 12:18:59,901 INFO L290 TraceCheckUtils]: 35: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-08 12:18:59,901 INFO L290 TraceCheckUtils]: 36: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-08 12:18:59,901 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {901#true} {901#true} #89#return; {901#true} is VALID [2022-04-08 12:18:59,901 INFO L290 TraceCheckUtils]: 38: Hoare triple {901#true} assume !false; {901#true} is VALID [2022-04-08 12:18:59,901 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 12:18:59,902 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 12:18:59,903 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 12:18:59,903 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 12:18:59,903 INFO L290 TraceCheckUtils]: 43: Hoare triple {1034#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {902#false} is VALID [2022-04-08 12:18:59,903 INFO L290 TraceCheckUtils]: 44: Hoare triple {902#false} assume !false; {902#false} is VALID [2022-04-08 12:18:59,904 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 12:18:59,904 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:18:59,904 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:18:59,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1533599334] [2022-04-08 12:18:59,904 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:18:59,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [934287811] [2022-04-08 12:18:59,904 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [934287811] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:18:59,904 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:18:59,904 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:18:59,904 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:18:59,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1386967440] [2022-04-08 12:18:59,905 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1386967440] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:18:59,905 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:18:59,905 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:18:59,905 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1565911107] [2022-04-08 12:18:59,905 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:18:59,905 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 12:18:59,906 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:18:59,906 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 12:18:59,923 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 12:18:59,923 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:18:59,923 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:18:59,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:18:59,924 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:18:59,924 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 12:19:00,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:00,131 INFO L93 Difference]: Finished difference Result 50 states and 65 transitions. [2022-04-08 12:19:00,131 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:19:00,131 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 12:19:00,132 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:19:00,132 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 12:19:00,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-08 12:19:00,134 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 12:19:00,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-08 12:19:00,136 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-08 12:19:00,187 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 12:19:00,188 INFO L225 Difference]: With dead ends: 50 [2022-04-08 12:19:00,188 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 12:19:00,189 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 12:19:00,189 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 12:19:00,190 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 12:19:00,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 12:19:00,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 43. [2022-04-08 12:19:00,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:19:00,212 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 12:19:00,213 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 12:19:00,213 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 12:19:00,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:00,215 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-08 12:19:00,215 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-08 12:19:00,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:00,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:00,216 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 12:19:00,216 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 12:19:00,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:00,218 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-08 12:19:00,218 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-08 12:19:00,218 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:00,218 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:00,218 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:19:00,218 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:19:00,218 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 12:19:00,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 54 transitions. [2022-04-08 12:19:00,220 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 54 transitions. Word has length 45 [2022-04-08 12:19:00,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:19:00,220 INFO L478 AbstractCegarLoop]: Abstraction has 43 states and 54 transitions. [2022-04-08 12:19:00,220 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 12:19:00,220 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 43 states and 54 transitions. [2022-04-08 12:19:00,264 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 12:19:00,264 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 12:19:00,264 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-08 12:19:00,264 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:19:00,265 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 12:19:00,285 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 12:19:00,475 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 12:19:00,475 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:19:00,475 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:19:00,476 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 1 times [2022-04-08 12:19:00,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:00,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2041369099] [2022-04-08 12:19:00,476 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:19:00,476 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 2 times [2022-04-08 12:19:00,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:19:00,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1917024229] [2022-04-08 12:19:00,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:19:00,477 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:19:00,506 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:19:00,506 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1322401252] [2022-04-08 12:19:00,506 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:19:00,506 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:19:00,506 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:19:00,508 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 12:19:00,523 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 12:19:00,558 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:19:00,558 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:19:00,559 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 12:19:00,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:19:00,584 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:19:00,763 INFO L272 TraceCheckUtils]: 0: Hoare triple {1324#true} call ULTIMATE.init(); {1324#true} is VALID [2022-04-08 12:19:00,764 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 12:19:00,764 INFO L290 TraceCheckUtils]: 2: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,764 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1324#true} {1324#true} #103#return; {1324#true} is VALID [2022-04-08 12:19:00,764 INFO L272 TraceCheckUtils]: 4: Hoare triple {1324#true} call #t~ret6 := main(); {1324#true} is VALID [2022-04-08 12:19:00,764 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 12:19:00,764 INFO L272 TraceCheckUtils]: 6: Hoare triple {1324#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1324#true} is VALID [2022-04-08 12:19:00,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 12:19:00,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 12:19:00,765 INFO L290 TraceCheckUtils]: 9: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,765 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1324#true} {1324#true} #79#return; {1324#true} is VALID [2022-04-08 12:19:00,765 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 12:19:00,765 INFO L272 TraceCheckUtils]: 12: Hoare triple {1324#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1324#true} is VALID [2022-04-08 12:19:00,765 INFO L290 TraceCheckUtils]: 13: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 12:19:00,765 INFO L290 TraceCheckUtils]: 14: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 12:19:00,765 INFO L290 TraceCheckUtils]: 15: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,765 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1324#true} {1324#true} #81#return; {1324#true} is VALID [2022-04-08 12:19:00,765 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 12:19:00,765 INFO L290 TraceCheckUtils]: 18: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 12:19:00,765 INFO L290 TraceCheckUtils]: 19: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 12:19:00,766 INFO L290 TraceCheckUtils]: 20: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,766 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1324#true} {1324#true} #83#return; {1324#true} is VALID [2022-04-08 12:19:00,766 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 12:19:00,766 INFO L290 TraceCheckUtils]: 23: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 12:19:00,766 INFO L290 TraceCheckUtils]: 24: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 12:19:00,766 INFO L290 TraceCheckUtils]: 25: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,766 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1324#true} {1324#true} #85#return; {1324#true} is VALID [2022-04-08 12:19:00,768 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 12:19:00,768 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 12:19:00,768 INFO L290 TraceCheckUtils]: 29: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 12:19:00,768 INFO L290 TraceCheckUtils]: 30: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 12:19:00,768 INFO L290 TraceCheckUtils]: 31: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,769 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 12:19:00,769 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 12:19:00,769 INFO L290 TraceCheckUtils]: 34: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 12:19:00,769 INFO L290 TraceCheckUtils]: 35: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 12:19:00,769 INFO L290 TraceCheckUtils]: 36: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,774 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 12:19:00,774 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 12:19:00,775 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 12:19:00,785 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 12:19:00,786 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 12:19:00,786 INFO L290 TraceCheckUtils]: 42: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-08 12:19:00,786 INFO L290 TraceCheckUtils]: 43: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-08 12:19:00,786 INFO L290 TraceCheckUtils]: 44: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-08 12:19:00,787 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 12:19:00,787 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 12:19:00,788 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 12:19:00,789 INFO L290 TraceCheckUtils]: 48: Hoare triple {1472#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1325#false} is VALID [2022-04-08 12:19:00,789 INFO L290 TraceCheckUtils]: 49: Hoare triple {1325#false} assume !false; {1325#false} is VALID [2022-04-08 12:19:00,789 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 12:19:00,789 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:19:00,789 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:19:00,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1917024229] [2022-04-08 12:19:00,789 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:19:00,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1322401252] [2022-04-08 12:19:00,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1322401252] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:19:00,789 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:19:00,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:19:00,790 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:19:00,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2041369099] [2022-04-08 12:19:00,790 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2041369099] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:19:00,790 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:19:00,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:19:00,790 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [842076249] [2022-04-08 12:19:00,790 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:19:00,791 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 12:19:00,791 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:19:00,791 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 12:19:00,814 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 12:19:00,814 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:19:00,814 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:00,815 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:19:00,815 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:19:00,815 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 12:19:00,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:00,994 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-08 12:19:00,994 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:19:00,994 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 12:19:00,995 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:19:00,995 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 12:19:00,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:19:00,996 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 12:19:00,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:19:00,997 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 12:19:01,044 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 12:19:01,046 INFO L225 Difference]: With dead ends: 58 [2022-04-08 12:19:01,046 INFO L226 Difference]: Without dead ends: 56 [2022-04-08 12:19:01,046 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 12:19:01,047 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 12:19:01,047 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 12:19:01,047 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-08 12:19:01,079 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 55. [2022-04-08 12:19:01,079 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:19:01,079 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 12:19:01,079 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 12:19:01,079 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 12:19:01,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:01,082 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-08 12:19:01,082 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-08 12:19:01,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:01,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:01,082 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 12:19:01,082 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 12:19:01,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:01,084 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-08 12:19:01,084 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-08 12:19:01,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:01,085 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:01,085 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:19:01,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:19:01,085 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 12:19:01,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 71 transitions. [2022-04-08 12:19:01,087 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 71 transitions. Word has length 50 [2022-04-08 12:19:01,087 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:19:01,087 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 71 transitions. [2022-04-08 12:19:01,087 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 12:19:01,087 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 71 transitions. [2022-04-08 12:19:01,153 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 12:19:01,153 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 71 transitions. [2022-04-08 12:19:01,153 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 12:19:01,153 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:19:01,154 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 12:19:01,173 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 12:19:01,363 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 12:19:01,363 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:19:01,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:19:01,363 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 1 times [2022-04-08 12:19:01,364 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:01,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1945076623] [2022-04-08 12:19:01,364 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:19:01,364 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 2 times [2022-04-08 12:19:01,364 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:19:01,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2066834202] [2022-04-08 12:19:01,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:19:01,364 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:19:01,378 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:19:01,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [578679771] [2022-04-08 12:19:01,378 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:19:01,379 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:19:01,379 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:19:01,380 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 12:19:01,381 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 12:19:01,421 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:19:01,421 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:19:01,422 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 12:19:01,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:19:01,440 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:19:01,602 INFO L272 TraceCheckUtils]: 0: Hoare triple {1818#true} call ULTIMATE.init(); {1818#true} is VALID [2022-04-08 12:19:01,603 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 12:19:01,605 INFO L290 TraceCheckUtils]: 2: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,605 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1818#true} {1818#true} #103#return; {1818#true} is VALID [2022-04-08 12:19:01,605 INFO L272 TraceCheckUtils]: 4: Hoare triple {1818#true} call #t~ret6 := main(); {1818#true} is VALID [2022-04-08 12:19:01,605 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 12:19:01,605 INFO L272 TraceCheckUtils]: 6: Hoare triple {1818#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1818#true} is VALID [2022-04-08 12:19:01,605 INFO L290 TraceCheckUtils]: 7: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,605 INFO L290 TraceCheckUtils]: 8: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,605 INFO L290 TraceCheckUtils]: 9: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,606 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1818#true} {1818#true} #79#return; {1818#true} is VALID [2022-04-08 12:19:01,606 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 12:19:01,606 INFO L272 TraceCheckUtils]: 12: Hoare triple {1818#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1818#true} is VALID [2022-04-08 12:19:01,606 INFO L290 TraceCheckUtils]: 13: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,606 INFO L290 TraceCheckUtils]: 14: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,606 INFO L290 TraceCheckUtils]: 15: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,606 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1818#true} {1818#true} #81#return; {1818#true} is VALID [2022-04-08 12:19:01,606 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 12:19:01,606 INFO L290 TraceCheckUtils]: 18: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,606 INFO L290 TraceCheckUtils]: 19: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,606 INFO L290 TraceCheckUtils]: 20: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,607 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1818#true} {1818#true} #83#return; {1818#true} is VALID [2022-04-08 12:19:01,607 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 12:19:01,607 INFO L290 TraceCheckUtils]: 23: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,607 INFO L290 TraceCheckUtils]: 24: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,607 INFO L290 TraceCheckUtils]: 25: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,607 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1818#true} {1818#true} #85#return; {1818#true} is VALID [2022-04-08 12:19:01,608 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 12:19:01,608 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 12:19:01,608 INFO L290 TraceCheckUtils]: 29: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,608 INFO L290 TraceCheckUtils]: 30: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,608 INFO L290 TraceCheckUtils]: 31: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,608 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 12:19:01,609 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 12:19:01,609 INFO L290 TraceCheckUtils]: 34: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,609 INFO L290 TraceCheckUtils]: 35: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,609 INFO L290 TraceCheckUtils]: 36: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,609 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 12:19:01,610 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 12:19:01,610 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 12:19:01,610 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 12:19:01,610 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 12:19:01,610 INFO L290 TraceCheckUtils]: 42: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,611 INFO L290 TraceCheckUtils]: 43: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,611 INFO L290 TraceCheckUtils]: 44: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,611 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 12:19:01,612 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 12:19:01,612 INFO L290 TraceCheckUtils]: 47: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-08 12:19:01,612 INFO L290 TraceCheckUtils]: 48: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-08 12:19:01,613 INFO L290 TraceCheckUtils]: 49: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-08 12:19:01,614 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 12:19:01,614 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 12:19:01,615 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 12:19:01,615 INFO L290 TraceCheckUtils]: 53: Hoare triple {1981#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1819#false} is VALID [2022-04-08 12:19:01,615 INFO L290 TraceCheckUtils]: 54: Hoare triple {1819#false} assume !false; {1819#false} is VALID [2022-04-08 12:19:01,616 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 12:19:01,616 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:19:01,616 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:19:01,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2066834202] [2022-04-08 12:19:01,616 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:19:01,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [578679771] [2022-04-08 12:19:01,616 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [578679771] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:19:01,616 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:19:01,616 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:19:01,616 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:19:01,617 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1945076623] [2022-04-08 12:19:01,617 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1945076623] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:19:01,617 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:19:01,617 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:19:01,617 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [555487201] [2022-04-08 12:19:01,617 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:19:01,617 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 12:19:01,617 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:19:01,618 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 12:19:01,639 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 12:19:01,640 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:19:01,640 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:01,640 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:19:01,640 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:19:01,640 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 12:19:01,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:01,841 INFO L93 Difference]: Finished difference Result 62 states and 77 transitions. [2022-04-08 12:19:01,841 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:19:01,841 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 12:19:01,841 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:19:01,842 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 12:19:01,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:19:01,843 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 12:19:01,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:19:01,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 12:19:01,914 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 12:19:01,915 INFO L225 Difference]: With dead ends: 62 [2022-04-08 12:19:01,915 INFO L226 Difference]: Without dead ends: 60 [2022-04-08 12:19:01,916 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 12:19:01,916 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 12:19:01,916 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 12:19:01,917 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-08 12:19:01,953 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-08 12:19:01,954 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:19:01,954 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 12:19:01,954 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 12:19:01,954 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 12:19:01,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:01,956 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-08 12:19:01,956 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-08 12:19:01,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:01,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:01,957 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 12:19:01,957 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 12:19:01,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:01,959 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-08 12:19:01,959 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-08 12:19:01,959 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:01,959 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:01,959 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:19:01,960 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:19:01,960 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 12:19:01,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 74 transitions. [2022-04-08 12:19:01,961 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 74 transitions. Word has length 55 [2022-04-08 12:19:01,962 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:19:01,962 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 74 transitions. [2022-04-08 12:19:01,962 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 12:19:01,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 74 transitions. [2022-04-08 12:19:02,039 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 12:19:02,039 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 74 transitions. [2022-04-08 12:19:02,040 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-08 12:19:02,040 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:19:02,040 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 12:19:02,059 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 12:19:02,255 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 12:19:02,256 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:19:02,256 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:19:02,256 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 1 times [2022-04-08 12:19:02,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:02,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2117890816] [2022-04-08 12:19:02,257 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:19:02,257 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 2 times [2022-04-08 12:19:02,257 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:19:02,257 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [625268648] [2022-04-08 12:19:02,257 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:19:02,257 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:19:02,268 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:19:02,269 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1889153022] [2022-04-08 12:19:02,269 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:19:02,269 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:19:02,269 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:19:02,270 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 12:19:02,271 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 12:19:02,316 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:19:02,316 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:19:02,317 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 12:19:02,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:19:02,329 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:19:02,636 INFO L272 TraceCheckUtils]: 0: Hoare triple {2351#true} call ULTIMATE.init(); {2351#true} is VALID [2022-04-08 12:19:02,636 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 12:19:02,637 INFO L290 TraceCheckUtils]: 2: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,637 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2351#true} {2351#true} #103#return; {2351#true} is VALID [2022-04-08 12:19:02,637 INFO L272 TraceCheckUtils]: 4: Hoare triple {2351#true} call #t~ret6 := main(); {2351#true} is VALID [2022-04-08 12:19:02,637 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 12:19:02,637 INFO L272 TraceCheckUtils]: 6: Hoare triple {2351#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2351#true} is VALID [2022-04-08 12:19:02,637 INFO L290 TraceCheckUtils]: 7: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 12:19:02,637 INFO L290 TraceCheckUtils]: 8: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 12:19:02,637 INFO L290 TraceCheckUtils]: 9: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,637 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2351#true} {2351#true} #79#return; {2351#true} is VALID [2022-04-08 12:19:02,637 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 12:19:02,637 INFO L272 TraceCheckUtils]: 12: Hoare triple {2351#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2351#true} is VALID [2022-04-08 12:19:02,637 INFO L290 TraceCheckUtils]: 13: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L290 TraceCheckUtils]: 14: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L290 TraceCheckUtils]: 15: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2351#true} {2351#true} #81#return; {2351#true} is VALID [2022-04-08 12:19:02,638 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 12:19:02,638 INFO L290 TraceCheckUtils]: 18: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L290 TraceCheckUtils]: 19: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L290 TraceCheckUtils]: 20: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2351#true} {2351#true} #83#return; {2351#true} is VALID [2022-04-08 12:19:02,638 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 12:19:02,638 INFO L290 TraceCheckUtils]: 23: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L290 TraceCheckUtils]: 24: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 12:19:02,638 INFO L290 TraceCheckUtils]: 25: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,639 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2351#true} {2351#true} #85#return; {2351#true} is VALID [2022-04-08 12:19:02,641 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 12:19:02,641 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 12:19:02,641 INFO L290 TraceCheckUtils]: 29: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 12:19:02,641 INFO L290 TraceCheckUtils]: 30: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 12:19:02,641 INFO L290 TraceCheckUtils]: 31: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,642 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 12:19:02,642 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 12:19:02,642 INFO L290 TraceCheckUtils]: 34: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 12:19:02,642 INFO L290 TraceCheckUtils]: 35: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 12:19:02,642 INFO L290 TraceCheckUtils]: 36: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,642 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 12:19:02,643 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 12:19:02,643 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 12:19:02,643 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 12:19:02,644 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 12:19:02,644 INFO L290 TraceCheckUtils]: 42: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-08 12:19:02,644 INFO L290 TraceCheckUtils]: 43: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-08 12:19:02,644 INFO L290 TraceCheckUtils]: 44: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-08 12:19:02,644 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 12:19:02,644 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 12:19:02,645 INFO L290 TraceCheckUtils]: 47: Hoare triple {2351#true} ~cond := #in~cond; {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:19:02,645 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 12:19:02,645 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 12:19:02,646 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 12:19:02,646 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 12:19:02,646 INFO L290 TraceCheckUtils]: 52: Hoare triple {2351#true} ~cond := #in~cond; {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:19:02,646 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 12:19:02,647 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 12:19:02,647 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 12:19:02,648 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 12:19:02,648 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 12:19:02,648 INFO L290 TraceCheckUtils]: 58: Hoare triple {2531#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2352#false} is VALID [2022-04-08 12:19:02,649 INFO L290 TraceCheckUtils]: 59: Hoare triple {2352#false} assume !false; {2352#false} is VALID [2022-04-08 12:19:02,649 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 12:19:02,649 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:19:49,735 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:19:49,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [625268648] [2022-04-08 12:19:49,735 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:19:49,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1889153022] [2022-04-08 12:19:49,735 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1889153022] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 12:19:49,736 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:19:49,736 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-08 12:19:49,736 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:19:49,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2117890816] [2022-04-08 12:19:49,736 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2117890816] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:19:49,736 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:19:49,736 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 12:19:49,736 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2085200335] [2022-04-08 12:19:49,736 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:19:49,737 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 12:19:49,737 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:19:49,737 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 12:19:49,771 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 12:19:49,771 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 12:19:49,771 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:49,771 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 12:19:49,772 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 12:19:49,772 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 12:19:50,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:50,201 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-04-08 12:19:50,201 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 12:19:50,201 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 12:19:50,202 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:19:50,202 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 12:19:50,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-08 12:19:50,203 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 12:19:50,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-08 12:19:50,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-08 12:19:50,266 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 12:19:50,267 INFO L225 Difference]: With dead ends: 66 [2022-04-08 12:19:50,267 INFO L226 Difference]: Without dead ends: 64 [2022-04-08 12:19:50,268 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 12:19:50,268 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 11 mSDsluCounter, 128 mSDsCounter, 0 mSdLazyCounter, 128 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:19:50,268 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.1s Time] [2022-04-08 12:19:50,269 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2022-04-08 12:19:50,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 63. [2022-04-08 12:19:50,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:19:50,317 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 12:19:50,318 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 12:19:50,318 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 12:19:50,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:50,321 INFO L93 Difference]: Finished difference Result 64 states and 78 transitions. [2022-04-08 12:19:50,321 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 78 transitions. [2022-04-08 12:19:50,321 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:50,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:50,322 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 12:19:50,322 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 12:19:50,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:50,325 INFO L93 Difference]: Finished difference Result 64 states and 78 transitions. [2022-04-08 12:19:50,325 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 78 transitions. [2022-04-08 12:19:50,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:50,325 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:50,325 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:19:50,326 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:19:50,326 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 12:19:50,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 77 transitions. [2022-04-08 12:19:50,328 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 77 transitions. Word has length 60 [2022-04-08 12:19:50,329 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:19:50,329 INFO L478 AbstractCegarLoop]: Abstraction has 63 states and 77 transitions. [2022-04-08 12:19:50,329 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 12:19:50,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 63 states and 77 transitions. [2022-04-08 12:19:50,434 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 12:19:50,434 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-08 12:19:50,435 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-08 12:19:50,435 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:19:50,435 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 12:19:50,452 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 12:19:50,644 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 12:19:50,644 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:19:50,644 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:19:50,644 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 1 times [2022-04-08 12:19:50,644 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:50,645 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1518153007] [2022-04-08 12:19:50,645 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:19:50,645 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 2 times [2022-04-08 12:19:50,645 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:19:50,645 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1172428610] [2022-04-08 12:19:50,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:19:50,646 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:19:50,657 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:19:50,657 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1905663387] [2022-04-08 12:19:50,657 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:19:50,657 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:19:50,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:19:50,658 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 12:19:50,659 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 12:19:50,703 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:19:50,703 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:19:50,704 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 12:19:50,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:19:50,718 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:19:50,900 INFO L272 TraceCheckUtils]: 0: Hoare triple {2944#true} call ULTIMATE.init(); {2944#true} is VALID [2022-04-08 12:19:50,900 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 12:19:50,900 INFO L290 TraceCheckUtils]: 2: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,900 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2944#true} {2944#true} #103#return; {2944#true} is VALID [2022-04-08 12:19:50,900 INFO L272 TraceCheckUtils]: 4: Hoare triple {2944#true} call #t~ret6 := main(); {2944#true} is VALID [2022-04-08 12:19:50,900 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 12:19:50,900 INFO L272 TraceCheckUtils]: 6: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L290 TraceCheckUtils]: 7: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L290 TraceCheckUtils]: 8: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L290 TraceCheckUtils]: 9: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2944#true} {2944#true} #79#return; {2944#true} is VALID [2022-04-08 12:19:50,901 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 12:19:50,901 INFO L272 TraceCheckUtils]: 12: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L290 TraceCheckUtils]: 13: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L290 TraceCheckUtils]: 14: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L290 TraceCheckUtils]: 15: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,901 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2944#true} {2944#true} #81#return; {2944#true} is VALID [2022-04-08 12:19:50,901 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 12:19:50,901 INFO L290 TraceCheckUtils]: 18: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,902 INFO L290 TraceCheckUtils]: 19: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,902 INFO L290 TraceCheckUtils]: 20: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,902 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2944#true} {2944#true} #83#return; {2944#true} is VALID [2022-04-08 12:19:50,902 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 12:19:50,902 INFO L290 TraceCheckUtils]: 23: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,902 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2944#true} {2944#true} #85#return; {2944#true} is VALID [2022-04-08 12:19:50,902 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 12:19:50,902 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 12:19:50,902 INFO L290 TraceCheckUtils]: 29: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,902 INFO L290 TraceCheckUtils]: 30: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,903 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,903 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2944#true} {2944#true} #87#return; {2944#true} is VALID [2022-04-08 12:19:50,903 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 12:19:50,903 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,903 INFO L290 TraceCheckUtils]: 35: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,903 INFO L290 TraceCheckUtils]: 36: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,903 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2944#true} {2944#true} #89#return; {2944#true} is VALID [2022-04-08 12:19:50,903 INFO L290 TraceCheckUtils]: 38: Hoare triple {2944#true} assume !false; {2944#true} is VALID [2022-04-08 12:19:50,907 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 12:19:50,907 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 12:19:50,908 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 12:19:50,908 INFO L290 TraceCheckUtils]: 42: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,908 INFO L290 TraceCheckUtils]: 43: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,908 INFO L290 TraceCheckUtils]: 44: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,908 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 12:19:50,908 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 12:19:50,909 INFO L290 TraceCheckUtils]: 47: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,909 INFO L290 TraceCheckUtils]: 48: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,909 INFO L290 TraceCheckUtils]: 49: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,909 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 12:19:50,910 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 12:19:50,910 INFO L290 TraceCheckUtils]: 52: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,910 INFO L290 TraceCheckUtils]: 53: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,910 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 12:19:50,911 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 12:19:50,911 INFO L290 TraceCheckUtils]: 57: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:50,911 INFO L290 TraceCheckUtils]: 58: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:50,911 INFO L290 TraceCheckUtils]: 59: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:50,912 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 12:19:50,912 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 12:19:50,913 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 12:19:50,913 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 12:19:50,914 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 12:19:50,914 INFO L290 TraceCheckUtils]: 65: Hoare triple {3144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2945#false} is VALID [2022-04-08 12:19:50,914 INFO L290 TraceCheckUtils]: 66: Hoare triple {2945#false} assume !false; {2945#false} is VALID [2022-04-08 12:19:50,914 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 12:19:50,914 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:19:51,125 INFO L290 TraceCheckUtils]: 66: Hoare triple {2945#false} assume !false; {2945#false} is VALID [2022-04-08 12:19:51,127 INFO L290 TraceCheckUtils]: 65: Hoare triple {3144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2945#false} is VALID [2022-04-08 12:19:51,127 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 12:19:51,128 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 12:19:51,128 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 12:19:51,129 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 12:19:51,130 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 12:19:51,130 INFO L290 TraceCheckUtils]: 59: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,130 INFO L290 TraceCheckUtils]: 58: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,130 INFO L290 TraceCheckUtils]: 57: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,130 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 12:19:51,131 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 12:19:51,131 INFO L290 TraceCheckUtils]: 54: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,131 INFO L290 TraceCheckUtils]: 53: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,131 INFO L290 TraceCheckUtils]: 52: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,131 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 12:19:51,132 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 12:19:51,132 INFO L290 TraceCheckUtils]: 49: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,132 INFO L290 TraceCheckUtils]: 48: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,132 INFO L290 TraceCheckUtils]: 47: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,132 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 12:19:51,132 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 12:19:51,132 INFO L290 TraceCheckUtils]: 44: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,133 INFO L290 TraceCheckUtils]: 43: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,133 INFO L290 TraceCheckUtils]: 42: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,133 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 12:19:51,133 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 12:19:51,133 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 12:19:51,133 INFO L290 TraceCheckUtils]: 38: Hoare triple {2944#true} assume !false; {2944#true} is VALID [2022-04-08 12:19:51,133 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2944#true} {2944#true} #89#return; {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 36: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 35: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,134 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 12:19:51,134 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2944#true} {2944#true} #87#return; {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 30: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 29: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,134 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 12:19:51,134 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 12:19:51,134 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2944#true} {2944#true} #85#return; {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 25: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,134 INFO L290 TraceCheckUtils]: 24: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L290 TraceCheckUtils]: 23: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,135 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 12:19:51,135 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2944#true} {2944#true} #83#return; {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L290 TraceCheckUtils]: 20: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L290 TraceCheckUtils]: 19: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L290 TraceCheckUtils]: 18: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,135 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 12:19:51,135 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2944#true} {2944#true} #81#return; {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L290 TraceCheckUtils]: 15: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L290 TraceCheckUtils]: 14: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L290 TraceCheckUtils]: 13: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,135 INFO L272 TraceCheckUtils]: 12: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2944#true} is VALID [2022-04-08 12:19:51,135 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 12:19:51,136 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2944#true} {2944#true} #79#return; {2944#true} is VALID [2022-04-08 12:19:51,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-08 12:19:51,136 INFO L290 TraceCheckUtils]: 7: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-08 12:19:51,136 INFO L272 TraceCheckUtils]: 6: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2944#true} is VALID [2022-04-08 12:19:51,136 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 12:19:51,136 INFO L272 TraceCheckUtils]: 4: Hoare triple {2944#true} call #t~ret6 := main(); {2944#true} is VALID [2022-04-08 12:19:51,136 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2944#true} {2944#true} #103#return; {2944#true} is VALID [2022-04-08 12:19:51,136 INFO L290 TraceCheckUtils]: 2: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-08 12:19:51,138 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 12:19:51,139 INFO L272 TraceCheckUtils]: 0: Hoare triple {2944#true} call ULTIMATE.init(); {2944#true} is VALID [2022-04-08 12:19:51,139 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 12:19:51,139 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:19:51,139 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1172428610] [2022-04-08 12:19:51,139 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:19:51,139 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1905663387] [2022-04-08 12:19:51,139 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1905663387] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 12:19:51,139 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:19:51,139 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-08 12:19:51,140 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:19:51,140 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1518153007] [2022-04-08 12:19:51,140 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1518153007] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:19:51,140 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:19:51,140 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:19:51,140 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [49107838] [2022-04-08 12:19:51,140 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:19:51,141 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 12:19:51,141 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:19:51,141 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 12:19:51,164 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 12:19:51,164 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:19:51,164 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:51,165 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:19:51,165 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-08 12:19:51,166 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 12:19:51,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:51,346 INFO L93 Difference]: Finished difference Result 69 states and 82 transitions. [2022-04-08 12:19:51,346 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:19:51,347 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 12:19:51,348 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:19:51,348 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 12:19:51,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-08 12:19:51,349 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 12:19:51,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-08 12:19:51,350 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-08 12:19:51,386 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 12:19:51,388 INFO L225 Difference]: With dead ends: 69 [2022-04-08 12:19:51,388 INFO L226 Difference]: Without dead ends: 67 [2022-04-08 12:19:51,388 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 12:19:51,389 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 12:19:51,389 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 12:19:51,389 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-08 12:19:51,423 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 59. [2022-04-08 12:19:51,423 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:19:51,423 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 12:19:51,423 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 12:19:51,423 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 12:19:51,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:51,425 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-08 12:19:51,425 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-08 12:19:51,426 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:51,426 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:51,427 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 12:19:51,427 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 12:19:51,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:51,429 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-08 12:19:51,429 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-08 12:19:51,429 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:51,429 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:51,430 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:19:51,430 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:19:51,430 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 12:19:51,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 71 transitions. [2022-04-08 12:19:51,431 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 71 transitions. Word has length 67 [2022-04-08 12:19:51,432 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:19:51,433 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 71 transitions. [2022-04-08 12:19:51,433 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 12:19:51,433 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 71 transitions. [2022-04-08 12:19:51,514 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 12:19:51,514 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 71 transitions. [2022-04-08 12:19:51,515 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-08 12:19:51,515 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:19:51,515 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 12:19:51,534 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 12:19:51,719 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 12:19:51,719 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:19:51,720 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:19:51,720 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 1 times [2022-04-08 12:19:51,720 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:51,720 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1515466165] [2022-04-08 12:19:51,720 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:19:51,720 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 2 times [2022-04-08 12:19:51,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:19:51,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [105602695] [2022-04-08 12:19:51,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:19:51,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:19:51,737 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:19:51,737 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [475304213] [2022-04-08 12:19:51,738 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:19:51,738 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:19:51,738 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:19:51,739 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 12:19:51,740 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 12:19:51,794 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:19:51,794 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:19:51,795 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 12:19:51,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:19:51,805 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:19:52,006 INFO L272 TraceCheckUtils]: 0: Hoare triple {3744#true} call ULTIMATE.init(); {3744#true} is VALID [2022-04-08 12:19:52,006 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 12:19:52,006 INFO L290 TraceCheckUtils]: 2: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,006 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3744#true} {3744#true} #103#return; {3744#true} is VALID [2022-04-08 12:19:52,006 INFO L272 TraceCheckUtils]: 4: Hoare triple {3744#true} call #t~ret6 := main(); {3744#true} is VALID [2022-04-08 12:19:52,006 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 12:19:52,006 INFO L272 TraceCheckUtils]: 6: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3744#true} is VALID [2022-04-08 12:19:52,006 INFO L290 TraceCheckUtils]: 7: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,006 INFO L290 TraceCheckUtils]: 8: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,007 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3744#true} {3744#true} #79#return; {3744#true} is VALID [2022-04-08 12:19:52,007 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 12:19:52,007 INFO L272 TraceCheckUtils]: 12: Hoare triple {3744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3744#true} is VALID [2022-04-08 12:19:52,007 INFO L290 TraceCheckUtils]: 13: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,007 INFO L290 TraceCheckUtils]: 14: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,007 INFO L290 TraceCheckUtils]: 15: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,007 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3744#true} {3744#true} #81#return; {3744#true} is VALID [2022-04-08 12:19:52,007 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 12:19:52,008 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 12:19:52,008 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 12:19:52,008 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 12:19:52,009 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 12:19:52,009 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 12:19:52,009 INFO L290 TraceCheckUtils]: 23: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,009 INFO L290 TraceCheckUtils]: 24: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,009 INFO L290 TraceCheckUtils]: 25: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,010 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 12:19:52,010 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 12:19:52,010 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 12:19:52,010 INFO L290 TraceCheckUtils]: 29: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,010 INFO L290 TraceCheckUtils]: 30: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,010 INFO L290 TraceCheckUtils]: 31: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,011 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 12:19:52,011 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 12:19:52,011 INFO L290 TraceCheckUtils]: 34: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,011 INFO L290 TraceCheckUtils]: 35: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,011 INFO L290 TraceCheckUtils]: 36: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,012 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 12:19:52,012 INFO L290 TraceCheckUtils]: 38: Hoare triple {3833#(<= 1 main_~a~0)} assume !false; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 12:19:52,012 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 12:19:52,013 INFO L290 TraceCheckUtils]: 40: Hoare triple {3870#(<= 1 main_~c~0)} assume !false; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:19:52,013 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 12:19:52,013 INFO L290 TraceCheckUtils]: 42: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,013 INFO L290 TraceCheckUtils]: 43: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,013 INFO L290 TraceCheckUtils]: 44: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,013 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 12:19:52,014 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 12:19:52,014 INFO L290 TraceCheckUtils]: 47: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,014 INFO L290 TraceCheckUtils]: 48: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,014 INFO L290 TraceCheckUtils]: 49: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,014 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 12:19:52,014 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 12:19:52,014 INFO L290 TraceCheckUtils]: 52: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,015 INFO L290 TraceCheckUtils]: 53: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,015 INFO L290 TraceCheckUtils]: 54: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,015 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 12:19:52,015 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 12:19:52,015 INFO L290 TraceCheckUtils]: 57: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,015 INFO L290 TraceCheckUtils]: 58: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,016 INFO L290 TraceCheckUtils]: 59: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,016 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 12:19:52,016 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 12:19:52,017 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 12:19:52,017 INFO L290 TraceCheckUtils]: 63: Hoare triple {3940#(<= 1 main_~b~0)} assume !false; {3940#(<= 1 main_~b~0)} is VALID [2022-04-08 12:19:52,018 INFO L290 TraceCheckUtils]: 64: Hoare triple {3940#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3745#false} is VALID [2022-04-08 12:19:52,018 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 12:19:52,018 INFO L290 TraceCheckUtils]: 66: Hoare triple {3745#false} ~cond := #in~cond; {3745#false} is VALID [2022-04-08 12:19:52,018 INFO L290 TraceCheckUtils]: 67: Hoare triple {3745#false} assume 0 == ~cond; {3745#false} is VALID [2022-04-08 12:19:52,018 INFO L290 TraceCheckUtils]: 68: Hoare triple {3745#false} assume !false; {3745#false} is VALID [2022-04-08 12:19:52,018 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 12:19:52,018 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:19:52,271 INFO L290 TraceCheckUtils]: 68: Hoare triple {3745#false} assume !false; {3745#false} is VALID [2022-04-08 12:19:52,272 INFO L290 TraceCheckUtils]: 67: Hoare triple {3745#false} assume 0 == ~cond; {3745#false} is VALID [2022-04-08 12:19:52,272 INFO L290 TraceCheckUtils]: 66: Hoare triple {3745#false} ~cond := #in~cond; {3745#false} is VALID [2022-04-08 12:19:52,272 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 12:19:52,272 INFO L290 TraceCheckUtils]: 64: Hoare triple {3940#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3745#false} is VALID [2022-04-08 12:19:52,272 INFO L290 TraceCheckUtils]: 63: Hoare triple {3940#(<= 1 main_~b~0)} assume !false; {3940#(<= 1 main_~b~0)} is VALID [2022-04-08 12:19:52,273 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 12:19:52,273 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 12:19:52,274 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 12:19:52,274 INFO L290 TraceCheckUtils]: 59: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,274 INFO L290 TraceCheckUtils]: 58: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,274 INFO L290 TraceCheckUtils]: 57: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,274 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 12:19:52,274 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 12:19:52,274 INFO L290 TraceCheckUtils]: 54: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,275 INFO L290 TraceCheckUtils]: 53: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,275 INFO L290 TraceCheckUtils]: 52: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,275 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 12:19:52,276 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 12:19:52,276 INFO L290 TraceCheckUtils]: 49: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,276 INFO L290 TraceCheckUtils]: 48: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,276 INFO L290 TraceCheckUtils]: 47: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,276 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 12:19:52,277 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 12:19:52,277 INFO L290 TraceCheckUtils]: 44: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,277 INFO L290 TraceCheckUtils]: 43: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,277 INFO L290 TraceCheckUtils]: 42: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,277 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 12:19:52,277 INFO L290 TraceCheckUtils]: 40: Hoare triple {3870#(<= 1 main_~c~0)} assume !false; {3870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:19:52,277 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 12:19:52,278 INFO L290 TraceCheckUtils]: 38: Hoare triple {3833#(<= 1 main_~a~0)} assume !false; {3833#(<= 1 main_~a~0)} is VALID [2022-04-08 12:19:52,278 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 12:19:52,278 INFO L290 TraceCheckUtils]: 36: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,278 INFO L290 TraceCheckUtils]: 35: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,278 INFO L290 TraceCheckUtils]: 34: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,278 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 12:19:52,279 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 12:19:52,279 INFO L290 TraceCheckUtils]: 31: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,279 INFO L290 TraceCheckUtils]: 30: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,279 INFO L290 TraceCheckUtils]: 29: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,279 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 12:19:52,279 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 12:19:52,280 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 12:19:52,280 INFO L290 TraceCheckUtils]: 25: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,280 INFO L290 TraceCheckUtils]: 24: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,280 INFO L290 TraceCheckUtils]: 23: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,280 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 12:19:52,280 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 12:19:52,281 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 12:19:52,281 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 12:19:52,281 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 12:19:52,281 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 12:19:52,281 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3744#true} {3744#true} #81#return; {3744#true} is VALID [2022-04-08 12:19:52,281 INFO L290 TraceCheckUtils]: 15: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L290 TraceCheckUtils]: 14: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L290 TraceCheckUtils]: 13: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L272 TraceCheckUtils]: 12: Hoare triple {3744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3744#true} is VALID [2022-04-08 12:19:52,282 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 12:19:52,282 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3744#true} {3744#true} #79#return; {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L290 TraceCheckUtils]: 9: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L290 TraceCheckUtils]: 8: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L290 TraceCheckUtils]: 7: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L272 TraceCheckUtils]: 6: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3744#true} is VALID [2022-04-08 12:19:52,282 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 12:19:52,282 INFO L272 TraceCheckUtils]: 4: Hoare triple {3744#true} call #t~ret6 := main(); {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3744#true} {3744#true} #103#return; {3744#true} is VALID [2022-04-08 12:19:52,282 INFO L290 TraceCheckUtils]: 2: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-08 12:19:52,282 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 12:19:52,283 INFO L272 TraceCheckUtils]: 0: Hoare triple {3744#true} call ULTIMATE.init(); {3744#true} is VALID [2022-04-08 12:19:52,283 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 12:19:52,283 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:19:52,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [105602695] [2022-04-08 12:19:52,283 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:19:52,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [475304213] [2022-04-08 12:19:52,283 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [475304213] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:19:52,283 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:19:52,283 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 12:19:52,284 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:19:52,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1515466165] [2022-04-08 12:19:52,284 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1515466165] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:19:52,284 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:19:52,284 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:19:52,284 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1809330339] [2022-04-08 12:19:52,284 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:19:52,284 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 12:19:52,286 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:19:52,286 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 12:19:52,315 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 12:19:52,315 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:19:52,315 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:52,316 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:19:52,316 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 12:19:52,317 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 12:19:53,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:53,017 INFO L93 Difference]: Finished difference Result 106 states and 146 transitions. [2022-04-08 12:19:53,017 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 12:19:53,017 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 12:19:53,017 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:19:53,018 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 12:19:53,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-08 12:19:53,020 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 12:19:53,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-08 12:19:53,023 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 110 transitions. [2022-04-08 12:19:53,106 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 12:19:53,111 INFO L225 Difference]: With dead ends: 106 [2022-04-08 12:19:53,111 INFO L226 Difference]: Without dead ends: 98 [2022-04-08 12:19:53,111 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 12:19:53,112 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 12:19:53,112 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 12:19:53,112 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-08 12:19:53,225 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 89. [2022-04-08 12:19:53,225 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:19:53,225 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 12:19:53,226 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 12:19:53,233 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 12:19:53,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:53,236 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-08 12:19:53,236 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-08 12:19:53,237 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:53,238 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:53,238 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 12:19:53,239 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 12:19:53,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:19:53,243 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-08 12:19:53,243 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-08 12:19:53,243 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:19:53,243 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:19:53,243 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:19:53,243 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:19:53,245 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 12:19:53,247 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 122 transitions. [2022-04-08 12:19:53,247 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 122 transitions. Word has length 69 [2022-04-08 12:19:53,247 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:19:53,247 INFO L478 AbstractCegarLoop]: Abstraction has 89 states and 122 transitions. [2022-04-08 12:19:53,248 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 12:19:53,248 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 122 transitions. [2022-04-08 12:19:53,401 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 12:19:53,402 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 122 transitions. [2022-04-08 12:19:53,402 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-08 12:19:53,402 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:19:53,402 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 12:19:53,419 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-08 12:19:53,602 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 12:19:53,605 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:19:53,605 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:19:53,605 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 1 times [2022-04-08 12:19:53,605 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:19:53,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [458284898] [2022-04-08 12:19:53,606 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:19:53,606 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 2 times [2022-04-08 12:19:53,606 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:19:53,606 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [117960377] [2022-04-08 12:19:53,606 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:19:53,606 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:19:53,621 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:19:53,621 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [490517370] [2022-04-08 12:19:53,621 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:19:53,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:19:53,621 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:19:53,622 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 12:19:53,629 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 12:19:53,695 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:19:53,695 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:19:53,696 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-08 12:19:53,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:19:53,710 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:19:53,994 INFO L272 TraceCheckUtils]: 0: Hoare triple {4762#true} call ULTIMATE.init(); {4762#true} is VALID [2022-04-08 12:19:53,994 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 12:19:53,994 INFO L290 TraceCheckUtils]: 2: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:53,994 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4762#true} {4762#true} #103#return; {4762#true} is VALID [2022-04-08 12:19:53,994 INFO L272 TraceCheckUtils]: 4: Hoare triple {4762#true} call #t~ret6 := main(); {4762#true} is VALID [2022-04-08 12:19:53,995 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 12:19:53,995 INFO L272 TraceCheckUtils]: 6: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L290 TraceCheckUtils]: 7: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L290 TraceCheckUtils]: 8: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L290 TraceCheckUtils]: 9: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4762#true} {4762#true} #79#return; {4762#true} is VALID [2022-04-08 12:19:53,995 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 12:19:53,995 INFO L272 TraceCheckUtils]: 12: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L290 TraceCheckUtils]: 13: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L290 TraceCheckUtils]: 14: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L290 TraceCheckUtils]: 15: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:53,995 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4762#true} {4762#true} #81#return; {4762#true} is VALID [2022-04-08 12:19:53,996 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 12:19:53,996 INFO L290 TraceCheckUtils]: 18: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:53,996 INFO L290 TraceCheckUtils]: 19: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:53,996 INFO L290 TraceCheckUtils]: 20: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:53,996 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4762#true} {4762#true} #83#return; {4762#true} is VALID [2022-04-08 12:19:53,996 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 12:19:53,996 INFO L290 TraceCheckUtils]: 23: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:53,996 INFO L290 TraceCheckUtils]: 24: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:53,996 INFO L290 TraceCheckUtils]: 25: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:53,996 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4762#true} {4762#true} #85#return; {4762#true} is VALID [2022-04-08 12:19:53,998 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 12:19:53,998 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 12:19:53,998 INFO L290 TraceCheckUtils]: 29: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:53,998 INFO L290 TraceCheckUtils]: 30: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:53,998 INFO L290 TraceCheckUtils]: 31: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:53,999 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 12:19:53,999 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 12:19:53,999 INFO L290 TraceCheckUtils]: 34: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:53,999 INFO L290 TraceCheckUtils]: 35: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:53,999 INFO L290 TraceCheckUtils]: 36: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:54,000 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 12:19:54,000 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 12:19:54,000 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 12:19:54,001 INFO L290 TraceCheckUtils]: 40: Hoare triple {4885#(= main_~q~0 0)} assume !false; {4885#(= main_~q~0 0)} is VALID [2022-04-08 12:19:54,001 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 12:19:54,001 INFO L290 TraceCheckUtils]: 42: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:54,001 INFO L290 TraceCheckUtils]: 43: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:54,001 INFO L290 TraceCheckUtils]: 44: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:54,002 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 12:19:54,002 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 12:19:54,002 INFO L290 TraceCheckUtils]: 47: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:54,002 INFO L290 TraceCheckUtils]: 48: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:54,002 INFO L290 TraceCheckUtils]: 49: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:54,002 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 12:19:54,002 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 12:19:54,003 INFO L290 TraceCheckUtils]: 52: Hoare triple {4762#true} ~cond := #in~cond; {4925#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:19:54,003 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 12:19:54,003 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 12:19:54,004 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 12:19:54,004 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 12:19:54,004 INFO L290 TraceCheckUtils]: 57: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:54,004 INFO L290 TraceCheckUtils]: 58: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:54,004 INFO L290 TraceCheckUtils]: 59: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:54,005 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 12:19:54,005 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 12:19:54,011 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 12:19:54,012 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 12:19:54,012 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 12:19:54,013 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 12:19:54,013 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 12:19:54,013 INFO L290 TraceCheckUtils]: 67: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:19:54,013 INFO L290 TraceCheckUtils]: 68: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:19:54,013 INFO L290 TraceCheckUtils]: 69: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:19:54,014 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 12:19:54,014 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 12:19:54,014 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 12:19:54,015 INFO L290 TraceCheckUtils]: 73: Hoare triple {4990#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4763#false} is VALID [2022-04-08 12:19:54,015 INFO L290 TraceCheckUtils]: 74: Hoare triple {4763#false} assume !false; {4763#false} is VALID [2022-04-08 12:19:54,015 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 12:19:54,015 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:20:05,621 INFO L290 TraceCheckUtils]: 74: Hoare triple {4763#false} assume !false; {4763#false} is VALID [2022-04-08 12:20:05,621 INFO L290 TraceCheckUtils]: 73: Hoare triple {4990#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4763#false} is VALID [2022-04-08 12:20:05,621 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 12:20:05,622 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 12:20:05,623 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 12:20:05,623 INFO L290 TraceCheckUtils]: 69: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,623 INFO L290 TraceCheckUtils]: 68: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,623 INFO L290 TraceCheckUtils]: 67: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,623 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 12:20:05,623 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 12:20:05,624 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 12:20:05,624 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 12:20:05,625 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 12:20:05,625 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 12:20:05,626 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 12:20:05,626 INFO L290 TraceCheckUtils]: 59: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,626 INFO L290 TraceCheckUtils]: 58: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,626 INFO L290 TraceCheckUtils]: 57: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,626 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 12:20:05,627 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 12:20:05,627 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 12:20:05,627 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 12:20:05,628 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 12:20:05,628 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 12:20:05,628 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4762#true} {4762#true} #93#return; {4762#true} is VALID [2022-04-08 12:20:05,628 INFO L290 TraceCheckUtils]: 49: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,628 INFO L290 TraceCheckUtils]: 48: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,628 INFO L290 TraceCheckUtils]: 47: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,628 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 12:20:05,628 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4762#true} {4762#true} #91#return; {4762#true} is VALID [2022-04-08 12:20:05,628 INFO L290 TraceCheckUtils]: 44: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,629 INFO L290 TraceCheckUtils]: 43: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,629 INFO L290 TraceCheckUtils]: 42: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,629 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 12:20:05,629 INFO L290 TraceCheckUtils]: 40: Hoare triple {4762#true} assume !false; {4762#true} is VALID [2022-04-08 12:20:05,629 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 12:20:05,629 INFO L290 TraceCheckUtils]: 38: Hoare triple {4762#true} assume !false; {4762#true} is VALID [2022-04-08 12:20:05,629 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4762#true} {4762#true} #89#return; {4762#true} is VALID [2022-04-08 12:20:05,629 INFO L290 TraceCheckUtils]: 36: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,629 INFO L290 TraceCheckUtils]: 35: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,629 INFO L290 TraceCheckUtils]: 34: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,629 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 12:20:05,629 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4762#true} {4762#true} #87#return; {4762#true} is VALID [2022-04-08 12:20:05,629 INFO L290 TraceCheckUtils]: 31: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 30: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 29: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,630 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 12:20:05,630 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 12:20:05,630 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4762#true} {4762#true} #85#return; {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 25: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 24: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 23: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,630 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 12:20:05,630 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4762#true} {4762#true} #83#return; {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 20: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 19: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,630 INFO L290 TraceCheckUtils]: 18: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,630 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 12:20:05,631 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4762#true} {4762#true} #81#return; {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L290 TraceCheckUtils]: 15: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L290 TraceCheckUtils]: 14: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L290 TraceCheckUtils]: 13: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L272 TraceCheckUtils]: 12: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {4762#true} is VALID [2022-04-08 12:20:05,631 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 12:20:05,631 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4762#true} {4762#true} #79#return; {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L290 TraceCheckUtils]: 8: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L290 TraceCheckUtils]: 7: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L272 TraceCheckUtils]: 6: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {4762#true} is VALID [2022-04-08 12:20:05,631 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 12:20:05,631 INFO L272 TraceCheckUtils]: 4: Hoare triple {4762#true} call #t~ret6 := main(); {4762#true} is VALID [2022-04-08 12:20:05,631 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4762#true} {4762#true} #103#return; {4762#true} is VALID [2022-04-08 12:20:05,632 INFO L290 TraceCheckUtils]: 2: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-08 12:20:05,632 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 12:20:05,633 INFO L272 TraceCheckUtils]: 0: Hoare triple {4762#true} call ULTIMATE.init(); {4762#true} is VALID [2022-04-08 12:20:05,633 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 12:20:05,633 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:20:05,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [117960377] [2022-04-08 12:20:05,633 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:20:05,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [490517370] [2022-04-08 12:20:05,634 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [490517370] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:20:05,634 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:20:05,634 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 13 [2022-04-08 12:20:05,636 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:20:05,636 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [458284898] [2022-04-08 12:20:05,636 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [458284898] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:20:05,636 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:20:05,636 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 12:20:05,636 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [912539029] [2022-04-08 12:20:05,636 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:20:05,637 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 12:20:05,637 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:20:05,637 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 12:20:05,677 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 12:20:05,677 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 12:20:05,678 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:20:05,678 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 12:20:05,678 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-08 12:20:05,678 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 12:20:06,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:20:06,443 INFO L93 Difference]: Finished difference Result 124 states and 173 transitions. [2022-04-08 12:20:06,443 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 12:20:06,443 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 12:20:06,443 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:20:06,443 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 12:20:06,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-08 12:20:06,445 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 12:20:06,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-08 12:20:06,447 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 83 transitions. [2022-04-08 12:20:06,516 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 12:20:06,518 INFO L225 Difference]: With dead ends: 124 [2022-04-08 12:20:06,518 INFO L226 Difference]: Without dead ends: 121 [2022-04-08 12:20:06,518 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 12:20:06,519 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 23 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 212 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:20:06,519 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.2s Time] [2022-04-08 12:20:06,519 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-04-08 12:20:06,694 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 118. [2022-04-08 12:20:06,695 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:20:06,695 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 12:20:06,695 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 12:20:06,696 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 12:20:06,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:20:06,701 INFO L93 Difference]: Finished difference Result 121 states and 169 transitions. [2022-04-08 12:20:06,701 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 169 transitions. [2022-04-08 12:20:06,701 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:20:06,701 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:20:06,702 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 12:20:06,702 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 12:20:06,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:20:06,706 INFO L93 Difference]: Finished difference Result 121 states and 169 transitions. [2022-04-08 12:20:06,706 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 169 transitions. [2022-04-08 12:20:06,707 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:20:06,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:20:06,707 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:20:06,707 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:20:06,707 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 12:20:06,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 166 transitions. [2022-04-08 12:20:06,710 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 166 transitions. Word has length 75 [2022-04-08 12:20:06,710 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:20:06,710 INFO L478 AbstractCegarLoop]: Abstraction has 118 states and 166 transitions. [2022-04-08 12:20:06,711 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 12:20:06,711 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 118 states and 166 transitions. [2022-04-08 12:20:06,932 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 12:20:06,933 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 166 transitions. [2022-04-08 12:20:06,933 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-08 12:20:06,933 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:20:06,933 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 12:20:06,952 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 12:20:07,133 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 12:20:07,134 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:20:07,134 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:20:07,134 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 3 times [2022-04-08 12:20:07,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:20:07,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [172449990] [2022-04-08 12:20:07,135 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:20:07,135 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 4 times [2022-04-08 12:20:07,135 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:20:07,135 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1972075569] [2022-04-08 12:20:07,135 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:20:07,135 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:20:07,149 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:20:07,149 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1236117881] [2022-04-08 12:20:07,149 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:20:07,149 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:20:07,149 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:20:07,160 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 12:20:07,161 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 12:20:07,204 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:20:07,204 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:20:07,206 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-08 12:20:07,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:20:07,223 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:20:08,401 INFO L272 TraceCheckUtils]: 0: Hoare triple {5956#true} call ULTIMATE.init(); {5956#true} is VALID [2022-04-08 12:20:08,401 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 12:20:08,401 INFO L290 TraceCheckUtils]: 2: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,401 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5956#true} {5956#true} #103#return; {5956#true} is VALID [2022-04-08 12:20:08,401 INFO L272 TraceCheckUtils]: 4: Hoare triple {5956#true} call #t~ret6 := main(); {5956#true} is VALID [2022-04-08 12:20:08,401 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 12:20:08,401 INFO L272 TraceCheckUtils]: 6: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:08,401 INFO L290 TraceCheckUtils]: 7: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,401 INFO L290 TraceCheckUtils]: 8: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,401 INFO L290 TraceCheckUtils]: 9: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,402 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5956#true} {5956#true} #79#return; {5956#true} is VALID [2022-04-08 12:20:08,402 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 12:20:08,402 INFO L272 TraceCheckUtils]: 12: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:08,402 INFO L290 TraceCheckUtils]: 13: Hoare triple {5956#true} ~cond := #in~cond; {6000#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:20:08,402 INFO L290 TraceCheckUtils]: 14: Hoare triple {6000#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6004#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:20:08,403 INFO L290 TraceCheckUtils]: 15: Hoare triple {6004#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6004#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:20:08,403 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6004#(not (= |assume_abort_if_not_#in~cond| 0))} {5956#true} #81#return; {6011#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-08 12:20:08,403 INFO L272 TraceCheckUtils]: 17: Hoare triple {6011#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:08,404 INFO L290 TraceCheckUtils]: 18: Hoare triple {5956#true} ~cond := #in~cond; {6000#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:20:08,404 INFO L290 TraceCheckUtils]: 19: Hoare triple {6000#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6004#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:20:08,404 INFO L290 TraceCheckUtils]: 20: Hoare triple {6004#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6004#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:20:08,405 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6004#(not (= |assume_abort_if_not_#in~cond| 0))} {6011#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #83#return; {6027#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} is VALID [2022-04-08 12:20:08,405 INFO L272 TraceCheckUtils]: 22: Hoare triple {6027#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:08,405 INFO L290 TraceCheckUtils]: 23: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,405 INFO L290 TraceCheckUtils]: 24: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,405 INFO L290 TraceCheckUtils]: 25: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,405 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5956#true} {6027#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} #85#return; {6027#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} is VALID [2022-04-08 12:20:08,406 INFO L290 TraceCheckUtils]: 27: Hoare triple {6027#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} ~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; {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,406 INFO L272 TraceCheckUtils]: 28: Hoare triple {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,406 INFO L290 TraceCheckUtils]: 29: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,406 INFO L290 TraceCheckUtils]: 30: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,406 INFO L290 TraceCheckUtils]: 31: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,407 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5956#true} {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,407 INFO L272 TraceCheckUtils]: 33: Hoare triple {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,407 INFO L290 TraceCheckUtils]: 34: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,407 INFO L290 TraceCheckUtils]: 35: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,407 INFO L290 TraceCheckUtils]: 36: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,408 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5956#true} {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,408 INFO L290 TraceCheckUtils]: 38: Hoare triple {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,409 INFO L290 TraceCheckUtils]: 39: Hoare triple {6046#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,409 INFO L290 TraceCheckUtils]: 40: Hoare triple {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,409 INFO L272 TraceCheckUtils]: 41: Hoare triple {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,409 INFO L290 TraceCheckUtils]: 42: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,409 INFO L290 TraceCheckUtils]: 43: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,409 INFO L290 TraceCheckUtils]: 44: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,410 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5956#true} {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,410 INFO L272 TraceCheckUtils]: 46: Hoare triple {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,410 INFO L290 TraceCheckUtils]: 47: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,410 INFO L290 TraceCheckUtils]: 48: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,410 INFO L290 TraceCheckUtils]: 49: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,411 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5956#true} {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,411 INFO L272 TraceCheckUtils]: 51: Hoare triple {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,411 INFO L290 TraceCheckUtils]: 52: Hoare triple {5956#true} ~cond := #in~cond; {6123#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:20:08,412 INFO L290 TraceCheckUtils]: 53: Hoare triple {6123#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:08,412 INFO L290 TraceCheckUtils]: 54: Hoare triple {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:08,413 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} {6083#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {6134#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,413 INFO L272 TraceCheckUtils]: 56: Hoare triple {6134#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= 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 12:20:08,413 INFO L290 TraceCheckUtils]: 57: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,413 INFO L290 TraceCheckUtils]: 58: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,413 INFO L290 TraceCheckUtils]: 59: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,414 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5956#true} {6134#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {6134#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 12:20:08,414 INFO L290 TraceCheckUtils]: 61: Hoare triple {6134#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6153#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (< main_~c~0 main_~b~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:20:08,415 INFO L290 TraceCheckUtils]: 62: Hoare triple {6153#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (< main_~c~0 main_~b~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; {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} is VALID [2022-04-08 12:20:08,415 INFO L290 TraceCheckUtils]: 63: Hoare triple {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} assume !false; {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} is VALID [2022-04-08 12:20:08,416 INFO L290 TraceCheckUtils]: 64: Hoare triple {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} is VALID [2022-04-08 12:20:08,416 INFO L290 TraceCheckUtils]: 65: Hoare triple {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} assume !false; {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} is VALID [2022-04-08 12:20:08,416 INFO L272 TraceCheckUtils]: 66: Hoare triple {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~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 12:20:08,416 INFO L290 TraceCheckUtils]: 67: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:08,416 INFO L290 TraceCheckUtils]: 68: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:08,416 INFO L290 TraceCheckUtils]: 69: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:08,417 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5956#true} {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} #91#return; {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} is VALID [2022-04-08 12:20:08,417 INFO L272 TraceCheckUtils]: 71: Hoare triple {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~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 12:20:08,418 INFO L290 TraceCheckUtils]: 72: Hoare triple {5956#true} ~cond := #in~cond; {6123#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:20:08,418 INFO L290 TraceCheckUtils]: 73: Hoare triple {6123#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:08,418 INFO L290 TraceCheckUtils]: 74: Hoare triple {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:08,419 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} {6157#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (< main_~x~0 main_~a~0) (= main_~q~0 1))} #93#return; {6197#(and (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:20:08,420 INFO L272 TraceCheckUtils]: 76: Hoare triple {6197#(and (= main_~s~0 0) (<= 1 main_~x~0) (<= main_~y~0 10) (< 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)); {6201#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:20:08,420 INFO L290 TraceCheckUtils]: 77: Hoare triple {6201#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6205#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:20:08,420 INFO L290 TraceCheckUtils]: 78: Hoare triple {6205#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5957#false} is VALID [2022-04-08 12:20:08,420 INFO L290 TraceCheckUtils]: 79: Hoare triple {5957#false} assume !false; {5957#false} is VALID [2022-04-08 12:20:08,421 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 34 proven. 32 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-08 12:20:08,421 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:20:43,092 INFO L290 TraceCheckUtils]: 79: Hoare triple {5957#false} assume !false; {5957#false} is VALID [2022-04-08 12:20:43,093 INFO L290 TraceCheckUtils]: 78: Hoare triple {6205#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5957#false} is VALID [2022-04-08 12:20:43,093 INFO L290 TraceCheckUtils]: 77: Hoare triple {6201#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6205#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:20:43,094 INFO L272 TraceCheckUtils]: 76: Hoare triple {6221#(= 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)); {6201#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:20:43,095 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #93#return; {6221#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:20:43,095 INFO L290 TraceCheckUtils]: 74: Hoare triple {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:43,095 INFO L290 TraceCheckUtils]: 73: Hoare triple {6235#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6127#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:43,096 INFO L290 TraceCheckUtils]: 72: Hoare triple {5956#true} ~cond := #in~cond; {6235#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:20:43,096 INFO L272 TraceCheckUtils]: 71: Hoare triple {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:43,096 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5956#true} {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #91#return; {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:20:43,096 INFO L290 TraceCheckUtils]: 69: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,097 INFO L290 TraceCheckUtils]: 68: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,097 INFO L290 TraceCheckUtils]: 67: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,097 INFO L272 TraceCheckUtils]: 66: Hoare triple {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:43,097 INFO L290 TraceCheckUtils]: 65: Hoare triple {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:20:43,098 INFO L290 TraceCheckUtils]: 64: Hoare triple {6260#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0) (not (= 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; {6225#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:20:43,098 INFO L290 TraceCheckUtils]: 63: Hoare triple {6260#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {6260#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:20:43,177 INFO L290 TraceCheckUtils]: 62: Hoare triple {6267#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= 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; {6260#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:20:43,178 INFO L290 TraceCheckUtils]: 61: Hoare triple {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} assume !(~c~0 >= ~b~0); {6267#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~c~0 0))} is VALID [2022-04-08 12:20:43,179 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5956#true} {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #97#return; {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 12:20:43,179 INFO L290 TraceCheckUtils]: 59: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,179 INFO L290 TraceCheckUtils]: 58: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,179 INFO L290 TraceCheckUtils]: 57: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,179 INFO L272 TraceCheckUtils]: 56: Hoare triple {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= 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 12:20:43,180 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5956#true} {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #95#return; {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 12:20:43,180 INFO L290 TraceCheckUtils]: 54: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,180 INFO L290 TraceCheckUtils]: 53: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,180 INFO L290 TraceCheckUtils]: 52: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,180 INFO L272 TraceCheckUtils]: 51: Hoare triple {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= 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 12:20:43,181 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5956#true} {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #93#return; {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 12:20:43,181 INFO L290 TraceCheckUtils]: 49: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,181 INFO L290 TraceCheckUtils]: 48: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,181 INFO L290 TraceCheckUtils]: 47: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,181 INFO L272 TraceCheckUtils]: 46: Hoare triple {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= 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 12:20:43,182 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5956#true} {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #91#return; {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 12:20:43,182 INFO L290 TraceCheckUtils]: 44: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,182 INFO L290 TraceCheckUtils]: 43: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,182 INFO L290 TraceCheckUtils]: 42: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,182 INFO L272 TraceCheckUtils]: 41: Hoare triple {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= 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 12:20:43,182 INFO L290 TraceCheckUtils]: 40: Hoare triple {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} assume !false; {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 12:20:43,183 INFO L290 TraceCheckUtils]: 39: Hoare triple {6338#(or (= main_~a~0 0) (= 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_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6271#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-08 12:20:43,183 INFO L290 TraceCheckUtils]: 38: Hoare triple {6338#(or (= main_~a~0 0) (= 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_~a~0))} assume !false; {6338#(or (= main_~a~0 0) (= 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_~a~0))} is VALID [2022-04-08 12:20:43,184 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5956#true} {6338#(or (= main_~a~0 0) (= 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_~a~0))} #89#return; {6338#(or (= main_~a~0 0) (= 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_~a~0))} is VALID [2022-04-08 12:20:43,184 INFO L290 TraceCheckUtils]: 36: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,184 INFO L290 TraceCheckUtils]: 35: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,184 INFO L290 TraceCheckUtils]: 34: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,184 INFO L272 TraceCheckUtils]: 33: Hoare triple {6338#(or (= main_~a~0 0) (= 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_~a~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:43,185 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5956#true} {6338#(or (= main_~a~0 0) (= 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_~a~0))} #87#return; {6338#(or (= main_~a~0 0) (= 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_~a~0))} is VALID [2022-04-08 12:20:43,185 INFO L290 TraceCheckUtils]: 31: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,185 INFO L290 TraceCheckUtils]: 30: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,185 INFO L290 TraceCheckUtils]: 29: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,185 INFO L272 TraceCheckUtils]: 28: Hoare triple {6338#(or (= main_~a~0 0) (= 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_~a~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:43,186 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; {6338#(or (= main_~a~0 0) (= 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_~a~0))} is VALID [2022-04-08 12:20:43,186 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5956#true} {5956#true} #85#return; {5956#true} is VALID [2022-04-08 12:20:43,186 INFO L290 TraceCheckUtils]: 25: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,186 INFO L290 TraceCheckUtils]: 24: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,186 INFO L290 TraceCheckUtils]: 23: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,186 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 12:20:43,186 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5956#true} {5956#true} #83#return; {5956#true} is VALID [2022-04-08 12:20:43,186 INFO L290 TraceCheckUtils]: 20: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,186 INFO L290 TraceCheckUtils]: 19: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,186 INFO L290 TraceCheckUtils]: 18: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,186 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 12:20:43,186 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5956#true} {5956#true} #81#return; {5956#true} is VALID [2022-04-08 12:20:43,186 INFO L290 TraceCheckUtils]: 15: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L290 TraceCheckUtils]: 14: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L290 TraceCheckUtils]: 13: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L272 TraceCheckUtils]: 12: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:43,187 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 12:20:43,187 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5956#true} {5956#true} #79#return; {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L290 TraceCheckUtils]: 9: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L290 TraceCheckUtils]: 8: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L290 TraceCheckUtils]: 7: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L272 TraceCheckUtils]: 6: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {5956#true} is VALID [2022-04-08 12:20:43,187 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 12:20:43,187 INFO L272 TraceCheckUtils]: 4: Hoare triple {5956#true} call #t~ret6 := main(); {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5956#true} {5956#true} #103#return; {5956#true} is VALID [2022-04-08 12:20:43,187 INFO L290 TraceCheckUtils]: 2: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-08 12:20:43,187 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 12:20:43,188 INFO L272 TraceCheckUtils]: 0: Hoare triple {5956#true} call ULTIMATE.init(); {5956#true} is VALID [2022-04-08 12:20:43,188 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 26 proven. 7 refuted. 0 times theorem prover too weak. 105 trivial. 0 not checked. [2022-04-08 12:20:43,188 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:20:43,188 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1972075569] [2022-04-08 12:20:43,188 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:20:43,188 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1236117881] [2022-04-08 12:20:43,188 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1236117881] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:20:43,188 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:20:43,188 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 12] total 23 [2022-04-08 12:20:43,189 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:20:43,189 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [172449990] [2022-04-08 12:20:43,189 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [172449990] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:20:43,189 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:20:43,189 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 12:20:43,189 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1243652390] [2022-04-08 12:20:43,189 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:20:43,189 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 14 states have (on average 2.0) internal successors, (28), 11 states have internal predecessors, (28), 8 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 8 states have call predecessors, (13), 7 states have call successors, (13) Word has length 80 [2022-04-08 12:20:43,189 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:20:43,190 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 14 states have (on average 2.0) internal successors, (28), 11 states have internal predecessors, (28), 8 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 8 states have call predecessors, (13), 7 states have call successors, (13) [2022-04-08 12:20:43,234 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:20:43,234 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 12:20:43,234 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:20:43,235 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 12:20:43,235 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=88, Invalid=418, Unknown=0, NotChecked=0, Total=506 [2022-04-08 12:20:43,235 INFO L87 Difference]: Start difference. First operand 118 states and 166 transitions. Second operand has 16 states, 14 states have (on average 2.0) internal successors, (28), 11 states have internal predecessors, (28), 8 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 8 states have call predecessors, (13), 7 states have call successors, (13) [2022-04-08 12:20:45,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:20:45,007 INFO L93 Difference]: Finished difference Result 134 states and 179 transitions. [2022-04-08 12:20:45,007 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 12:20:45,008 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 14 states have (on average 2.0) internal successors, (28), 11 states have internal predecessors, (28), 8 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 8 states have call predecessors, (13), 7 states have call successors, (13) Word has length 80 [2022-04-08 12:20:45,008 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:20:45,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 14 states have (on average 2.0) internal successors, (28), 11 states have internal predecessors, (28), 8 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 8 states have call predecessors, (13), 7 states have call successors, (13) [2022-04-08 12:20:45,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 91 transitions. [2022-04-08 12:20:45,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 14 states have (on average 2.0) internal successors, (28), 11 states have internal predecessors, (28), 8 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 8 states have call predecessors, (13), 7 states have call successors, (13) [2022-04-08 12:20:45,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 91 transitions. [2022-04-08 12:20:45,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 91 transitions. [2022-04-08 12:20:45,101 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 12:20:45,103 INFO L225 Difference]: With dead ends: 134 [2022-04-08 12:20:45,103 INFO L226 Difference]: Without dead ends: 132 [2022-04-08 12:20:45,104 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 165 GetRequests, 136 SyntacticMatches, 2 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 173 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=144, Invalid=668, Unknown=0, NotChecked=0, Total=812 [2022-04-08 12:20:45,104 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 66 mSDsluCounter, 125 mSDsCounter, 0 mSdLazyCounter, 415 mSolverCounterSat, 62 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 477 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 62 IncrementalHoareTripleChecker+Valid, 415 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 12:20:45,104 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 157 Invalid, 477 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [62 Valid, 415 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-08 12:20:45,105 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-08 12:20:45,318 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 130. [2022-04-08 12:20:45,318 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:20:45,319 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 12:20:45,319 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 12:20:45,319 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 12:20:45,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:20:45,322 INFO L93 Difference]: Finished difference Result 132 states and 177 transitions. [2022-04-08 12:20:45,322 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 177 transitions. [2022-04-08 12:20:45,322 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:20:45,322 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:20:45,323 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 12:20:45,323 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 12:20:45,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:20:45,325 INFO L93 Difference]: Finished difference Result 132 states and 177 transitions. [2022-04-08 12:20:45,325 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 177 transitions. [2022-04-08 12:20:45,326 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:20:45,326 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:20:45,326 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:20:45,326 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:20:45,326 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 12:20:45,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 175 transitions. [2022-04-08 12:20:45,329 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 175 transitions. Word has length 80 [2022-04-08 12:20:45,330 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:20:45,330 INFO L478 AbstractCegarLoop]: Abstraction has 130 states and 175 transitions. [2022-04-08 12:20:45,330 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 14 states have (on average 2.0) internal successors, (28), 11 states have internal predecessors, (28), 8 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 8 states have call predecessors, (13), 7 states have call successors, (13) [2022-04-08 12:20:45,330 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 175 transitions. [2022-04-08 12:20:45,559 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 12:20:45,560 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 175 transitions. [2022-04-08 12:20:45,560 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-08 12:20:45,560 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:20:45,560 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 12:20:45,577 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 12:20:45,760 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 12:20:45,761 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:20:45,761 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:20:45,761 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 5 times [2022-04-08 12:20:45,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:20:45,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1671681209] [2022-04-08 12:20:45,762 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:20:45,762 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 6 times [2022-04-08 12:20:45,762 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:20:45,762 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1651832030] [2022-04-08 12:20:45,762 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:20:45,762 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:20:45,773 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:20:45,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1479085301] [2022-04-08 12:20:45,773 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:20:45,773 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:20:45,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:20:45,774 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 12:20:45,779 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 12:20:45,849 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 12:20:45,849 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:20:45,851 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-08 12:20:45,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:20:45,869 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:20:46,687 INFO L272 TraceCheckUtils]: 0: Hoare triple {7262#true} call ULTIMATE.init(); {7262#true} is VALID [2022-04-08 12:20:46,687 INFO L290 TraceCheckUtils]: 1: Hoare triple {7262#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); {7262#true} is VALID [2022-04-08 12:20:46,687 INFO L290 TraceCheckUtils]: 2: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,687 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7262#true} {7262#true} #103#return; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L272 TraceCheckUtils]: 4: Hoare triple {7262#true} call #t~ret6 := main(); {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 5: Hoare triple {7262#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; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L272 TraceCheckUtils]: 6: Hoare triple {7262#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 7: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 8: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 9: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7262#true} {7262#true} #79#return; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 11: Hoare triple {7262#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L272 TraceCheckUtils]: 12: Hoare triple {7262#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 13: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 14: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,688 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7262#true} {7262#true} #81#return; {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L272 TraceCheckUtils]: 17: Hoare triple {7262#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L290 TraceCheckUtils]: 18: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7262#true} {7262#true} #83#return; {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L272 TraceCheckUtils]: 22: Hoare triple {7262#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L290 TraceCheckUtils]: 23: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L290 TraceCheckUtils]: 24: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L290 TraceCheckUtils]: 25: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,689 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7262#true} {7262#true} #85#return; {7262#true} is VALID [2022-04-08 12:20:46,690 INFO L290 TraceCheckUtils]: 27: Hoare triple {7262#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; {7348#(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 12:20:46,690 INFO L272 TraceCheckUtils]: 28: Hoare triple {7348#(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)); {7262#true} is VALID [2022-04-08 12:20:46,690 INFO L290 TraceCheckUtils]: 29: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,690 INFO L290 TraceCheckUtils]: 30: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,690 INFO L290 TraceCheckUtils]: 31: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,691 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7262#true} {7348#(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; {7348#(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 12:20:46,691 INFO L272 TraceCheckUtils]: 33: Hoare triple {7348#(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)); {7262#true} is VALID [2022-04-08 12:20:46,691 INFO L290 TraceCheckUtils]: 34: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,691 INFO L290 TraceCheckUtils]: 35: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,691 INFO L290 TraceCheckUtils]: 36: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,692 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {7262#true} {7348#(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; {7348#(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 12:20:46,692 INFO L290 TraceCheckUtils]: 38: Hoare triple {7348#(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; {7348#(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 12:20:46,693 INFO L290 TraceCheckUtils]: 39: Hoare triple {7348#(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; {7385#(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 12:20:46,693 INFO L290 TraceCheckUtils]: 40: Hoare triple {7385#(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; {7385#(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 12:20:46,693 INFO L272 TraceCheckUtils]: 41: Hoare triple {7385#(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)); {7262#true} is VALID [2022-04-08 12:20:46,693 INFO L290 TraceCheckUtils]: 42: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,693 INFO L290 TraceCheckUtils]: 43: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,693 INFO L290 TraceCheckUtils]: 44: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,694 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {7262#true} {7385#(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; {7385#(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 12:20:46,694 INFO L272 TraceCheckUtils]: 46: Hoare triple {7385#(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)); {7262#true} is VALID [2022-04-08 12:20:46,694 INFO L290 TraceCheckUtils]: 47: Hoare triple {7262#true} ~cond := #in~cond; {7410#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:20:46,695 INFO L290 TraceCheckUtils]: 48: Hoare triple {7410#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:46,695 INFO L290 TraceCheckUtils]: 49: Hoare triple {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:46,696 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} {7385#(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; {7421#(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 12:20:46,696 INFO L272 TraceCheckUtils]: 51: Hoare triple {7421#(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)); {7262#true} is VALID [2022-04-08 12:20:46,696 INFO L290 TraceCheckUtils]: 52: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,696 INFO L290 TraceCheckUtils]: 53: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,696 INFO L290 TraceCheckUtils]: 54: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,697 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7262#true} {7421#(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; {7421#(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 12:20:46,697 INFO L272 TraceCheckUtils]: 56: Hoare triple {7421#(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)); {7262#true} is VALID [2022-04-08 12:20:46,697 INFO L290 TraceCheckUtils]: 57: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,697 INFO L290 TraceCheckUtils]: 58: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,697 INFO L290 TraceCheckUtils]: 59: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,698 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7262#true} {7421#(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; {7421#(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 12:20:46,699 INFO L290 TraceCheckUtils]: 61: Hoare triple {7421#(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); {7421#(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 12:20:46,700 INFO L290 TraceCheckUtils]: 62: Hoare triple {7421#(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; {7458#(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 12:20:46,701 INFO L290 TraceCheckUtils]: 63: Hoare triple {7458#(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; {7458#(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 12:20:46,701 INFO L290 TraceCheckUtils]: 64: Hoare triple {7458#(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; {7465#(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 12:20:46,702 INFO L290 TraceCheckUtils]: 65: Hoare triple {7465#(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; {7465#(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 12:20:46,702 INFO L272 TraceCheckUtils]: 66: Hoare triple {7465#(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)); {7262#true} is VALID [2022-04-08 12:20:46,702 INFO L290 TraceCheckUtils]: 67: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,702 INFO L290 TraceCheckUtils]: 68: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,702 INFO L290 TraceCheckUtils]: 69: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,703 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {7262#true} {7465#(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; {7465#(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 12:20:46,703 INFO L272 TraceCheckUtils]: 71: Hoare triple {7465#(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)); {7262#true} is VALID [2022-04-08 12:20:46,703 INFO L290 TraceCheckUtils]: 72: Hoare triple {7262#true} ~cond := #in~cond; {7262#true} is VALID [2022-04-08 12:20:46,703 INFO L290 TraceCheckUtils]: 73: Hoare triple {7262#true} assume !(0 == ~cond); {7262#true} is VALID [2022-04-08 12:20:46,703 INFO L290 TraceCheckUtils]: 74: Hoare triple {7262#true} assume true; {7262#true} is VALID [2022-04-08 12:20:46,704 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {7262#true} {7465#(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; {7465#(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 12:20:46,704 INFO L272 TraceCheckUtils]: 76: Hoare triple {7465#(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)); {7262#true} is VALID [2022-04-08 12:20:46,704 INFO L290 TraceCheckUtils]: 77: Hoare triple {7262#true} ~cond := #in~cond; {7410#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:20:46,704 INFO L290 TraceCheckUtils]: 78: Hoare triple {7410#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:46,705 INFO L290 TraceCheckUtils]: 79: Hoare triple {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:20:46,705 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {7414#(not (= |__VERIFIER_assert_#in~cond| 0))} {7465#(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; {7465#(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 12:20:46,711 INFO L272 TraceCheckUtils]: 81: Hoare triple {7465#(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)); {7517#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:20:46,711 INFO L290 TraceCheckUtils]: 82: Hoare triple {7517#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7521#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:20:46,712 INFO L290 TraceCheckUtils]: 83: Hoare triple {7521#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7263#false} is VALID [2022-04-08 12:20:46,712 INFO L290 TraceCheckUtils]: 84: Hoare triple {7263#false} assume !false; {7263#false} is VALID [2022-04-08 12:20:46,712 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 12:20:46,712 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:21:27,666 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:21:27,667 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1651832030] [2022-04-08 12:21:27,667 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:21:27,667 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1479085301] [2022-04-08 12:21:27,667 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1479085301] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 12:21:27,667 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:21:27,667 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-08 12:21:27,667 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:21:27,667 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1671681209] [2022-04-08 12:21:27,667 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1671681209] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:21:27,667 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:21:27,668 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 12:21:27,668 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [622061302] [2022-04-08 12:21:27,668 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:21:27,668 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 12:21:27,668 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:21:27,668 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 12:21:27,720 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 12:21:27,720 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 12:21:27,720 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:21:27,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 12:21:27,720 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-08 12:21:27,721 INFO L87 Difference]: Start difference. First operand 130 states and 175 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 12:21:29,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:29,102 INFO L93 Difference]: Finished difference Result 138 states and 182 transitions. [2022-04-08 12:21:29,102 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 12:21:29,102 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 12:21:29,102 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:21:29,102 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 12:21:29,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 91 transitions. [2022-04-08 12:21:29,103 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 12:21:29,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 91 transitions. [2022-04-08 12:21:29,105 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 91 transitions. [2022-04-08 12:21:29,201 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 12:21:29,203 INFO L225 Difference]: With dead ends: 138 [2022-04-08 12:21:29,203 INFO L226 Difference]: Without dead ends: 136 [2022-04-08 12:21:29,204 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 12:21:29,204 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 25 mSDsluCounter, 170 mSDsCounter, 0 mSdLazyCounter, 306 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 210 SdHoareTripleChecker+Invalid, 320 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 306 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 12:21:29,204 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 210 Invalid, 320 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 306 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 12:21:29,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-04-08 12:21:29,453 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 134. [2022-04-08 12:21:29,453 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:21:29,453 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand has 134 states, 74 states have (on average 1.1756756756756757) internal successors, (87), 76 states have internal predecessors, (87), 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 12:21:29,455 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand has 134 states, 74 states have (on average 1.1756756756756757) internal successors, (87), 76 states have internal predecessors, (87), 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 12:21:29,456 INFO L87 Difference]: Start difference. First operand 136 states. Second operand has 134 states, 74 states have (on average 1.1756756756756757) internal successors, (87), 76 states have internal predecessors, (87), 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 12:21:29,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:29,459 INFO L93 Difference]: Finished difference Result 136 states and 180 transitions. [2022-04-08 12:21:29,459 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 180 transitions. [2022-04-08 12:21:29,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:21:29,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:21:29,460 INFO L74 IsIncluded]: Start isIncluded. First operand has 134 states, 74 states have (on average 1.1756756756756757) internal successors, (87), 76 states have internal predecessors, (87), 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 136 states. [2022-04-08 12:21:29,461 INFO L87 Difference]: Start difference. First operand has 134 states, 74 states have (on average 1.1756756756756757) internal successors, (87), 76 states have internal predecessors, (87), 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 136 states. [2022-04-08 12:21:29,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:29,464 INFO L93 Difference]: Finished difference Result 136 states and 180 transitions. [2022-04-08 12:21:29,464 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 180 transitions. [2022-04-08 12:21:29,464 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:21:29,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:21:29,464 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:21:29,465 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:21:29,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 134 states, 74 states have (on average 1.1756756756756757) internal successors, (87), 76 states have internal predecessors, (87), 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 12:21:29,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 134 states to 134 states and 178 transitions. [2022-04-08 12:21:29,467 INFO L78 Accepts]: Start accepts. Automaton has 134 states and 178 transitions. Word has length 85 [2022-04-08 12:21:29,468 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:21:29,468 INFO L478 AbstractCegarLoop]: Abstraction has 134 states and 178 transitions. [2022-04-08 12:21:29,468 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 12:21:29,468 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 134 states and 178 transitions. [2022-04-08 12:21:29,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:21:29,710 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 178 transitions. [2022-04-08 12:21:29,710 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 12:21:29,710 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:21:29,710 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 12:21:29,727 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-08 12:21:29,919 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 12:21:29,919 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:21:29,919 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:21:29,920 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 1 times [2022-04-08 12:21:29,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:21:29,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [595719756] [2022-04-08 12:21:29,920 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:21:29,920 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 2 times [2022-04-08 12:21:29,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:21:29,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [977014653] [2022-04-08 12:21:29,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:21:29,921 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:21:29,945 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:21:29,945 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1181043166] [2022-04-08 12:21:29,945 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:21:29,945 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:21:29,945 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:21:29,946 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 12:21:29,946 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 12:21:30,006 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:21:30,007 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:21:30,008 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-08 12:21:30,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:21:30,027 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:21:30,589 INFO L272 TraceCheckUtils]: 0: Hoare triple {8366#true} call ULTIMATE.init(); {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {8366#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); {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L290 TraceCheckUtils]: 2: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8366#true} {8366#true} #103#return; {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L272 TraceCheckUtils]: 4: Hoare triple {8366#true} call #t~ret6 := main(); {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L290 TraceCheckUtils]: 5: Hoare triple {8366#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; {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L272 TraceCheckUtils]: 6: Hoare triple {8366#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L290 TraceCheckUtils]: 7: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L290 TraceCheckUtils]: 8: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L290 TraceCheckUtils]: 9: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8366#true} {8366#true} #79#return; {8366#true} is VALID [2022-04-08 12:21:30,590 INFO L290 TraceCheckUtils]: 11: Hoare triple {8366#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L272 TraceCheckUtils]: 12: Hoare triple {8366#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 13: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 14: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 15: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8366#true} {8366#true} #81#return; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L272 TraceCheckUtils]: 17: Hoare triple {8366#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 18: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 19: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 20: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8366#true} {8366#true} #83#return; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L272 TraceCheckUtils]: 22: Hoare triple {8366#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 23: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,591 INFO L290 TraceCheckUtils]: 24: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,592 INFO L290 TraceCheckUtils]: 25: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,592 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8366#true} {8366#true} #85#return; {8366#true} is VALID [2022-04-08 12:21:30,601 INFO L290 TraceCheckUtils]: 27: Hoare triple {8366#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; {8452#(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 12:21:30,601 INFO L272 TraceCheckUtils]: 28: Hoare triple {8452#(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)); {8366#true} is VALID [2022-04-08 12:21:30,601 INFO L290 TraceCheckUtils]: 29: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,601 INFO L290 TraceCheckUtils]: 30: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,601 INFO L290 TraceCheckUtils]: 31: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,602 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8366#true} {8452#(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; {8452#(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 12:21:30,602 INFO L272 TraceCheckUtils]: 33: Hoare triple {8452#(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)); {8366#true} is VALID [2022-04-08 12:21:30,602 INFO L290 TraceCheckUtils]: 34: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,602 INFO L290 TraceCheckUtils]: 35: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,602 INFO L290 TraceCheckUtils]: 36: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,603 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8366#true} {8452#(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; {8452#(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 12:21:30,603 INFO L290 TraceCheckUtils]: 38: Hoare triple {8452#(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; {8452#(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 12:21:30,604 INFO L290 TraceCheckUtils]: 39: Hoare triple {8452#(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; {8489#(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 12:21:30,604 INFO L290 TraceCheckUtils]: 40: Hoare triple {8489#(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; {8489#(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 12:21:30,604 INFO L272 TraceCheckUtils]: 41: Hoare triple {8489#(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)); {8366#true} is VALID [2022-04-08 12:21:30,604 INFO L290 TraceCheckUtils]: 42: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,604 INFO L290 TraceCheckUtils]: 43: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,604 INFO L290 TraceCheckUtils]: 44: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,605 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8366#true} {8489#(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; {8489#(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 12:21:30,605 INFO L272 TraceCheckUtils]: 46: Hoare triple {8489#(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)); {8366#true} is VALID [2022-04-08 12:21:30,605 INFO L290 TraceCheckUtils]: 47: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,605 INFO L290 TraceCheckUtils]: 48: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,605 INFO L290 TraceCheckUtils]: 49: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,606 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8366#true} {8489#(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; {8489#(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 12:21:30,606 INFO L272 TraceCheckUtils]: 51: Hoare triple {8489#(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)); {8366#true} is VALID [2022-04-08 12:21:30,606 INFO L290 TraceCheckUtils]: 52: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,606 INFO L290 TraceCheckUtils]: 53: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,606 INFO L290 TraceCheckUtils]: 54: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,607 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8366#true} {8489#(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; {8489#(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 12:21:30,607 INFO L272 TraceCheckUtils]: 56: Hoare triple {8489#(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)); {8366#true} is VALID [2022-04-08 12:21:30,607 INFO L290 TraceCheckUtils]: 57: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,607 INFO L290 TraceCheckUtils]: 58: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,607 INFO L290 TraceCheckUtils]: 59: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,608 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8366#true} {8489#(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; {8489#(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 12:21:30,609 INFO L290 TraceCheckUtils]: 61: Hoare triple {8489#(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; {8556#(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 12:21:30,609 INFO L290 TraceCheckUtils]: 62: Hoare triple {8556#(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; {8556#(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 12:21:30,609 INFO L272 TraceCheckUtils]: 63: Hoare triple {8556#(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)); {8366#true} is VALID [2022-04-08 12:21:30,609 INFO L290 TraceCheckUtils]: 64: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,609 INFO L290 TraceCheckUtils]: 65: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,609 INFO L290 TraceCheckUtils]: 66: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,610 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8366#true} {8556#(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; {8556#(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 12:21:30,610 INFO L272 TraceCheckUtils]: 68: Hoare triple {8556#(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)); {8366#true} is VALID [2022-04-08 12:21:30,610 INFO L290 TraceCheckUtils]: 69: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,610 INFO L290 TraceCheckUtils]: 70: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,610 INFO L290 TraceCheckUtils]: 71: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,611 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8366#true} {8556#(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; {8556#(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 12:21:30,611 INFO L272 TraceCheckUtils]: 73: Hoare triple {8556#(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)); {8366#true} is VALID [2022-04-08 12:21:30,611 INFO L290 TraceCheckUtils]: 74: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,611 INFO L290 TraceCheckUtils]: 75: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,611 INFO L290 TraceCheckUtils]: 76: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,612 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8366#true} {8556#(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; {8556#(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 12:21:30,612 INFO L272 TraceCheckUtils]: 78: Hoare triple {8556#(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)); {8366#true} is VALID [2022-04-08 12:21:30,612 INFO L290 TraceCheckUtils]: 79: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:30,612 INFO L290 TraceCheckUtils]: 80: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:30,612 INFO L290 TraceCheckUtils]: 81: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:30,613 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8366#true} {8556#(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; {8556#(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 12:21:30,613 INFO L290 TraceCheckUtils]: 83: Hoare triple {8556#(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); {8556#(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 12:21:30,614 INFO L290 TraceCheckUtils]: 84: Hoare triple {8556#(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; {8626#(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 12:21:30,614 INFO L290 TraceCheckUtils]: 85: Hoare triple {8626#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !false; {8626#(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 12:21:30,614 INFO L290 TraceCheckUtils]: 86: Hoare triple {8626#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {8633#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:21:30,615 INFO L272 TraceCheckUtils]: 87: Hoare triple {8633#(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)); {8637#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:21:30,615 INFO L290 TraceCheckUtils]: 88: Hoare triple {8637#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8641#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:21:30,615 INFO L290 TraceCheckUtils]: 89: Hoare triple {8641#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8367#false} is VALID [2022-04-08 12:21:30,616 INFO L290 TraceCheckUtils]: 90: Hoare triple {8367#false} assume !false; {8367#false} is VALID [2022-04-08 12:21:30,616 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 12:21:30,616 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:21:31,086 INFO L290 TraceCheckUtils]: 90: Hoare triple {8367#false} assume !false; {8367#false} is VALID [2022-04-08 12:21:31,087 INFO L290 TraceCheckUtils]: 89: Hoare triple {8641#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8367#false} is VALID [2022-04-08 12:21:31,088 INFO L290 TraceCheckUtils]: 88: Hoare triple {8637#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8641#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:21:31,088 INFO L272 TraceCheckUtils]: 87: Hoare triple {8657#(= (+ (* 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)); {8637#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:21:31,088 INFO L290 TraceCheckUtils]: 86: Hoare triple {8661#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {8657#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-08 12:21:31,089 INFO L290 TraceCheckUtils]: 85: Hoare triple {8661#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {8661#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 12:21:32,977 INFO L290 TraceCheckUtils]: 84: Hoare triple {8668#(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; {8661#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 12:21:32,978 INFO L290 TraceCheckUtils]: 83: Hoare triple {8668#(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); {8668#(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 12:21:32,979 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8366#true} {8668#(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; {8668#(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 12:21:32,979 INFO L290 TraceCheckUtils]: 81: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:32,979 INFO L290 TraceCheckUtils]: 80: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:32,979 INFO L290 TraceCheckUtils]: 79: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:32,979 INFO L272 TraceCheckUtils]: 78: Hoare triple {8668#(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)); {8366#true} is VALID [2022-04-08 12:21:32,980 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8366#true} {8668#(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; {8668#(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 12:21:32,980 INFO L290 TraceCheckUtils]: 76: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:32,980 INFO L290 TraceCheckUtils]: 75: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:32,980 INFO L290 TraceCheckUtils]: 74: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:32,980 INFO L272 TraceCheckUtils]: 73: Hoare triple {8668#(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)); {8366#true} is VALID [2022-04-08 12:21:32,981 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8366#true} {8668#(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; {8668#(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 12:21:32,981 INFO L290 TraceCheckUtils]: 71: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:32,981 INFO L290 TraceCheckUtils]: 70: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:32,981 INFO L290 TraceCheckUtils]: 69: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:32,981 INFO L272 TraceCheckUtils]: 68: Hoare triple {8668#(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)); {8366#true} is VALID [2022-04-08 12:21:32,982 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8366#true} {8668#(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; {8668#(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 12:21:32,982 INFO L290 TraceCheckUtils]: 66: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:32,982 INFO L290 TraceCheckUtils]: 65: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:32,982 INFO L290 TraceCheckUtils]: 64: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:32,982 INFO L272 TraceCheckUtils]: 63: Hoare triple {8668#(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)); {8366#true} is VALID [2022-04-08 12:21:32,982 INFO L290 TraceCheckUtils]: 62: Hoare triple {8668#(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; {8668#(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 12:21:33,287 INFO L290 TraceCheckUtils]: 61: Hoare triple {8738#(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; {8668#(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 12:21:33,288 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8366#true} {8738#(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; {8738#(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 12:21:33,288 INFO L290 TraceCheckUtils]: 59: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,288 INFO L290 TraceCheckUtils]: 58: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,288 INFO L290 TraceCheckUtils]: 57: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,288 INFO L272 TraceCheckUtils]: 56: Hoare triple {8738#(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)); {8366#true} is VALID [2022-04-08 12:21:33,289 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8366#true} {8738#(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; {8738#(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 12:21:33,289 INFO L290 TraceCheckUtils]: 54: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,289 INFO L290 TraceCheckUtils]: 53: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,289 INFO L290 TraceCheckUtils]: 52: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,289 INFO L272 TraceCheckUtils]: 51: Hoare triple {8738#(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)); {8366#true} is VALID [2022-04-08 12:21:33,290 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8366#true} {8738#(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; {8738#(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 12:21:33,290 INFO L290 TraceCheckUtils]: 49: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,290 INFO L290 TraceCheckUtils]: 48: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,290 INFO L290 TraceCheckUtils]: 47: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,290 INFO L272 TraceCheckUtils]: 46: Hoare triple {8738#(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)); {8366#true} is VALID [2022-04-08 12:21:33,291 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8366#true} {8738#(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; {8738#(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 12:21:33,291 INFO L290 TraceCheckUtils]: 44: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,291 INFO L290 TraceCheckUtils]: 43: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,291 INFO L290 TraceCheckUtils]: 42: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,291 INFO L272 TraceCheckUtils]: 41: Hoare triple {8738#(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)); {8366#true} is VALID [2022-04-08 12:21:33,295 INFO L290 TraceCheckUtils]: 40: Hoare triple {8738#(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; {8738#(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 12:21:33,295 INFO L290 TraceCheckUtils]: 39: Hoare triple {8805#(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; {8738#(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 12:21:33,296 INFO L290 TraceCheckUtils]: 38: Hoare triple {8805#(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; {8805#(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 12:21:33,296 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8366#true} {8805#(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; {8805#(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 12:21:33,296 INFO L290 TraceCheckUtils]: 36: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,296 INFO L290 TraceCheckUtils]: 35: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,296 INFO L290 TraceCheckUtils]: 34: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,296 INFO L272 TraceCheckUtils]: 33: Hoare triple {8805#(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)); {8366#true} is VALID [2022-04-08 12:21:33,297 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8366#true} {8805#(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; {8805#(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 12:21:33,297 INFO L290 TraceCheckUtils]: 31: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,297 INFO L290 TraceCheckUtils]: 30: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,297 INFO L290 TraceCheckUtils]: 29: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,297 INFO L272 TraceCheckUtils]: 28: Hoare triple {8805#(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)); {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L290 TraceCheckUtils]: 27: Hoare triple {8366#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; {8805#(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 12:21:33,298 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8366#true} {8366#true} #85#return; {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L290 TraceCheckUtils]: 25: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L290 TraceCheckUtils]: 24: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L290 TraceCheckUtils]: 23: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L272 TraceCheckUtils]: 22: Hoare triple {8366#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8366#true} {8366#true} #83#return; {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L290 TraceCheckUtils]: 20: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L290 TraceCheckUtils]: 19: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L290 TraceCheckUtils]: 18: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,298 INFO L272 TraceCheckUtils]: 17: Hoare triple {8366#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8366#true} {8366#true} #81#return; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 15: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L272 TraceCheckUtils]: 12: Hoare triple {8366#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 11: Hoare triple {8366#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8366#true} {8366#true} #79#return; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 9: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 8: Hoare triple {8366#true} assume !(0 == ~cond); {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 7: Hoare triple {8366#true} ~cond := #in~cond; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L272 TraceCheckUtils]: 6: Hoare triple {8366#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L290 TraceCheckUtils]: 5: Hoare triple {8366#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; {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L272 TraceCheckUtils]: 4: Hoare triple {8366#true} call #t~ret6 := main(); {8366#true} is VALID [2022-04-08 12:21:33,299 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8366#true} {8366#true} #103#return; {8366#true} is VALID [2022-04-08 12:21:33,300 INFO L290 TraceCheckUtils]: 2: Hoare triple {8366#true} assume true; {8366#true} is VALID [2022-04-08 12:21:33,300 INFO L290 TraceCheckUtils]: 1: Hoare triple {8366#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); {8366#true} is VALID [2022-04-08 12:21:33,300 INFO L272 TraceCheckUtils]: 0: Hoare triple {8366#true} call ULTIMATE.init(); {8366#true} is VALID [2022-04-08 12:21:33,300 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 12:21:33,300 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:21:33,300 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [977014653] [2022-04-08 12:21:33,300 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:21:33,300 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1181043166] [2022-04-08 12:21:33,300 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1181043166] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:21:33,300 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:21:33,301 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 12:21:33,301 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:21:33,301 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [595719756] [2022-04-08 12:21:33,301 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [595719756] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:21:33,301 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:21:33,301 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 12:21:33,301 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [583583070] [2022-04-08 12:21:33,301 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:21:33,301 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 12:21:33,301 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:21:33,302 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 12:21:33,348 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 12:21:33,348 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 12:21:33,348 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:21:33,349 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 12:21:33,349 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:21:33,349 INFO L87 Difference]: Start difference. First operand 134 states and 178 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 12:21:34,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:34,792 INFO L93 Difference]: Finished difference Result 161 states and 214 transitions. [2022-04-08 12:21:34,792 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 12:21:34,792 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 12:21:34,792 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:21:34,793 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 12:21:34,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-04-08 12:21:34,794 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 12:21:34,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-04-08 12:21:34,795 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 105 transitions. [2022-04-08 12:21:34,903 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 12:21:34,905 INFO L225 Difference]: With dead ends: 161 [2022-04-08 12:21:34,906 INFO L226 Difference]: Without dead ends: 158 [2022-04-08 12:21:34,906 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 12:21:34,906 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 12:21:34,906 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 12:21:34,907 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-04-08 12:21:35,189 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 157. [2022-04-08 12:21:35,189 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:21:35,190 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 157 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 89 states have internal predecessors, (102), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:35,190 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 157 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 89 states have internal predecessors, (102), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:35,190 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 157 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 89 states have internal predecessors, (102), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:35,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:35,194 INFO L93 Difference]: Finished difference Result 158 states and 210 transitions. [2022-04-08 12:21:35,194 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 210 transitions. [2022-04-08 12:21:35,194 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:21:35,194 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:21:35,194 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 89 states have internal predecessors, (102), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 158 states. [2022-04-08 12:21:35,195 INFO L87 Difference]: Start difference. First operand has 157 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 89 states have internal predecessors, (102), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 158 states. [2022-04-08 12:21:35,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:35,198 INFO L93 Difference]: Finished difference Result 158 states and 210 transitions. [2022-04-08 12:21:35,198 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 210 transitions. [2022-04-08 12:21:35,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:21:35,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:21:35,198 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:21:35,198 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:21:35,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 87 states have (on average 1.1724137931034482) internal successors, (102), 89 states have internal predecessors, (102), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:35,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 209 transitions. [2022-04-08 12:21:35,202 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 209 transitions. Word has length 91 [2022-04-08 12:21:35,202 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:21:35,202 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 209 transitions. [2022-04-08 12:21:35,203 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 12:21:35,203 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 209 transitions. [2022-04-08 12:21:35,528 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 12:21:35,529 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 209 transitions. [2022-04-08 12:21:35,529 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-08 12:21:35,529 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:21:35,529 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 12:21:35,548 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 12:21:35,739 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 12:21:35,739 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:21:35,740 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:21:35,740 INFO L85 PathProgramCache]: Analyzing trace with hash -663071842, now seen corresponding path program 7 times [2022-04-08 12:21:35,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:21:35,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [467062649] [2022-04-08 12:21:35,740 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:21:35,740 INFO L85 PathProgramCache]: Analyzing trace with hash -663071842, now seen corresponding path program 8 times [2022-04-08 12:21:35,741 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:21:35,741 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [355329677] [2022-04-08 12:21:35,741 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:21:35,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:21:35,751 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:21:35,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [71102210] [2022-04-08 12:21:35,751 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:21:35,751 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:21:35,751 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:21:35,752 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 12:21:35,753 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 12:21:35,798 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:21:35,798 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:21:35,798 INFO L263 TraceCheckSpWp]: Trace formula consists of 262 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 12:21:35,811 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:21:35,812 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:21:36,025 INFO L272 TraceCheckUtils]: 0: Hoare triple {9885#true} call ULTIMATE.init(); {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L290 TraceCheckUtils]: 1: Hoare triple {9885#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); {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L290 TraceCheckUtils]: 2: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9885#true} {9885#true} #103#return; {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {9885#true} call #t~ret6 := main(); {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L290 TraceCheckUtils]: 5: Hoare triple {9885#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; {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L272 TraceCheckUtils]: 6: Hoare triple {9885#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L290 TraceCheckUtils]: 8: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L290 TraceCheckUtils]: 9: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,025 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9885#true} {9885#true} #79#return; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 11: Hoare triple {9885#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L272 TraceCheckUtils]: 12: Hoare triple {9885#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 13: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 14: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 15: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9885#true} {9885#true} #81#return; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L272 TraceCheckUtils]: 17: Hoare triple {9885#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 18: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 19: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 20: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9885#true} {9885#true} #83#return; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L272 TraceCheckUtils]: 22: Hoare triple {9885#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 23: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,026 INFO L290 TraceCheckUtils]: 24: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 25: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9885#true} {9885#true} #85#return; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 27: Hoare triple {9885#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; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L272 TraceCheckUtils]: 28: Hoare triple {9885#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 29: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 30: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 31: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {9885#true} {9885#true} #87#return; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L272 TraceCheckUtils]: 33: Hoare triple {9885#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 34: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 35: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 36: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {9885#true} {9885#true} #89#return; {9885#true} is VALID [2022-04-08 12:21:36,027 INFO L290 TraceCheckUtils]: 38: Hoare triple {9885#true} assume !false; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 39: Hoare triple {9885#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 40: Hoare triple {9885#true} assume !false; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L272 TraceCheckUtils]: 41: Hoare triple {9885#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 42: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 43: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 44: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {9885#true} {9885#true} #91#return; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L272 TraceCheckUtils]: 46: Hoare triple {9885#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 47: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 48: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 49: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {9885#true} {9885#true} #93#return; {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L272 TraceCheckUtils]: 51: Hoare triple {9885#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,028 INFO L290 TraceCheckUtils]: 52: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L290 TraceCheckUtils]: 53: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L290 TraceCheckUtils]: 54: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9885#true} {9885#true} #95#return; {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L272 TraceCheckUtils]: 56: Hoare triple {9885#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)); {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L290 TraceCheckUtils]: 57: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L290 TraceCheckUtils]: 58: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L290 TraceCheckUtils]: 59: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9885#true} {9885#true} #97#return; {9885#true} is VALID [2022-04-08 12:21:36,029 INFO L290 TraceCheckUtils]: 61: Hoare triple {9885#true} assume !(~c~0 >= ~b~0); {10073#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:21:36,030 INFO L290 TraceCheckUtils]: 62: Hoare triple {10073#(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; {10077#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:21:36,030 INFO L290 TraceCheckUtils]: 63: Hoare triple {10077#(< main_~b~0 main_~a~0)} assume !false; {10077#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:21:36,030 INFO L290 TraceCheckUtils]: 64: Hoare triple {10077#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10084#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:21:36,031 INFO L290 TraceCheckUtils]: 65: Hoare triple {10084#(< main_~b~0 main_~c~0)} assume !false; {10084#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:21:36,031 INFO L272 TraceCheckUtils]: 66: Hoare triple {10084#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,031 INFO L290 TraceCheckUtils]: 67: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,031 INFO L290 TraceCheckUtils]: 68: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,031 INFO L290 TraceCheckUtils]: 69: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,031 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {9885#true} {10084#(< main_~b~0 main_~c~0)} #91#return; {10084#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:21:36,031 INFO L272 TraceCheckUtils]: 71: Hoare triple {10084#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,032 INFO L290 TraceCheckUtils]: 72: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,032 INFO L290 TraceCheckUtils]: 73: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,032 INFO L290 TraceCheckUtils]: 74: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,032 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {9885#true} {10084#(< main_~b~0 main_~c~0)} #93#return; {10084#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:21:36,032 INFO L272 TraceCheckUtils]: 76: Hoare triple {10084#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9885#true} is VALID [2022-04-08 12:21:36,032 INFO L290 TraceCheckUtils]: 77: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,032 INFO L290 TraceCheckUtils]: 78: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,033 INFO L290 TraceCheckUtils]: 79: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,033 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {9885#true} {10084#(< main_~b~0 main_~c~0)} #95#return; {10084#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:21:36,033 INFO L272 TraceCheckUtils]: 81: Hoare triple {10084#(< 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)); {9885#true} is VALID [2022-04-08 12:21:36,033 INFO L290 TraceCheckUtils]: 82: Hoare triple {9885#true} ~cond := #in~cond; {9885#true} is VALID [2022-04-08 12:21:36,033 INFO L290 TraceCheckUtils]: 83: Hoare triple {9885#true} assume !(0 == ~cond); {9885#true} is VALID [2022-04-08 12:21:36,033 INFO L290 TraceCheckUtils]: 84: Hoare triple {9885#true} assume true; {9885#true} is VALID [2022-04-08 12:21:36,034 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {9885#true} {10084#(< main_~b~0 main_~c~0)} #97#return; {10084#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:21:36,034 INFO L290 TraceCheckUtils]: 86: Hoare triple {10084#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {9886#false} is VALID [2022-04-08 12:21:36,034 INFO L290 TraceCheckUtils]: 87: Hoare triple {9886#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; {9886#false} is VALID [2022-04-08 12:21:36,034 INFO L290 TraceCheckUtils]: 88: Hoare triple {9886#false} assume !false; {9886#false} is VALID [2022-04-08 12:21:36,034 INFO L290 TraceCheckUtils]: 89: Hoare triple {9886#false} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L290 TraceCheckUtils]: 90: Hoare triple {9886#false} assume !false; {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L272 TraceCheckUtils]: 91: Hoare triple {9886#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L290 TraceCheckUtils]: 92: Hoare triple {9886#false} ~cond := #in~cond; {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L290 TraceCheckUtils]: 93: Hoare triple {9886#false} assume !(0 == ~cond); {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L290 TraceCheckUtils]: 94: Hoare triple {9886#false} assume true; {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {9886#false} {9886#false} #91#return; {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L272 TraceCheckUtils]: 96: Hoare triple {9886#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L290 TraceCheckUtils]: 97: Hoare triple {9886#false} ~cond := #in~cond; {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L290 TraceCheckUtils]: 98: Hoare triple {9886#false} assume 0 == ~cond; {9886#false} is VALID [2022-04-08 12:21:36,035 INFO L290 TraceCheckUtils]: 99: Hoare triple {9886#false} assume !false; {9886#false} is VALID [2022-04-08 12:21:36,035 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 12:21:36,036 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:21:36,036 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:21:36,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [355329677] [2022-04-08 12:21:36,036 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:21:36,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [71102210] [2022-04-08 12:21:36,036 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [71102210] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:21:36,036 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:21:36,036 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:21:36,036 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:21:36,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [467062649] [2022-04-08 12:21:36,036 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [467062649] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:21:36,036 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:21:36,036 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:21:36,036 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [692133902] [2022-04-08 12:21:36,037 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:21:36,037 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 12:21:36,037 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:21:36,037 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 12:21:36,077 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 12:21:36,077 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:21:36,077 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:21:36,078 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:21:36,078 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:21:36,078 INFO L87 Difference]: Start difference. First operand 157 states and 209 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 12:21:36,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:36,616 INFO L93 Difference]: Finished difference Result 205 states and 283 transitions. [2022-04-08 12:21:36,616 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 12:21:36,616 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 12:21:36,616 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:21:36,616 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 12:21:36,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-04-08 12:21:36,618 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 12:21:36,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-04-08 12:21:36,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 94 transitions. [2022-04-08 12:21:36,700 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 12:21:36,703 INFO L225 Difference]: With dead ends: 205 [2022-04-08 12:21:36,704 INFO L226 Difference]: Without dead ends: 160 [2022-04-08 12:21:36,706 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 12:21:36,708 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 12:21:36,708 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 12:21:36,709 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2022-04-08 12:21:36,970 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 151. [2022-04-08 12:21:36,970 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:21:36,971 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand has 151 states, 81 states have (on average 1.123456790123457) internal successors, (91), 83 states have internal predecessors, (91), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:36,971 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand has 151 states, 81 states have (on average 1.123456790123457) internal successors, (91), 83 states have internal predecessors, (91), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:36,971 INFO L87 Difference]: Start difference. First operand 160 states. Second operand has 151 states, 81 states have (on average 1.123456790123457) internal successors, (91), 83 states have internal predecessors, (91), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:36,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:36,975 INFO L93 Difference]: Finished difference Result 160 states and 212 transitions. [2022-04-08 12:21:36,975 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 212 transitions. [2022-04-08 12:21:36,976 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:21:36,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:21:36,976 INFO L74 IsIncluded]: Start isIncluded. First operand has 151 states, 81 states have (on average 1.123456790123457) internal successors, (91), 83 states have internal predecessors, (91), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 160 states. [2022-04-08 12:21:36,976 INFO L87 Difference]: Start difference. First operand has 151 states, 81 states have (on average 1.123456790123457) internal successors, (91), 83 states have internal predecessors, (91), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 160 states. [2022-04-08 12:21:36,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:21:36,984 INFO L93 Difference]: Finished difference Result 160 states and 212 transitions. [2022-04-08 12:21:36,984 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 212 transitions. [2022-04-08 12:21:36,984 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:21:36,984 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:21:36,985 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:21:36,985 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:21:36,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 151 states, 81 states have (on average 1.123456790123457) internal successors, (91), 83 states have internal predecessors, (91), 55 states have call successors, (55), 15 states have call predecessors, (55), 14 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:21:36,988 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 198 transitions. [2022-04-08 12:21:36,988 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 198 transitions. Word has length 100 [2022-04-08 12:21:36,988 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:21:36,988 INFO L478 AbstractCegarLoop]: Abstraction has 151 states and 198 transitions. [2022-04-08 12:21:36,988 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 12:21:36,989 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 151 states and 198 transitions. [2022-04-08 12:21:37,322 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 198 edges. 198 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:21:37,322 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 198 transitions. [2022-04-08 12:21:37,323 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-08 12:21:37,323 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:21:37,323 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 12:21:37,358 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-08 12:21:37,523 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 12:21:37,524 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:21:37,524 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:21:37,524 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 1 times [2022-04-08 12:21:37,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:21:37,524 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2074212700] [2022-04-08 12:21:37,524 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:21:37,524 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 2 times [2022-04-08 12:21:37,525 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:21:37,525 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [436231775] [2022-04-08 12:21:37,525 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:21:37,525 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:21:37,535 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:21:37,535 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1248613992] [2022-04-08 12:21:37,535 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:21:37,536 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:21:37,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:21:37,537 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 12:21:37,537 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 12:21:37,587 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:21:37,587 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:21:37,588 INFO L263 TraceCheckSpWp]: Trace formula consists of 264 conjuncts, 66 conjunts are in the unsatisfiable core [2022-04-08 12:21:37,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:21:37,607 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:21:39,192 INFO L272 TraceCheckUtils]: 0: Hoare triple {11225#true} call ULTIMATE.init(); {11225#true} is VALID [2022-04-08 12:21:39,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {11225#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); {11225#true} is VALID [2022-04-08 12:21:39,192 INFO L290 TraceCheckUtils]: 2: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11225#true} {11225#true} #103#return; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {11225#true} call #t~ret6 := main(); {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 5: Hoare triple {11225#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; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L272 TraceCheckUtils]: 6: Hoare triple {11225#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 8: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 9: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11225#true} {11225#true} #79#return; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 11: Hoare triple {11225#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L272 TraceCheckUtils]: 12: Hoare triple {11225#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 13: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 14: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L290 TraceCheckUtils]: 15: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11225#true} {11225#true} #81#return; {11225#true} is VALID [2022-04-08 12:21:39,193 INFO L272 TraceCheckUtils]: 17: Hoare triple {11225#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:21:39,194 INFO L290 TraceCheckUtils]: 18: Hoare triple {11225#true} ~cond := #in~cond; {11284#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:21:39,194 INFO L290 TraceCheckUtils]: 19: Hoare triple {11284#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11288#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:21:39,194 INFO L290 TraceCheckUtils]: 20: Hoare triple {11288#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11288#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:21:39,195 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11288#(not (= |assume_abort_if_not_#in~cond| 0))} {11225#true} #83#return; {11295#(<= 1 main_~x~0)} is VALID [2022-04-08 12:21:39,195 INFO L272 TraceCheckUtils]: 22: Hoare triple {11295#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:21:39,195 INFO L290 TraceCheckUtils]: 23: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,195 INFO L290 TraceCheckUtils]: 24: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,195 INFO L290 TraceCheckUtils]: 25: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,196 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11225#true} {11295#(<= 1 main_~x~0)} #85#return; {11295#(<= 1 main_~x~0)} is VALID [2022-04-08 12:21:39,196 INFO L290 TraceCheckUtils]: 27: Hoare triple {11295#(<= 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; {11314#(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 12:21:39,196 INFO L272 TraceCheckUtils]: 28: Hoare triple {11314#(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)); {11225#true} is VALID [2022-04-08 12:21:39,196 INFO L290 TraceCheckUtils]: 29: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,197 INFO L290 TraceCheckUtils]: 30: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,197 INFO L290 TraceCheckUtils]: 31: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,197 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11225#true} {11314#(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; {11314#(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 12:21:39,197 INFO L272 TraceCheckUtils]: 33: Hoare triple {11314#(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)); {11225#true} is VALID [2022-04-08 12:21:39,198 INFO L290 TraceCheckUtils]: 34: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,198 INFO L290 TraceCheckUtils]: 35: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,198 INFO L290 TraceCheckUtils]: 36: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,198 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {11225#true} {11314#(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; {11314#(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 12:21:39,199 INFO L290 TraceCheckUtils]: 38: Hoare triple {11314#(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; {11314#(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 12:21:39,200 INFO L290 TraceCheckUtils]: 39: Hoare triple {11314#(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; {11351#(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 12:21:39,200 INFO L290 TraceCheckUtils]: 40: Hoare triple {11351#(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; {11351#(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 12:21:39,200 INFO L272 TraceCheckUtils]: 41: Hoare triple {11351#(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)); {11225#true} is VALID [2022-04-08 12:21:39,201 INFO L290 TraceCheckUtils]: 42: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,201 INFO L290 TraceCheckUtils]: 43: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,201 INFO L290 TraceCheckUtils]: 44: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,202 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11225#true} {11351#(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; {11351#(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 12:21:39,202 INFO L272 TraceCheckUtils]: 46: Hoare triple {11351#(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)); {11225#true} is VALID [2022-04-08 12:21:39,202 INFO L290 TraceCheckUtils]: 47: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,202 INFO L290 TraceCheckUtils]: 48: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,202 INFO L290 TraceCheckUtils]: 49: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,203 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {11225#true} {11351#(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; {11351#(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 12:21:39,203 INFO L272 TraceCheckUtils]: 51: Hoare triple {11351#(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)); {11225#true} is VALID [2022-04-08 12:21:39,203 INFO L290 TraceCheckUtils]: 52: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,203 INFO L290 TraceCheckUtils]: 53: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,203 INFO L290 TraceCheckUtils]: 54: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,204 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11225#true} {11351#(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; {11351#(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 12:21:39,204 INFO L272 TraceCheckUtils]: 56: Hoare triple {11351#(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)); {11225#true} is VALID [2022-04-08 12:21:39,204 INFO L290 TraceCheckUtils]: 57: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,204 INFO L290 TraceCheckUtils]: 58: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,204 INFO L290 TraceCheckUtils]: 59: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,205 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11225#true} {11351#(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; {11351#(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 12:21:39,206 INFO L290 TraceCheckUtils]: 61: Hoare triple {11351#(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; {11418#(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 12:21:39,207 INFO L290 TraceCheckUtils]: 62: Hoare triple {11418#(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; {11418#(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 12:21:39,207 INFO L272 TraceCheckUtils]: 63: Hoare triple {11418#(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)); {11225#true} is VALID [2022-04-08 12:21:39,207 INFO L290 TraceCheckUtils]: 64: Hoare triple {11225#true} ~cond := #in~cond; {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:21:39,207 INFO L290 TraceCheckUtils]: 65: Hoare triple {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,208 INFO L290 TraceCheckUtils]: 66: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,209 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11418#(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; {11439#(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 12:21:39,210 INFO L272 TraceCheckUtils]: 68: Hoare triple {11439#(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)); {11225#true} is VALID [2022-04-08 12:21:39,210 INFO L290 TraceCheckUtils]: 69: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,210 INFO L290 TraceCheckUtils]: 70: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,210 INFO L290 TraceCheckUtils]: 71: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,211 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {11225#true} {11439#(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; {11439#(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 12:21:39,211 INFO L272 TraceCheckUtils]: 73: Hoare triple {11439#(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)); {11225#true} is VALID [2022-04-08 12:21:39,211 INFO L290 TraceCheckUtils]: 74: Hoare triple {11225#true} ~cond := #in~cond; {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:21:39,211 INFO L290 TraceCheckUtils]: 75: Hoare triple {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,212 INFO L290 TraceCheckUtils]: 76: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,212 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11439#(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; {11439#(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 12:21:39,212 INFO L272 TraceCheckUtils]: 78: Hoare triple {11439#(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)); {11225#true} is VALID [2022-04-08 12:21:39,213 INFO L290 TraceCheckUtils]: 79: Hoare triple {11225#true} ~cond := #in~cond; {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:21:39,213 INFO L290 TraceCheckUtils]: 80: Hoare triple {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,213 INFO L290 TraceCheckUtils]: 81: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,214 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11439#(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; {11439#(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 12:21:39,215 INFO L290 TraceCheckUtils]: 83: Hoare triple {11439#(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); {11488#(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 12:21:39,216 INFO L290 TraceCheckUtils]: 84: Hoare triple {11488#(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; {11492#(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 12:21:39,217 INFO L290 TraceCheckUtils]: 85: Hoare triple {11492#(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; {11492#(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 12:21:39,217 INFO L290 TraceCheckUtils]: 86: Hoare triple {11492#(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; {11492#(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 12:21:39,217 INFO L290 TraceCheckUtils]: 87: Hoare triple {11492#(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; {11492#(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 12:21:39,218 INFO L272 TraceCheckUtils]: 88: Hoare triple {11492#(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)); {11225#true} is VALID [2022-04-08 12:21:39,218 INFO L290 TraceCheckUtils]: 89: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,218 INFO L290 TraceCheckUtils]: 90: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,218 INFO L290 TraceCheckUtils]: 91: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,218 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {11225#true} {11492#(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; {11492#(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 12:21:39,219 INFO L272 TraceCheckUtils]: 93: Hoare triple {11492#(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)); {11225#true} is VALID [2022-04-08 12:21:39,219 INFO L290 TraceCheckUtils]: 94: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:21:39,219 INFO L290 TraceCheckUtils]: 95: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:21:39,231 INFO L290 TraceCheckUtils]: 96: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:21:39,232 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {11225#true} {11492#(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; {11492#(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 12:21:39,232 INFO L272 TraceCheckUtils]: 98: Hoare triple {11492#(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)); {11225#true} is VALID [2022-04-08 12:21:39,233 INFO L290 TraceCheckUtils]: 99: Hoare triple {11225#true} ~cond := #in~cond; {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:21:39,233 INFO L290 TraceCheckUtils]: 100: Hoare triple {11428#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,233 INFO L290 TraceCheckUtils]: 101: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:21:39,234 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11492#(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; {11492#(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 12:21:39,236 INFO L272 TraceCheckUtils]: 103: Hoare triple {11492#(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)); {11550#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:21:39,236 INFO L290 TraceCheckUtils]: 104: Hoare triple {11550#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11554#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:21:39,237 INFO L290 TraceCheckUtils]: 105: Hoare triple {11554#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11226#false} is VALID [2022-04-08 12:21:39,237 INFO L290 TraceCheckUtils]: 106: Hoare triple {11226#false} assume !false; {11226#false} is VALID [2022-04-08 12:21:39,237 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 12:21:39,238 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:24:17,903 INFO L290 TraceCheckUtils]: 106: Hoare triple {11226#false} assume !false; {11226#false} is VALID [2022-04-08 12:24:17,904 INFO L290 TraceCheckUtils]: 105: Hoare triple {11554#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11226#false} is VALID [2022-04-08 12:24:17,904 INFO L290 TraceCheckUtils]: 104: Hoare triple {11550#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11554#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:24:17,905 INFO L272 TraceCheckUtils]: 103: Hoare triple {11570#(= (+ (* 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)); {11550#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:24:17,906 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11574#(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; {11570#(= (+ (* 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 12:24:17,906 INFO L290 TraceCheckUtils]: 101: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:17,906 INFO L290 TraceCheckUtils]: 100: Hoare triple {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:17,906 INFO L290 TraceCheckUtils]: 99: Hoare triple {11225#true} ~cond := #in~cond; {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:24:17,907 INFO L272 TraceCheckUtils]: 98: Hoare triple {11574#(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)); {11225#true} is VALID [2022-04-08 12:24:17,907 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {11225#true} {11574#(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; {11574#(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 12:24:17,907 INFO L290 TraceCheckUtils]: 96: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:17,907 INFO L290 TraceCheckUtils]: 95: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:17,907 INFO L290 TraceCheckUtils]: 94: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:17,908 INFO L272 TraceCheckUtils]: 93: Hoare triple {11574#(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)); {11225#true} is VALID [2022-04-08 12:24:17,908 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {11225#true} {11574#(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; {11574#(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 12:24:17,908 INFO L290 TraceCheckUtils]: 91: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:17,908 INFO L290 TraceCheckUtils]: 90: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:17,908 INFO L290 TraceCheckUtils]: 89: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:17,908 INFO L272 TraceCheckUtils]: 88: Hoare triple {11574#(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)); {11225#true} is VALID [2022-04-08 12:24:17,909 INFO L290 TraceCheckUtils]: 87: Hoare triple {11574#(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; {11574#(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 12:24:17,909 INFO L290 TraceCheckUtils]: 86: Hoare triple {11574#(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; {11574#(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 12:24:17,910 INFO L290 TraceCheckUtils]: 85: Hoare triple {11574#(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; {11574#(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 12:24:19,912 WARN L290 TraceCheckUtils]: 84: Hoare triple {11630#(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; {11574#(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 12:24:19,913 INFO L290 TraceCheckUtils]: 83: Hoare triple {11634#(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); {11630#(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 12:24:19,914 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11638#(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; {11634#(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 12:24:19,915 INFO L290 TraceCheckUtils]: 81: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:19,915 INFO L290 TraceCheckUtils]: 80: Hoare triple {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:19,915 INFO L290 TraceCheckUtils]: 79: Hoare triple {11225#true} ~cond := #in~cond; {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:24:19,915 INFO L272 TraceCheckUtils]: 78: Hoare triple {11638#(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)); {11225#true} is VALID [2022-04-08 12:24:19,916 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11654#(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; {11638#(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 12:24:19,917 INFO L290 TraceCheckUtils]: 76: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:19,917 INFO L290 TraceCheckUtils]: 75: Hoare triple {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:19,917 INFO L290 TraceCheckUtils]: 74: Hoare triple {11225#true} ~cond := #in~cond; {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:24:19,917 INFO L272 TraceCheckUtils]: 73: Hoare triple {11654#(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)); {11225#true} is VALID [2022-04-08 12:24:19,918 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {11225#true} {11654#(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; {11654#(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 12:24:19,918 INFO L290 TraceCheckUtils]: 71: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:19,918 INFO L290 TraceCheckUtils]: 70: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:19,918 INFO L290 TraceCheckUtils]: 69: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:19,919 INFO L272 TraceCheckUtils]: 68: Hoare triple {11654#(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)); {11225#true} is VALID [2022-04-08 12:24:19,920 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} {11685#(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; {11654#(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 12:24:19,920 INFO L290 TraceCheckUtils]: 66: Hoare triple {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:19,920 INFO L290 TraceCheckUtils]: 65: Hoare triple {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11432#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:19,920 INFO L290 TraceCheckUtils]: 64: Hoare triple {11225#true} ~cond := #in~cond; {11584#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:24:19,921 INFO L272 TraceCheckUtils]: 63: Hoare triple {11685#(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)); {11225#true} is VALID [2022-04-08 12:24:19,921 INFO L290 TraceCheckUtils]: 62: Hoare triple {11685#(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; {11685#(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 12:24:20,357 INFO L290 TraceCheckUtils]: 61: Hoare triple {11704#(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; {11685#(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 12:24:20,358 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11225#true} {11704#(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; {11704#(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 12:24:20,358 INFO L290 TraceCheckUtils]: 59: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,358 INFO L290 TraceCheckUtils]: 58: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,358 INFO L290 TraceCheckUtils]: 57: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,358 INFO L272 TraceCheckUtils]: 56: Hoare triple {11704#(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)); {11225#true} is VALID [2022-04-08 12:24:20,359 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11225#true} {11704#(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; {11704#(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 12:24:20,359 INFO L290 TraceCheckUtils]: 54: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,359 INFO L290 TraceCheckUtils]: 53: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,359 INFO L290 TraceCheckUtils]: 52: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,359 INFO L272 TraceCheckUtils]: 51: Hoare triple {11704#(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)); {11225#true} is VALID [2022-04-08 12:24:20,360 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {11225#true} {11704#(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; {11704#(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 12:24:20,360 INFO L290 TraceCheckUtils]: 49: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,360 INFO L290 TraceCheckUtils]: 48: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,360 INFO L290 TraceCheckUtils]: 47: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,360 INFO L272 TraceCheckUtils]: 46: Hoare triple {11704#(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)); {11225#true} is VALID [2022-04-08 12:24:20,364 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11225#true} {11704#(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; {11704#(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 12:24:20,364 INFO L290 TraceCheckUtils]: 44: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,364 INFO L290 TraceCheckUtils]: 43: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,364 INFO L290 TraceCheckUtils]: 42: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,364 INFO L272 TraceCheckUtils]: 41: Hoare triple {11704#(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)); {11225#true} is VALID [2022-04-08 12:24:20,365 INFO L290 TraceCheckUtils]: 40: Hoare triple {11704#(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; {11704#(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 12:24:20,366 INFO L290 TraceCheckUtils]: 39: Hoare triple {11771#(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; {11704#(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 12:24:20,366 INFO L290 TraceCheckUtils]: 38: Hoare triple {11771#(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; {11771#(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 12:24:20,367 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {11225#true} {11771#(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; {11771#(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 12:24:20,367 INFO L290 TraceCheckUtils]: 36: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,367 INFO L290 TraceCheckUtils]: 35: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,367 INFO L290 TraceCheckUtils]: 34: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,368 INFO L272 TraceCheckUtils]: 33: Hoare triple {11771#(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)); {11225#true} is VALID [2022-04-08 12:24:20,368 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11225#true} {11771#(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; {11771#(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 12:24:20,368 INFO L290 TraceCheckUtils]: 31: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,368 INFO L290 TraceCheckUtils]: 30: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,369 INFO L272 TraceCheckUtils]: 28: Hoare triple {11771#(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)); {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L290 TraceCheckUtils]: 27: Hoare triple {11225#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; {11771#(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 12:24:20,370 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11225#true} {11225#true} #85#return; {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L290 TraceCheckUtils]: 25: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L290 TraceCheckUtils]: 24: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L290 TraceCheckUtils]: 23: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L272 TraceCheckUtils]: 22: Hoare triple {11225#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11225#true} {11225#true} #83#return; {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L290 TraceCheckUtils]: 20: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L290 TraceCheckUtils]: 19: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L290 TraceCheckUtils]: 18: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,370 INFO L272 TraceCheckUtils]: 17: Hoare triple {11225#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11225#true} {11225#true} #81#return; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L272 TraceCheckUtils]: 12: Hoare triple {11225#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 11: Hoare triple {11225#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11225#true} {11225#true} #79#return; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 9: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 8: Hoare triple {11225#true} assume !(0 == ~cond); {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 7: Hoare triple {11225#true} ~cond := #in~cond; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L272 TraceCheckUtils]: 6: Hoare triple {11225#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {11225#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; {11225#true} is VALID [2022-04-08 12:24:20,371 INFO L272 TraceCheckUtils]: 4: Hoare triple {11225#true} call #t~ret6 := main(); {11225#true} is VALID [2022-04-08 12:24:20,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11225#true} {11225#true} #103#return; {11225#true} is VALID [2022-04-08 12:24:20,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {11225#true} assume true; {11225#true} is VALID [2022-04-08 12:24:20,372 INFO L290 TraceCheckUtils]: 1: Hoare triple {11225#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); {11225#true} is VALID [2022-04-08 12:24:20,372 INFO L272 TraceCheckUtils]: 0: Hoare triple {11225#true} call ULTIMATE.init(); {11225#true} is VALID [2022-04-08 12:24:20,372 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 81 proven. 43 refuted. 0 times theorem prover too weak. 196 trivial. 0 not checked. [2022-04-08 12:24:20,372 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:24:20,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [436231775] [2022-04-08 12:24:20,373 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:24:20,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1248613992] [2022-04-08 12:24:20,373 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1248613992] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:24:20,373 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:24:20,373 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 25 [2022-04-08 12:24:20,374 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:24:20,374 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2074212700] [2022-04-08 12:24:20,374 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2074212700] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:24:20,374 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:24:20,374 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 12:24:20,374 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [548289258] [2022-04-08 12:24:20,374 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:24:20,375 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 12:24:20,375 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:24:20,375 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 12:24:20,451 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 12:24:20,451 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 12:24:20,451 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:24:20,451 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 12:24:20,451 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=474, Unknown=1, NotChecked=0, Total=600 [2022-04-08 12:24:20,452 INFO L87 Difference]: Start difference. First operand 151 states and 198 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 12:24:24,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:24:24,488 INFO L93 Difference]: Finished difference Result 158 states and 204 transitions. [2022-04-08 12:24:24,488 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 12:24:24,488 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 12:24:24,488 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:24:24,489 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 12:24:24,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 103 transitions. [2022-04-08 12:24:24,490 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 12:24:24,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 103 transitions. [2022-04-08 12:24:24,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 103 transitions. [2022-04-08 12:24:24,623 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 12:24:24,626 INFO L225 Difference]: With dead ends: 158 [2022-04-08 12:24:24,626 INFO L226 Difference]: Without dead ends: 156 [2022-04-08 12:24:24,626 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 217 GetRequests, 188 SyntacticMatches, 2 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 180 ImplicationChecksByTransitivity, 11.7s TimeCoverageRelationStatistics Valid=158, Invalid=653, Unknown=1, NotChecked=0, Total=812 [2022-04-08 12:24:24,626 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 41 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 538 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 594 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 538 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-08 12:24:24,627 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 170 Invalid, 594 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 538 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-08 12:24:24,627 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-08 12:24:24,962 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 155. [2022-04-08 12:24:24,962 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:24:24,962 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 155 states, 84 states have (on average 1.119047619047619) internal successors, (94), 86 states have internal predecessors, (94), 55 states have call successors, (55), 16 states have call predecessors, (55), 15 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:24:24,963 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 155 states, 84 states have (on average 1.119047619047619) internal successors, (94), 86 states have internal predecessors, (94), 55 states have call successors, (55), 16 states have call predecessors, (55), 15 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:24:24,963 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 155 states, 84 states have (on average 1.119047619047619) internal successors, (94), 86 states have internal predecessors, (94), 55 states have call successors, (55), 16 states have call predecessors, (55), 15 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:24:24,967 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:24:24,967 INFO L93 Difference]: Finished difference Result 156 states and 202 transitions. [2022-04-08 12:24:24,967 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 202 transitions. [2022-04-08 12:24:24,968 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:24:24,968 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:24:24,968 INFO L74 IsIncluded]: Start isIncluded. First operand has 155 states, 84 states have (on average 1.119047619047619) internal successors, (94), 86 states have internal predecessors, (94), 55 states have call successors, (55), 16 states have call predecessors, (55), 15 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 156 states. [2022-04-08 12:24:24,968 INFO L87 Difference]: Start difference. First operand has 155 states, 84 states have (on average 1.119047619047619) internal successors, (94), 86 states have internal predecessors, (94), 55 states have call successors, (55), 16 states have call predecessors, (55), 15 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 156 states. [2022-04-08 12:24:24,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:24:24,971 INFO L93 Difference]: Finished difference Result 156 states and 202 transitions. [2022-04-08 12:24:24,971 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 202 transitions. [2022-04-08 12:24:24,972 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:24:24,972 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:24:24,972 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:24:24,972 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:24:24,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 155 states, 84 states have (on average 1.119047619047619) internal successors, (94), 86 states have internal predecessors, (94), 55 states have call successors, (55), 16 states have call predecessors, (55), 15 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-08 12:24:24,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 201 transitions. [2022-04-08 12:24:24,975 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 201 transitions. Word has length 107 [2022-04-08 12:24:24,975 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:24:24,976 INFO L478 AbstractCegarLoop]: Abstraction has 155 states and 201 transitions. [2022-04-08 12:24:24,976 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 12:24:24,976 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 155 states and 201 transitions. [2022-04-08 12:24:25,309 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 201 edges. 201 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:24:25,309 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 201 transitions. [2022-04-08 12:24:25,310 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-08 12:24:25,310 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:24:25,310 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 12:24:25,329 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 12:24:25,523 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 12:24:25,523 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:24:25,524 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:24:25,524 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 3 times [2022-04-08 12:24:25,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:24:25,524 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [163471985] [2022-04-08 12:24:25,524 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:24:25,524 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 4 times [2022-04-08 12:24:25,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:24:25,525 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [306717223] [2022-04-08 12:24:25,525 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:24:25,525 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:24:25,535 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:24:25,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1107504940] [2022-04-08 12:24:25,536 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:24:25,536 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:24:25,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:24:25,543 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 12:24:25,544 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 12:24:25,597 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:24:25,597 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:24:25,598 INFO L263 TraceCheckSpWp]: Trace formula consists of 236 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-08 12:24:25,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:24:25,616 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:24:34,414 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:24:36,138 INFO L272 TraceCheckUtils]: 0: Hoare triple {12837#true} call ULTIMATE.init(); {12837#true} is VALID [2022-04-08 12:24:36,138 INFO L290 TraceCheckUtils]: 1: Hoare triple {12837#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); {12837#true} is VALID [2022-04-08 12:24:36,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12837#true} {12837#true} #103#return; {12837#true} is VALID [2022-04-08 12:24:36,138 INFO L272 TraceCheckUtils]: 4: Hoare triple {12837#true} call #t~ret6 := main(); {12837#true} is VALID [2022-04-08 12:24:36,138 INFO L290 TraceCheckUtils]: 5: Hoare triple {12837#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; {12837#true} is VALID [2022-04-08 12:24:36,139 INFO L272 TraceCheckUtils]: 6: Hoare triple {12837#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,139 INFO L290 TraceCheckUtils]: 7: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,139 INFO L290 TraceCheckUtils]: 8: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,139 INFO L290 TraceCheckUtils]: 9: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12837#true} {12837#true} #79#return; {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L290 TraceCheckUtils]: 11: Hoare triple {12837#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L272 TraceCheckUtils]: 12: Hoare triple {12837#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L290 TraceCheckUtils]: 13: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L290 TraceCheckUtils]: 14: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L290 TraceCheckUtils]: 15: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {12837#true} {12837#true} #81#return; {12837#true} is VALID [2022-04-08 12:24:36,144 INFO L272 TraceCheckUtils]: 17: Hoare triple {12837#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {12837#true} ~cond := #in~cond; {12896#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:24:36,146 INFO L290 TraceCheckUtils]: 19: Hoare triple {12896#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {12900#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:24:36,146 INFO L290 TraceCheckUtils]: 20: Hoare triple {12900#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {12900#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:24:36,147 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12900#(not (= |assume_abort_if_not_#in~cond| 0))} {12837#true} #83#return; {12907#(<= 1 main_~x~0)} is VALID [2022-04-08 12:24:36,147 INFO L272 TraceCheckUtils]: 22: Hoare triple {12907#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,147 INFO L290 TraceCheckUtils]: 23: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,147 INFO L290 TraceCheckUtils]: 24: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,147 INFO L290 TraceCheckUtils]: 25: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,148 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12837#true} {12907#(<= 1 main_~x~0)} #85#return; {12907#(<= 1 main_~x~0)} is VALID [2022-04-08 12:24:36,148 INFO L290 TraceCheckUtils]: 27: Hoare triple {12907#(<= 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; {12926#(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 12:24:36,148 INFO L272 TraceCheckUtils]: 28: Hoare triple {12926#(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)); {12837#true} is VALID [2022-04-08 12:24:36,148 INFO L290 TraceCheckUtils]: 29: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,148 INFO L290 TraceCheckUtils]: 30: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,148 INFO L290 TraceCheckUtils]: 31: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,149 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12837#true} {12926#(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; {12926#(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 12:24:36,149 INFO L272 TraceCheckUtils]: 33: Hoare triple {12926#(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)); {12837#true} is VALID [2022-04-08 12:24:36,149 INFO L290 TraceCheckUtils]: 34: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,149 INFO L290 TraceCheckUtils]: 35: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,149 INFO L290 TraceCheckUtils]: 36: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,150 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {12837#true} {12926#(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; {12926#(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 12:24:36,150 INFO L290 TraceCheckUtils]: 38: Hoare triple {12926#(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; {12926#(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 12:24:36,151 INFO L290 TraceCheckUtils]: 39: Hoare triple {12926#(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; {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,151 INFO L290 TraceCheckUtils]: 40: Hoare triple {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,151 INFO L272 TraceCheckUtils]: 41: Hoare triple {12963#(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_~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)); {12837#true} is VALID [2022-04-08 12:24:36,151 INFO L290 TraceCheckUtils]: 42: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,151 INFO L290 TraceCheckUtils]: 43: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,151 INFO L290 TraceCheckUtils]: 44: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,152 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12837#true} {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,152 INFO L272 TraceCheckUtils]: 46: Hoare triple {12963#(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_~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)); {12837#true} is VALID [2022-04-08 12:24:36,152 INFO L290 TraceCheckUtils]: 47: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,152 INFO L290 TraceCheckUtils]: 48: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,152 INFO L290 TraceCheckUtils]: 49: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,153 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12837#true} {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,153 INFO L272 TraceCheckUtils]: 51: Hoare triple {12963#(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_~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)); {12837#true} is VALID [2022-04-08 12:24:36,153 INFO L290 TraceCheckUtils]: 52: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,153 INFO L290 TraceCheckUtils]: 53: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,153 INFO L290 TraceCheckUtils]: 54: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,154 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12837#true} {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,154 INFO L272 TraceCheckUtils]: 56: Hoare triple {12963#(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_~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)); {12837#true} is VALID [2022-04-08 12:24:36,154 INFO L290 TraceCheckUtils]: 57: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,154 INFO L290 TraceCheckUtils]: 58: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,154 INFO L290 TraceCheckUtils]: 59: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,159 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12837#true} {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {12963#(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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,160 INFO L290 TraceCheckUtils]: 61: Hoare triple {12963#(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_~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; {13030#(and (= main_~r~0 0) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,160 INFO L290 TraceCheckUtils]: 62: Hoare triple {13030#(and (= main_~r~0 0) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {13030#(and (= main_~r~0 0) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,160 INFO L272 TraceCheckUtils]: 63: Hoare triple {13030#(and (= main_~r~0 0) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,161 INFO L290 TraceCheckUtils]: 64: Hoare triple {12837#true} ~cond := #in~cond; {13040#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:24:36,161 INFO L290 TraceCheckUtils]: 65: Hoare triple {13040#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:36,161 INFO L290 TraceCheckUtils]: 66: Hoare triple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:36,162 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} {13030#(and (= main_~r~0 0) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,162 INFO L272 TraceCheckUtils]: 68: Hoare triple {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,162 INFO L290 TraceCheckUtils]: 69: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,162 INFO L290 TraceCheckUtils]: 70: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,162 INFO L290 TraceCheckUtils]: 71: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,164 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12837#true} {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,164 INFO L272 TraceCheckUtils]: 73: Hoare triple {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,164 INFO L290 TraceCheckUtils]: 74: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,164 INFO L290 TraceCheckUtils]: 75: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,164 INFO L290 TraceCheckUtils]: 76: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,165 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12837#true} {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,165 INFO L272 TraceCheckUtils]: 78: Hoare triple {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,165 INFO L290 TraceCheckUtils]: 79: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,165 INFO L290 TraceCheckUtils]: 80: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,165 INFO L290 TraceCheckUtils]: 81: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,166 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {12837#true} {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,167 INFO L290 TraceCheckUtils]: 83: Hoare triple {13051#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~k~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {13100#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 2 main_~k~0) (<= 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 12:24:36,167 INFO L290 TraceCheckUtils]: 84: Hoare triple {13100#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 2 main_~k~0) (<= 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; {13100#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 2 main_~k~0) (<= 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 12:24:36,167 INFO L272 TraceCheckUtils]: 85: Hoare triple {13100#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 2 main_~k~0) (<= 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)); {12837#true} is VALID [2022-04-08 12:24:36,167 INFO L290 TraceCheckUtils]: 86: Hoare triple {12837#true} ~cond := #in~cond; {13040#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:24:36,168 INFO L290 TraceCheckUtils]: 87: Hoare triple {13040#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:36,168 INFO L290 TraceCheckUtils]: 88: Hoare triple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:24:36,169 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} {13100#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 2 main_~k~0) (<= 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; {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,169 INFO L272 TraceCheckUtils]: 90: Hoare triple {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,169 INFO L290 TraceCheckUtils]: 91: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,169 INFO L290 TraceCheckUtils]: 92: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,170 INFO L290 TraceCheckUtils]: 93: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,170 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {12837#true} {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} #93#return; {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,170 INFO L272 TraceCheckUtils]: 95: Hoare triple {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:24:36,170 INFO L290 TraceCheckUtils]: 96: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,170 INFO L290 TraceCheckUtils]: 97: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,170 INFO L290 TraceCheckUtils]: 98: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,171 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {12837#true} {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} #95#return; {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,171 INFO L272 TraceCheckUtils]: 100: Hoare triple {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~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)); {12837#true} is VALID [2022-04-08 12:24:36,171 INFO L290 TraceCheckUtils]: 101: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:24:36,171 INFO L290 TraceCheckUtils]: 102: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:24:36,171 INFO L290 TraceCheckUtils]: 103: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:24:36,172 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12837#true} {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} #97#return; {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,173 INFO L290 TraceCheckUtils]: 105: Hoare triple {13119#(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) (<= 2 main_~k~0) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {13168#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (< main_~c~0 main_~b~0) (= main_~p~0 1))} is VALID [2022-04-08 12:24:36,174 INFO L290 TraceCheckUtils]: 106: Hoare triple {13168#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (< main_~c~0 main_~b~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13172#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-08 12:24:36,175 INFO L290 TraceCheckUtils]: 107: Hoare triple {13172#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} assume !false; {13172#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-08 12:24:36,175 INFO L290 TraceCheckUtils]: 108: Hoare triple {13172#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} assume !(0 != ~b~0); {13179#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) 0) (= (+ (* main_~y~0 2) (* main_~y~0 main_~s~0)) 0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-08 12:24:36,176 INFO L272 TraceCheckUtils]: 109: Hoare triple {13179#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) 0) (= (+ (* main_~y~0 2) (* main_~y~0 main_~s~0)) 0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {13183#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:24:36,176 INFO L290 TraceCheckUtils]: 110: Hoare triple {13183#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13187#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:24:36,176 INFO L290 TraceCheckUtils]: 111: Hoare triple {13187#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12838#false} is VALID [2022-04-08 12:24:36,177 INFO L290 TraceCheckUtils]: 112: Hoare triple {12838#false} assume !false; {12838#false} is VALID [2022-04-08 12:24:36,177 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 61 proven. 58 refuted. 0 times theorem prover too weak. 249 trivial. 0 not checked. [2022-04-08 12:24:36,177 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:25:58,007 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:27:00,180 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:27:09,589 INFO L290 TraceCheckUtils]: 112: Hoare triple {12838#false} assume !false; {12838#false} is VALID [2022-04-08 12:27:09,589 INFO L290 TraceCheckUtils]: 111: Hoare triple {13187#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12838#false} is VALID [2022-04-08 12:27:09,590 INFO L290 TraceCheckUtils]: 110: Hoare triple {13183#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13187#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:09,599 INFO L272 TraceCheckUtils]: 109: Hoare triple {13203#(= (+ (* 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)); {13183#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:27:09,600 INFO L290 TraceCheckUtils]: 108: Hoare triple {13207#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {13203#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-08 12:27:09,600 INFO L290 TraceCheckUtils]: 107: Hoare triple {13207#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {13207#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 12:27:11,602 WARN L290 TraceCheckUtils]: 106: Hoare triple {13214#(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; {13207#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is UNKNOWN [2022-04-08 12:27:11,602 INFO L290 TraceCheckUtils]: 105: Hoare triple {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {13214#(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 12:27:11,603 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12837#true} {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #97#return; {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:11,603 INFO L290 TraceCheckUtils]: 103: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,603 INFO L290 TraceCheckUtils]: 102: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,603 INFO L290 TraceCheckUtils]: 101: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,604 INFO L272 TraceCheckUtils]: 100: Hoare triple {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,604 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {12837#true} {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #95#return; {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:11,604 INFO L290 TraceCheckUtils]: 98: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,604 INFO L290 TraceCheckUtils]: 97: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,604 INFO L290 TraceCheckUtils]: 96: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,604 INFO L272 TraceCheckUtils]: 95: Hoare triple {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,605 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {12837#true} {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #93#return; {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:11,605 INFO L290 TraceCheckUtils]: 93: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,605 INFO L290 TraceCheckUtils]: 92: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,605 INFO L290 TraceCheckUtils]: 91: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,605 INFO L272 TraceCheckUtils]: 90: Hoare triple {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,606 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} {13267#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {13218#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:11,606 INFO L290 TraceCheckUtils]: 88: Hoare triple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:11,607 INFO L290 TraceCheckUtils]: 87: Hoare triple {13277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:11,607 INFO L290 TraceCheckUtils]: 86: Hoare triple {12837#true} ~cond := #in~cond; {13277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:27:11,607 INFO L272 TraceCheckUtils]: 85: Hoare triple {13267#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,608 INFO L290 TraceCheckUtils]: 84: Hoare triple {13267#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {13267#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 12:27:11,756 INFO L290 TraceCheckUtils]: 83: Hoare triple {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {13267#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-08 12:27:11,757 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {12837#true} {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} #97#return; {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} is VALID [2022-04-08 12:27:11,757 INFO L290 TraceCheckUtils]: 81: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,758 INFO L290 TraceCheckUtils]: 80: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,758 INFO L290 TraceCheckUtils]: 79: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,758 INFO L272 TraceCheckUtils]: 78: Hoare triple {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~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)); {12837#true} is VALID [2022-04-08 12:27:11,758 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12837#true} {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} #95#return; {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} is VALID [2022-04-08 12:27:11,758 INFO L290 TraceCheckUtils]: 76: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,758 INFO L290 TraceCheckUtils]: 75: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,758 INFO L290 TraceCheckUtils]: 74: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,759 INFO L272 TraceCheckUtils]: 73: Hoare triple {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,759 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12837#true} {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} #93#return; {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} is VALID [2022-04-08 12:27:11,759 INFO L290 TraceCheckUtils]: 71: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,759 INFO L290 TraceCheckUtils]: 70: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,759 INFO L290 TraceCheckUtils]: 69: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,760 INFO L272 TraceCheckUtils]: 68: Hoare triple {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,764 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} {13336#(or (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} #91#return; {13287#(or (not (= (mod main_~a~0 main_~b~0) 0)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (< (div main_~a~0 main_~b~0) (+ main_~k~0 1)))} is VALID [2022-04-08 12:27:11,764 INFO L290 TraceCheckUtils]: 66: Hoare triple {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:11,765 INFO L290 TraceCheckUtils]: 65: Hoare triple {13277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13044#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:11,765 INFO L290 TraceCheckUtils]: 64: Hoare triple {12837#true} ~cond := #in~cond; {13277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:27:11,765 INFO L272 TraceCheckUtils]: 63: Hoare triple {13336#(or (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,765 INFO L290 TraceCheckUtils]: 62: Hoare triple {13336#(or (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {13336#(or (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-08 12:27:11,768 INFO L290 TraceCheckUtils]: 61: Hoare triple {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {13336#(or (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-08 12:27:11,769 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12837#true} {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,769 INFO L290 TraceCheckUtils]: 59: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,769 INFO L290 TraceCheckUtils]: 58: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,769 INFO L290 TraceCheckUtils]: 57: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,769 INFO L272 TraceCheckUtils]: 56: Hoare triple {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,770 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12837#true} {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,770 INFO L290 TraceCheckUtils]: 54: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,770 INFO L290 TraceCheckUtils]: 53: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,770 INFO L290 TraceCheckUtils]: 52: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,770 INFO L272 TraceCheckUtils]: 51: Hoare triple {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,771 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12837#true} {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,771 INFO L290 TraceCheckUtils]: 49: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,771 INFO L290 TraceCheckUtils]: 48: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,771 INFO L290 TraceCheckUtils]: 47: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,771 INFO L272 TraceCheckUtils]: 46: Hoare triple {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,772 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12837#true} {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,772 INFO L290 TraceCheckUtils]: 44: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,772 INFO L290 TraceCheckUtils]: 43: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,772 INFO L290 TraceCheckUtils]: 42: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,772 INFO L272 TraceCheckUtils]: 41: Hoare triple {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,773 INFO L290 TraceCheckUtils]: 40: Hoare triple {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,773 INFO L290 TraceCheckUtils]: 39: Hoare triple {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13355#(or (not (= (mod (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) 0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,774 INFO L290 TraceCheckUtils]: 38: Hoare triple {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,774 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {12837#true} {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #89#return; {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,775 INFO L290 TraceCheckUtils]: 36: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,775 INFO L290 TraceCheckUtils]: 35: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,775 INFO L290 TraceCheckUtils]: 34: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,775 INFO L272 TraceCheckUtils]: 33: Hoare triple {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,776 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12837#true} {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #87#return; {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,776 INFO L290 TraceCheckUtils]: 31: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,776 INFO L290 TraceCheckUtils]: 30: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,776 INFO L290 TraceCheckUtils]: 29: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,776 INFO L272 TraceCheckUtils]: 28: Hoare triple {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,777 INFO L290 TraceCheckUtils]: 27: Hoare triple {12837#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; {13422#(or (not (= main_~a~0 (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:27:11,778 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12837#true} {12837#true} #85#return; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 25: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 24: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 23: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L272 TraceCheckUtils]: 22: Hoare triple {12837#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12837#true} {12837#true} #83#return; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 20: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 19: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 18: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L272 TraceCheckUtils]: 17: Hoare triple {12837#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {12837#true} {12837#true} #81#return; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 15: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 14: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,778 INFO L290 TraceCheckUtils]: 13: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L272 TraceCheckUtils]: 12: Hoare triple {12837#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L290 TraceCheckUtils]: 11: Hoare triple {12837#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12837#true} {12837#true} #79#return; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L290 TraceCheckUtils]: 9: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L290 TraceCheckUtils]: 8: Hoare triple {12837#true} assume !(0 == ~cond); {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L290 TraceCheckUtils]: 7: Hoare triple {12837#true} ~cond := #in~cond; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L272 TraceCheckUtils]: 6: Hoare triple {12837#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L290 TraceCheckUtils]: 5: Hoare triple {12837#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; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L272 TraceCheckUtils]: 4: Hoare triple {12837#true} call #t~ret6 := main(); {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12837#true} {12837#true} #103#return; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L290 TraceCheckUtils]: 2: Hoare triple {12837#true} assume true; {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L290 TraceCheckUtils]: 1: Hoare triple {12837#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); {12837#true} is VALID [2022-04-08 12:27:11,779 INFO L272 TraceCheckUtils]: 0: Hoare triple {12837#true} call ULTIMATE.init(); {12837#true} is VALID [2022-04-08 12:27:11,780 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 55 proven. 45 refuted. 4 times theorem prover too weak. 264 trivial. 0 not checked. [2022-04-08 12:27:11,780 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:27:11,780 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [306717223] [2022-04-08 12:27:11,780 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:27:11,780 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1107504940] [2022-04-08 12:27:11,780 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1107504940] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:27:11,780 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:27:11,780 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 15] total 28 [2022-04-08 12:27:11,781 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:27:11,781 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [163471985] [2022-04-08 12:27:11,781 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [163471985] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:27:11,781 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:27:11,781 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-08 12:27:11,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1119924955] [2022-04-08 12:27:11,781 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:27:11,781 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 14 states have internal predecessors, (31), 9 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (19), 6 states have call predecessors, (19), 8 states have call successors, (19) Word has length 113 [2022-04-08 12:27:11,781 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:27:11,782 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 14 states have internal predecessors, (31), 9 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (19), 6 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 12:27:11,865 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 12:27:11,865 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-08 12:27:11,866 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:11,866 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-08 12:27:11,866 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=626, Unknown=5, NotChecked=0, Total=756 [2022-04-08 12:27:11,866 INFO L87 Difference]: Start difference. First operand 155 states and 201 transitions. Second operand has 18 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 14 states have internal predecessors, (31), 9 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (19), 6 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 12:27:20,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:20,450 INFO L93 Difference]: Finished difference Result 188 states and 247 transitions. [2022-04-08 12:27:20,450 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 12:27:20,451 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 14 states have internal predecessors, (31), 9 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (19), 6 states have call predecessors, (19), 8 states have call successors, (19) Word has length 113 [2022-04-08 12:27:20,451 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:27:20,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 14 states have internal predecessors, (31), 9 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (19), 6 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 12:27:20,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 117 transitions. [2022-04-08 12:27:20,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 14 states have internal predecessors, (31), 9 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (19), 6 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 12:27:20,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 117 transitions. [2022-04-08 12:27:20,453 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 117 transitions. [2022-04-08 12:27:20,571 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 12:27:20,574 INFO L225 Difference]: With dead ends: 188 [2022-04-08 12:27:20,574 INFO L226 Difference]: Without dead ends: 185 [2022-04-08 12:27:20,574 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 231 GetRequests, 198 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 271 ImplicationChecksByTransitivity, 15.0s TimeCoverageRelationStatistics Valid=185, Invalid=932, Unknown=5, NotChecked=0, Total=1122 [2022-04-08 12:27:20,575 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 42 mSDsluCounter, 242 mSDsCounter, 0 mSdLazyCounter, 948 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 285 SdHoareTripleChecker+Invalid, 985 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 948 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.9s IncrementalHoareTripleChecker+Time [2022-04-08 12:27:20,575 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 285 Invalid, 985 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 948 Invalid, 0 Unknown, 0 Unchecked, 3.9s Time] [2022-04-08 12:27:20,575 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-04-08 12:27:20,982 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 184. [2022-04-08 12:27:20,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:27:20,983 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 184 states, 99 states have (on average 1.121212121212121) internal successors, (111), 101 states have internal predecessors, (111), 67 states have call successors, (67), 18 states have call predecessors, (67), 17 states have return successors, (64), 64 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 12:27:20,983 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 184 states, 99 states have (on average 1.121212121212121) internal successors, (111), 101 states have internal predecessors, (111), 67 states have call successors, (67), 18 states have call predecessors, (67), 17 states have return successors, (64), 64 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 12:27:20,984 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 184 states, 99 states have (on average 1.121212121212121) internal successors, (111), 101 states have internal predecessors, (111), 67 states have call successors, (67), 18 states have call predecessors, (67), 17 states have return successors, (64), 64 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 12:27:20,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:20,987 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-08 12:27:20,987 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-08 12:27:20,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:20,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:20,988 INFO L74 IsIncluded]: Start isIncluded. First operand has 184 states, 99 states have (on average 1.121212121212121) internal successors, (111), 101 states have internal predecessors, (111), 67 states have call successors, (67), 18 states have call predecessors, (67), 17 states have return successors, (64), 64 states have call predecessors, (64), 64 states have call successors, (64) Second operand 185 states. [2022-04-08 12:27:20,988 INFO L87 Difference]: Start difference. First operand has 184 states, 99 states have (on average 1.121212121212121) internal successors, (111), 101 states have internal predecessors, (111), 67 states have call successors, (67), 18 states have call predecessors, (67), 17 states have return successors, (64), 64 states have call predecessors, (64), 64 states have call successors, (64) Second operand 185 states. [2022-04-08 12:27:20,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:20,992 INFO L93 Difference]: Finished difference Result 185 states and 243 transitions. [2022-04-08 12:27:20,992 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 243 transitions. [2022-04-08 12:27:20,992 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:20,993 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:20,993 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:27:20,993 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:27:20,993 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 184 states, 99 states have (on average 1.121212121212121) internal successors, (111), 101 states have internal predecessors, (111), 67 states have call successors, (67), 18 states have call predecessors, (67), 17 states have return successors, (64), 64 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-08 12:27:21,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 242 transitions. [2022-04-08 12:27:21,003 INFO L78 Accepts]: Start accepts. Automaton has 184 states and 242 transitions. Word has length 113 [2022-04-08 12:27:21,004 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:27:21,004 INFO L478 AbstractCegarLoop]: Abstraction has 184 states and 242 transitions. [2022-04-08 12:27:21,004 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 14 states have internal predecessors, (31), 9 states have call successors, (21), 2 states have call predecessors, (21), 3 states have return successors, (19), 6 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-08 12:27:21,004 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 184 states and 242 transitions. [2022-04-08 12:27:21,448 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 242 edges. 242 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:27:21,449 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 242 transitions. [2022-04-08 12:27:21,449 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-08 12:27:21,450 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:27:21,450 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 12:27:21,467 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 12:27:21,665 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 12:27:21,668 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:27:21,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:27:21,668 INFO L85 PathProgramCache]: Analyzing trace with hash 884638574, now seen corresponding path program 5 times [2022-04-08 12:27:21,668 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:21,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1869788756] [2022-04-08 12:27:21,668 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:27:21,668 INFO L85 PathProgramCache]: Analyzing trace with hash 884638574, now seen corresponding path program 6 times [2022-04-08 12:27:21,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:27:21,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1331913167] [2022-04-08 12:27:21,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:27:21,669 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:27:21,684 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:27:21,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [857432581] [2022-04-08 12:27:21,684 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:27:21,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:27:21,684 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:27:21,685 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 12:27:21,686 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 12:27:21,739 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 12:27:21,739 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:27:21,740 INFO L263 TraceCheckSpWp]: Trace formula consists of 255 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 12:27:21,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:27:21,756 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:27:22,046 INFO L272 TraceCheckUtils]: 0: Hoare triple {14668#true} call ULTIMATE.init(); {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {14668#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); {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L290 TraceCheckUtils]: 2: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14668#true} {14668#true} #103#return; {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L272 TraceCheckUtils]: 4: Hoare triple {14668#true} call #t~ret6 := main(); {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L290 TraceCheckUtils]: 5: Hoare triple {14668#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; {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L272 TraceCheckUtils]: 6: Hoare triple {14668#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L290 TraceCheckUtils]: 7: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L290 TraceCheckUtils]: 8: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L290 TraceCheckUtils]: 9: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14668#true} {14668#true} #79#return; {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L290 TraceCheckUtils]: 11: Hoare triple {14668#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14668#true} is VALID [2022-04-08 12:27:22,047 INFO L272 TraceCheckUtils]: 12: Hoare triple {14668#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 13: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 14: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 15: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14668#true} {14668#true} #81#return; {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L272 TraceCheckUtils]: 17: Hoare triple {14668#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 18: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 19: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 20: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14668#true} {14668#true} #83#return; {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L272 TraceCheckUtils]: 22: Hoare triple {14668#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 23: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,048 INFO L290 TraceCheckUtils]: 24: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 25: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14668#true} {14668#true} #85#return; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 27: Hoare triple {14668#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; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L272 TraceCheckUtils]: 28: Hoare triple {14668#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 29: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 30: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 31: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14668#true} {14668#true} #87#return; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L272 TraceCheckUtils]: 33: Hoare triple {14668#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 34: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 35: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L290 TraceCheckUtils]: 36: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,049 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14668#true} {14668#true} #89#return; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 38: Hoare triple {14668#true} assume !false; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 39: Hoare triple {14668#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 40: Hoare triple {14668#true} assume !false; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L272 TraceCheckUtils]: 41: Hoare triple {14668#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 42: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 43: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 44: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14668#true} {14668#true} #91#return; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L272 TraceCheckUtils]: 46: Hoare triple {14668#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 47: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 48: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L290 TraceCheckUtils]: 49: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14668#true} {14668#true} #93#return; {14668#true} is VALID [2022-04-08 12:27:22,050 INFO L272 TraceCheckUtils]: 51: Hoare triple {14668#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L290 TraceCheckUtils]: 52: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L290 TraceCheckUtils]: 53: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L290 TraceCheckUtils]: 54: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14668#true} {14668#true} #95#return; {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L272 TraceCheckUtils]: 56: Hoare triple {14668#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)); {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L290 TraceCheckUtils]: 57: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L290 TraceCheckUtils]: 58: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L290 TraceCheckUtils]: 59: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,051 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14668#true} {14668#true} #97#return; {14668#true} is VALID [2022-04-08 12:27:22,056 INFO L290 TraceCheckUtils]: 61: Hoare triple {14668#true} assume !(~c~0 >= ~b~0); {14856#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:22,056 INFO L290 TraceCheckUtils]: 62: Hoare triple {14856#(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; {14860#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:27:22,056 INFO L290 TraceCheckUtils]: 63: Hoare triple {14860#(< main_~b~0 main_~a~0)} assume !false; {14860#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:27:22,057 INFO L290 TraceCheckUtils]: 64: Hoare triple {14860#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,057 INFO L290 TraceCheckUtils]: 65: Hoare triple {14867#(< main_~b~0 main_~c~0)} assume !false; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,057 INFO L272 TraceCheckUtils]: 66: Hoare triple {14867#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,057 INFO L290 TraceCheckUtils]: 67: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,057 INFO L290 TraceCheckUtils]: 68: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,057 INFO L290 TraceCheckUtils]: 69: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,058 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #91#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,058 INFO L272 TraceCheckUtils]: 71: Hoare triple {14867#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,058 INFO L290 TraceCheckUtils]: 72: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,058 INFO L290 TraceCheckUtils]: 73: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,058 INFO L290 TraceCheckUtils]: 74: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,059 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #93#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,059 INFO L272 TraceCheckUtils]: 76: Hoare triple {14867#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,059 INFO L290 TraceCheckUtils]: 77: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,059 INFO L290 TraceCheckUtils]: 78: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,059 INFO L290 TraceCheckUtils]: 79: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,060 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #95#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,060 INFO L272 TraceCheckUtils]: 81: Hoare triple {14867#(< 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)); {14668#true} is VALID [2022-04-08 12:27:22,060 INFO L290 TraceCheckUtils]: 82: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,060 INFO L290 TraceCheckUtils]: 83: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,060 INFO L290 TraceCheckUtils]: 84: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,061 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #97#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,062 INFO L290 TraceCheckUtils]: 86: Hoare triple {14867#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,062 INFO L290 TraceCheckUtils]: 87: Hoare triple {14934#(< 0 main_~c~0)} assume !false; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,062 INFO L272 TraceCheckUtils]: 88: Hoare triple {14934#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,062 INFO L290 TraceCheckUtils]: 89: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,062 INFO L290 TraceCheckUtils]: 90: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,062 INFO L290 TraceCheckUtils]: 91: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,063 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #91#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,063 INFO L272 TraceCheckUtils]: 93: Hoare triple {14934#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,063 INFO L290 TraceCheckUtils]: 94: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,063 INFO L290 TraceCheckUtils]: 95: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,063 INFO L290 TraceCheckUtils]: 96: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,064 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #93#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,064 INFO L272 TraceCheckUtils]: 98: Hoare triple {14934#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,064 INFO L290 TraceCheckUtils]: 99: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,064 INFO L290 TraceCheckUtils]: 100: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,064 INFO L290 TraceCheckUtils]: 101: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,065 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #95#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,065 INFO L272 TraceCheckUtils]: 103: Hoare triple {14934#(< 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)); {14668#true} is VALID [2022-04-08 12:27:22,065 INFO L290 TraceCheckUtils]: 104: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,065 INFO L290 TraceCheckUtils]: 105: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,065 INFO L290 TraceCheckUtils]: 106: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,065 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #97#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,066 INFO L290 TraceCheckUtils]: 108: Hoare triple {14934#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,066 INFO L290 TraceCheckUtils]: 109: Hoare triple {14934#(< 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; {15004#(< 0 main_~b~0)} is VALID [2022-04-08 12:27:22,066 INFO L290 TraceCheckUtils]: 110: Hoare triple {15004#(< 0 main_~b~0)} assume !false; {15004#(< 0 main_~b~0)} is VALID [2022-04-08 12:27:22,067 INFO L290 TraceCheckUtils]: 111: Hoare triple {15004#(< 0 main_~b~0)} assume !(0 != ~b~0); {14669#false} is VALID [2022-04-08 12:27:22,067 INFO L272 TraceCheckUtils]: 112: Hoare triple {14669#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {14669#false} is VALID [2022-04-08 12:27:22,067 INFO L290 TraceCheckUtils]: 113: Hoare triple {14669#false} ~cond := #in~cond; {14669#false} is VALID [2022-04-08 12:27:22,067 INFO L290 TraceCheckUtils]: 114: Hoare triple {14669#false} assume 0 == ~cond; {14669#false} is VALID [2022-04-08 12:27:22,067 INFO L290 TraceCheckUtils]: 115: Hoare triple {14669#false} assume !false; {14669#false} is VALID [2022-04-08 12:27:22,067 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 12:27:22,067 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:27:22,366 INFO L290 TraceCheckUtils]: 115: Hoare triple {14669#false} assume !false; {14669#false} is VALID [2022-04-08 12:27:22,366 INFO L290 TraceCheckUtils]: 114: Hoare triple {14669#false} assume 0 == ~cond; {14669#false} is VALID [2022-04-08 12:27:22,366 INFO L290 TraceCheckUtils]: 113: Hoare triple {14669#false} ~cond := #in~cond; {14669#false} is VALID [2022-04-08 12:27:22,366 INFO L272 TraceCheckUtils]: 112: Hoare triple {14669#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {14669#false} is VALID [2022-04-08 12:27:22,367 INFO L290 TraceCheckUtils]: 111: Hoare triple {15004#(< 0 main_~b~0)} assume !(0 != ~b~0); {14669#false} is VALID [2022-04-08 12:27:22,367 INFO L290 TraceCheckUtils]: 110: Hoare triple {15004#(< 0 main_~b~0)} assume !false; {15004#(< 0 main_~b~0)} is VALID [2022-04-08 12:27:22,367 INFO L290 TraceCheckUtils]: 109: Hoare triple {14934#(< 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; {15004#(< 0 main_~b~0)} is VALID [2022-04-08 12:27:22,368 INFO L290 TraceCheckUtils]: 108: Hoare triple {14934#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,368 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #97#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,368 INFO L290 TraceCheckUtils]: 106: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,368 INFO L290 TraceCheckUtils]: 105: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,368 INFO L290 TraceCheckUtils]: 104: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,368 INFO L272 TraceCheckUtils]: 103: Hoare triple {14934#(< 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)); {14668#true} is VALID [2022-04-08 12:27:22,369 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #95#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,369 INFO L290 TraceCheckUtils]: 101: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,369 INFO L290 TraceCheckUtils]: 100: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,369 INFO L290 TraceCheckUtils]: 99: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,369 INFO L272 TraceCheckUtils]: 98: Hoare triple {14934#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,370 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #93#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,370 INFO L290 TraceCheckUtils]: 96: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,370 INFO L290 TraceCheckUtils]: 95: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,370 INFO L290 TraceCheckUtils]: 94: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,370 INFO L272 TraceCheckUtils]: 93: Hoare triple {14934#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,371 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14668#true} {14934#(< 0 main_~c~0)} #91#return; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,371 INFO L290 TraceCheckUtils]: 91: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,371 INFO L290 TraceCheckUtils]: 90: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,371 INFO L290 TraceCheckUtils]: 89: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,371 INFO L272 TraceCheckUtils]: 88: Hoare triple {14934#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,371 INFO L290 TraceCheckUtils]: 87: Hoare triple {14934#(< 0 main_~c~0)} assume !false; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,372 INFO L290 TraceCheckUtils]: 86: Hoare triple {14867#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14934#(< 0 main_~c~0)} is VALID [2022-04-08 12:27:22,373 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #97#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,373 INFO L290 TraceCheckUtils]: 84: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,373 INFO L290 TraceCheckUtils]: 83: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,373 INFO L290 TraceCheckUtils]: 82: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,373 INFO L272 TraceCheckUtils]: 81: Hoare triple {14867#(< 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)); {14668#true} is VALID [2022-04-08 12:27:22,374 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #95#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,374 INFO L290 TraceCheckUtils]: 79: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,374 INFO L290 TraceCheckUtils]: 78: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,374 INFO L290 TraceCheckUtils]: 77: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,374 INFO L272 TraceCheckUtils]: 76: Hoare triple {14867#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,374 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #93#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,374 INFO L290 TraceCheckUtils]: 74: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,375 INFO L290 TraceCheckUtils]: 73: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,375 INFO L290 TraceCheckUtils]: 72: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,375 INFO L272 TraceCheckUtils]: 71: Hoare triple {14867#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,375 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {14668#true} {14867#(< main_~b~0 main_~c~0)} #91#return; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,375 INFO L290 TraceCheckUtils]: 69: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,375 INFO L290 TraceCheckUtils]: 68: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,375 INFO L290 TraceCheckUtils]: 67: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,375 INFO L272 TraceCheckUtils]: 66: Hoare triple {14867#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,376 INFO L290 TraceCheckUtils]: 65: Hoare triple {14867#(< main_~b~0 main_~c~0)} assume !false; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,376 INFO L290 TraceCheckUtils]: 64: Hoare triple {14860#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14867#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:27:22,376 INFO L290 TraceCheckUtils]: 63: Hoare triple {14860#(< main_~b~0 main_~a~0)} assume !false; {14860#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:27:22,377 INFO L290 TraceCheckUtils]: 62: Hoare triple {14856#(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; {14860#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:27:22,377 INFO L290 TraceCheckUtils]: 61: Hoare triple {14668#true} assume !(~c~0 >= ~b~0); {14856#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:22,377 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14668#true} {14668#true} #97#return; {14668#true} is VALID [2022-04-08 12:27:22,377 INFO L290 TraceCheckUtils]: 59: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,377 INFO L290 TraceCheckUtils]: 58: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,377 INFO L290 TraceCheckUtils]: 57: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,377 INFO L272 TraceCheckUtils]: 56: Hoare triple {14668#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)); {14668#true} is VALID [2022-04-08 12:27:22,377 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14668#true} {14668#true} #95#return; {14668#true} is VALID [2022-04-08 12:27:22,377 INFO L290 TraceCheckUtils]: 54: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,377 INFO L290 TraceCheckUtils]: 53: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 52: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L272 TraceCheckUtils]: 51: Hoare triple {14668#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14668#true} {14668#true} #93#return; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 49: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 48: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 47: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L272 TraceCheckUtils]: 46: Hoare triple {14668#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14668#true} {14668#true} #91#return; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 44: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 43: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 42: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L272 TraceCheckUtils]: 41: Hoare triple {14668#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 40: Hoare triple {14668#true} assume !false; {14668#true} is VALID [2022-04-08 12:27:22,378 INFO L290 TraceCheckUtils]: 39: Hoare triple {14668#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 38: Hoare triple {14668#true} assume !false; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14668#true} {14668#true} #89#return; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 36: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 35: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 34: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L272 TraceCheckUtils]: 33: Hoare triple {14668#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14668#true} {14668#true} #87#return; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 31: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 30: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 29: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L272 TraceCheckUtils]: 28: Hoare triple {14668#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {14668#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; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14668#true} {14668#true} #85#return; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,379 INFO L290 TraceCheckUtils]: 24: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 23: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L272 TraceCheckUtils]: 22: Hoare triple {14668#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14668#true} {14668#true} #83#return; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 20: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 19: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 18: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L272 TraceCheckUtils]: 17: Hoare triple {14668#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14668#true} {14668#true} #81#return; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 15: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 14: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 13: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L272 TraceCheckUtils]: 12: Hoare triple {14668#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L290 TraceCheckUtils]: 11: Hoare triple {14668#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14668#true} is VALID [2022-04-08 12:27:22,380 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14668#true} {14668#true} #79#return; {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {14668#true} assume !(0 == ~cond); {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {14668#true} ~cond := #in~cond; {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L272 TraceCheckUtils]: 6: Hoare triple {14668#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L290 TraceCheckUtils]: 5: Hoare triple {14668#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; {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L272 TraceCheckUtils]: 4: Hoare triple {14668#true} call #t~ret6 := main(); {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14668#true} {14668#true} #103#return; {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L290 TraceCheckUtils]: 2: Hoare triple {14668#true} assume true; {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L290 TraceCheckUtils]: 1: Hoare triple {14668#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); {14668#true} is VALID [2022-04-08 12:27:22,381 INFO L272 TraceCheckUtils]: 0: Hoare triple {14668#true} call ULTIMATE.init(); {14668#true} is VALID [2022-04-08 12:27:22,381 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 12:27:22,382 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:27:22,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1331913167] [2022-04-08 12:27:22,382 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:27:22,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [857432581] [2022-04-08 12:27:22,382 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [857432581] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:27:22,382 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:27:22,382 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 7 [2022-04-08 12:27:22,382 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:27:22,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1869788756] [2022-04-08 12:27:22,382 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1869788756] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:27:22,382 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:27:22,382 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 12:27:22,382 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [405511534] [2022-04-08 12:27:22,383 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:27:22,383 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 12:27:22,383 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:27:22,383 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 12:27:22,432 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 12:27:22,432 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 12:27:22,432 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:22,433 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 12:27:22,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-08 12:27:22,433 INFO L87 Difference]: Start difference. First operand 184 states and 242 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 12:27:23,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:23,716 INFO L93 Difference]: Finished difference Result 244 states and 342 transitions. [2022-04-08 12:27:23,716 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 12:27:23,717 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 12:27:23,717 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:27:23,717 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 12:27:23,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-08 12:27:23,719 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 12:27:23,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-08 12:27:23,721 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 126 transitions. [2022-04-08 12:27:23,849 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 12:27:23,854 INFO L225 Difference]: With dead ends: 244 [2022-04-08 12:27:23,854 INFO L226 Difference]: Without dead ends: 236 [2022-04-08 12:27:23,855 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 12:27:23,855 INFO L913 BasicCegarLoop]: 85 mSDtfsCounter, 14 mSDsluCounter, 195 mSDsCounter, 0 mSdLazyCounter, 205 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:27:23,855 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.2s Time] [2022-04-08 12:27:23,856 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 236 states. [2022-04-08 12:27:24,426 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 236 to 217. [2022-04-08 12:27:24,426 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:27:24,426 INFO L82 GeneralOperation]: Start isEquivalent. First operand 236 states. Second operand has 217 states, 112 states have (on average 1.1517857142857142) internal successors, (129), 114 states have internal predecessors, (129), 87 states have call successors, (87), 18 states have call predecessors, (87), 17 states have return successors, (84), 84 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 12:27:24,427 INFO L74 IsIncluded]: Start isIncluded. First operand 236 states. Second operand has 217 states, 112 states have (on average 1.1517857142857142) internal successors, (129), 114 states have internal predecessors, (129), 87 states have call successors, (87), 18 states have call predecessors, (87), 17 states have return successors, (84), 84 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 12:27:24,427 INFO L87 Difference]: Start difference. First operand 236 states. Second operand has 217 states, 112 states have (on average 1.1517857142857142) internal successors, (129), 114 states have internal predecessors, (129), 87 states have call successors, (87), 18 states have call predecessors, (87), 17 states have return successors, (84), 84 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 12:27:24,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:24,432 INFO L93 Difference]: Finished difference Result 236 states and 333 transitions. [2022-04-08 12:27:24,432 INFO L276 IsEmpty]: Start isEmpty. Operand 236 states and 333 transitions. [2022-04-08 12:27:24,433 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:24,433 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:24,433 INFO L74 IsIncluded]: Start isIncluded. First operand has 217 states, 112 states have (on average 1.1517857142857142) internal successors, (129), 114 states have internal predecessors, (129), 87 states have call successors, (87), 18 states have call predecessors, (87), 17 states have return successors, (84), 84 states have call predecessors, (84), 84 states have call successors, (84) Second operand 236 states. [2022-04-08 12:27:24,434 INFO L87 Difference]: Start difference. First operand has 217 states, 112 states have (on average 1.1517857142857142) internal successors, (129), 114 states have internal predecessors, (129), 87 states have call successors, (87), 18 states have call predecessors, (87), 17 states have return successors, (84), 84 states have call predecessors, (84), 84 states have call successors, (84) Second operand 236 states. [2022-04-08 12:27:24,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:24,439 INFO L93 Difference]: Finished difference Result 236 states and 333 transitions. [2022-04-08 12:27:24,439 INFO L276 IsEmpty]: Start isEmpty. Operand 236 states and 333 transitions. [2022-04-08 12:27:24,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:24,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:24,440 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:27:24,440 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:27:24,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 217 states, 112 states have (on average 1.1517857142857142) internal successors, (129), 114 states have internal predecessors, (129), 87 states have call successors, (87), 18 states have call predecessors, (87), 17 states have return successors, (84), 84 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-08 12:27:24,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 217 states to 217 states and 300 transitions. [2022-04-08 12:27:24,445 INFO L78 Accepts]: Start accepts. Automaton has 217 states and 300 transitions. Word has length 116 [2022-04-08 12:27:24,445 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:27:24,445 INFO L478 AbstractCegarLoop]: Abstraction has 217 states and 300 transitions. [2022-04-08 12:27:24,445 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 12:27:24,445 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 217 states and 300 transitions. [2022-04-08 12:27:25,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 300 edges. 300 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:27:25,173 INFO L276 IsEmpty]: Start isEmpty. Operand 217 states and 300 transitions. [2022-04-08 12:27:25,174 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-04-08 12:27:25,174 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:27:25,175 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 12:27:25,200 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 12:27:25,387 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 12:27:25,387 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:27:25,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:27:25,388 INFO L85 PathProgramCache]: Analyzing trace with hash -743412771, now seen corresponding path program 3 times [2022-04-08 12:27:25,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:25,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [991439614] [2022-04-08 12:27:25,388 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:27:25,388 INFO L85 PathProgramCache]: Analyzing trace with hash -743412771, now seen corresponding path program 4 times [2022-04-08 12:27:25,389 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:27:25,389 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1921956992] [2022-04-08 12:27:25,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:27:25,389 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:27:25,401 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:27:25,401 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1904358542] [2022-04-08 12:27:25,401 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:27:25,401 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:27:25,401 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:27:25,402 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 12:27:25,405 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 12:27:25,468 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:27:25,468 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:27:25,470 INFO L263 TraceCheckSpWp]: Trace formula consists of 265 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 12:27:25,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:27:25,490 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:27:25,783 INFO L272 TraceCheckUtils]: 0: Hoare triple {16783#true} call ULTIMATE.init(); {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L290 TraceCheckUtils]: 1: Hoare triple {16783#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); {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L290 TraceCheckUtils]: 2: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16783#true} {16783#true} #103#return; {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L272 TraceCheckUtils]: 4: Hoare triple {16783#true} call #t~ret6 := main(); {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L290 TraceCheckUtils]: 5: Hoare triple {16783#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; {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L272 TraceCheckUtils]: 6: Hoare triple {16783#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L290 TraceCheckUtils]: 9: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16783#true} {16783#true} #79#return; {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L290 TraceCheckUtils]: 11: Hoare triple {16783#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L272 TraceCheckUtils]: 12: Hoare triple {16783#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L290 TraceCheckUtils]: 13: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L290 TraceCheckUtils]: 14: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L290 TraceCheckUtils]: 15: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {16783#true} {16783#true} #81#return; {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L272 TraceCheckUtils]: 17: Hoare triple {16783#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L290 TraceCheckUtils]: 18: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,785 INFO L290 TraceCheckUtils]: 19: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L290 TraceCheckUtils]: 20: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16783#true} {16783#true} #83#return; {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L272 TraceCheckUtils]: 22: Hoare triple {16783#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L290 TraceCheckUtils]: 23: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L290 TraceCheckUtils]: 24: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L290 TraceCheckUtils]: 25: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16783#true} {16783#true} #85#return; {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L290 TraceCheckUtils]: 27: Hoare triple {16783#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; {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L272 TraceCheckUtils]: 28: Hoare triple {16783#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,786 INFO L290 TraceCheckUtils]: 29: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 30: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 31: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {16783#true} {16783#true} #87#return; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L272 TraceCheckUtils]: 33: Hoare triple {16783#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 34: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 35: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 36: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {16783#true} {16783#true} #89#return; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 38: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 39: Hoare triple {16783#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16783#true} is VALID [2022-04-08 12:27:25,787 INFO L290 TraceCheckUtils]: 40: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L272 TraceCheckUtils]: 41: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L290 TraceCheckUtils]: 42: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L290 TraceCheckUtils]: 43: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L290 TraceCheckUtils]: 44: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {16783#true} {16783#true} #91#return; {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L272 TraceCheckUtils]: 46: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L290 TraceCheckUtils]: 47: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L290 TraceCheckUtils]: 48: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L290 TraceCheckUtils]: 49: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,788 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {16783#true} {16783#true} #93#return; {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L272 TraceCheckUtils]: 51: Hoare triple {16783#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L290 TraceCheckUtils]: 52: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L290 TraceCheckUtils]: 53: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L290 TraceCheckUtils]: 54: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16783#true} {16783#true} #95#return; {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L272 TraceCheckUtils]: 56: Hoare triple {16783#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)); {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L290 TraceCheckUtils]: 57: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L290 TraceCheckUtils]: 58: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L290 TraceCheckUtils]: 59: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16783#true} {16783#true} #97#return; {16783#true} is VALID [2022-04-08 12:27:25,789 INFO L290 TraceCheckUtils]: 61: Hoare triple {16783#true} assume !(~c~0 >= ~b~0); {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L290 TraceCheckUtils]: 62: Hoare triple {16783#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; {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L290 TraceCheckUtils]: 63: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L290 TraceCheckUtils]: 64: Hoare triple {16783#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L290 TraceCheckUtils]: 65: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L272 TraceCheckUtils]: 66: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L290 TraceCheckUtils]: 67: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L290 TraceCheckUtils]: 68: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L290 TraceCheckUtils]: 69: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {16783#true} {16783#true} #91#return; {16783#true} is VALID [2022-04-08 12:27:25,790 INFO L272 TraceCheckUtils]: 71: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L290 TraceCheckUtils]: 72: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L290 TraceCheckUtils]: 73: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L290 TraceCheckUtils]: 74: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {16783#true} {16783#true} #93#return; {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L272 TraceCheckUtils]: 76: Hoare triple {16783#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L290 TraceCheckUtils]: 77: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L290 TraceCheckUtils]: 78: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L290 TraceCheckUtils]: 79: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {16783#true} {16783#true} #95#return; {16783#true} is VALID [2022-04-08 12:27:25,791 INFO L272 TraceCheckUtils]: 81: Hoare triple {16783#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)); {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 82: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 83: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 84: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {16783#true} {16783#true} #97#return; {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 86: Hoare triple {16783#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 87: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L272 TraceCheckUtils]: 88: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 89: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 90: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L290 TraceCheckUtils]: 91: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,792 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {16783#true} {16783#true} #91#return; {16783#true} is VALID [2022-04-08 12:27:25,793 INFO L272 TraceCheckUtils]: 93: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,793 INFO L290 TraceCheckUtils]: 94: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,793 INFO L290 TraceCheckUtils]: 95: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,793 INFO L290 TraceCheckUtils]: 96: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,793 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {16783#true} {16783#true} #93#return; {16783#true} is VALID [2022-04-08 12:27:25,793 INFO L272 TraceCheckUtils]: 98: Hoare triple {16783#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:25,793 INFO L290 TraceCheckUtils]: 99: Hoare triple {16783#true} ~cond := #in~cond; {17085#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:25,794 INFO L290 TraceCheckUtils]: 100: Hoare triple {17085#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:25,794 INFO L290 TraceCheckUtils]: 101: Hoare triple {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:25,795 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} {16783#true} #95#return; {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:25,795 INFO L272 TraceCheckUtils]: 103: Hoare triple {17096#(= 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)); {16783#true} is VALID [2022-04-08 12:27:25,795 INFO L290 TraceCheckUtils]: 104: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,795 INFO L290 TraceCheckUtils]: 105: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,795 INFO L290 TraceCheckUtils]: 106: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,796 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {16783#true} {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:25,796 INFO L290 TraceCheckUtils]: 108: Hoare triple {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:25,797 INFO L290 TraceCheckUtils]: 109: Hoare triple {17096#(= 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; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:25,797 INFO L290 TraceCheckUtils]: 110: Hoare triple {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:25,798 INFO L290 TraceCheckUtils]: 111: Hoare triple {17118#(= 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; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:25,798 INFO L290 TraceCheckUtils]: 112: Hoare triple {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:25,798 INFO L272 TraceCheckUtils]: 113: Hoare triple {17118#(= 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)); {16783#true} is VALID [2022-04-08 12:27:25,798 INFO L290 TraceCheckUtils]: 114: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:25,798 INFO L290 TraceCheckUtils]: 115: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:25,798 INFO L290 TraceCheckUtils]: 116: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:25,799 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {16783#true} {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:25,800 INFO L272 TraceCheckUtils]: 118: Hoare triple {17118#(= 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)); {17146#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:27:25,800 INFO L290 TraceCheckUtils]: 119: Hoare triple {17146#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17150#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:25,801 INFO L290 TraceCheckUtils]: 120: Hoare triple {17150#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16784#false} is VALID [2022-04-08 12:27:25,801 INFO L290 TraceCheckUtils]: 121: Hoare triple {16784#false} assume !false; {16784#false} is VALID [2022-04-08 12:27:25,801 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 12:27:25,801 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:27:36,498 INFO L290 TraceCheckUtils]: 121: Hoare triple {16784#false} assume !false; {16784#false} is VALID [2022-04-08 12:27:36,499 INFO L290 TraceCheckUtils]: 120: Hoare triple {17150#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16784#false} is VALID [2022-04-08 12:27:36,499 INFO L290 TraceCheckUtils]: 119: Hoare triple {17146#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17150#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:36,500 INFO L272 TraceCheckUtils]: 118: Hoare triple {17118#(= 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)); {17146#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:27:36,500 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {16783#true} {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:36,501 INFO L290 TraceCheckUtils]: 116: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,501 INFO L290 TraceCheckUtils]: 115: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,501 INFO L290 TraceCheckUtils]: 114: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,501 INFO L272 TraceCheckUtils]: 113: Hoare triple {17118#(= 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)); {16783#true} is VALID [2022-04-08 12:27:36,501 INFO L290 TraceCheckUtils]: 112: Hoare triple {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:36,501 INFO L290 TraceCheckUtils]: 111: Hoare triple {17118#(= 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; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:36,502 INFO L290 TraceCheckUtils]: 110: Hoare triple {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:36,502 INFO L290 TraceCheckUtils]: 109: Hoare triple {17096#(= 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; {17118#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:27:36,503 INFO L290 TraceCheckUtils]: 108: Hoare triple {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:36,503 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {16783#true} {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:36,503 INFO L290 TraceCheckUtils]: 106: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,503 INFO L290 TraceCheckUtils]: 105: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,503 INFO L290 TraceCheckUtils]: 104: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,503 INFO L272 TraceCheckUtils]: 103: Hoare triple {17096#(= 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)); {16783#true} is VALID [2022-04-08 12:27:36,511 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} {16783#true} #95#return; {17096#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:36,512 INFO L290 TraceCheckUtils]: 101: Hoare triple {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:36,512 INFO L290 TraceCheckUtils]: 100: Hoare triple {17223#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17089#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:36,512 INFO L290 TraceCheckUtils]: 99: Hoare triple {16783#true} ~cond := #in~cond; {17223#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:27:36,513 INFO L272 TraceCheckUtils]: 98: Hoare triple {16783#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {16783#true} {16783#true} #93#return; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 96: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 95: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 94: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L272 TraceCheckUtils]: 93: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {16783#true} {16783#true} #91#return; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 91: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 90: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 89: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L272 TraceCheckUtils]: 88: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 87: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L290 TraceCheckUtils]: 86: Hoare triple {16783#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16783#true} is VALID [2022-04-08 12:27:36,513 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {16783#true} {16783#true} #97#return; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 84: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 83: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 82: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L272 TraceCheckUtils]: 81: Hoare triple {16783#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)); {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {16783#true} {16783#true} #95#return; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 79: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 78: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 77: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L272 TraceCheckUtils]: 76: Hoare triple {16783#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {16783#true} {16783#true} #93#return; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 74: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 73: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L290 TraceCheckUtils]: 72: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,514 INFO L272 TraceCheckUtils]: 71: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {16783#true} {16783#true} #91#return; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 69: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 68: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 67: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L272 TraceCheckUtils]: 66: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 65: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 64: Hoare triple {16783#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 63: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 62: Hoare triple {16783#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; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 61: Hoare triple {16783#true} assume !(~c~0 >= ~b~0); {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16783#true} {16783#true} #97#return; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 59: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 58: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,515 INFO L290 TraceCheckUtils]: 57: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L272 TraceCheckUtils]: 56: Hoare triple {16783#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)); {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16783#true} {16783#true} #95#return; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 54: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 53: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 52: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L272 TraceCheckUtils]: 51: Hoare triple {16783#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {16783#true} {16783#true} #93#return; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 49: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 48: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 47: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L272 TraceCheckUtils]: 46: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {16783#true} {16783#true} #91#return; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 44: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,516 INFO L290 TraceCheckUtils]: 43: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 42: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L272 TraceCheckUtils]: 41: Hoare triple {16783#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 40: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 39: Hoare triple {16783#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 38: Hoare triple {16783#true} assume !false; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {16783#true} {16783#true} #89#return; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 36: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 35: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 34: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L272 TraceCheckUtils]: 33: Hoare triple {16783#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {16783#true} {16783#true} #87#return; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 31: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 30: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,517 INFO L290 TraceCheckUtils]: 29: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L272 TraceCheckUtils]: 28: Hoare triple {16783#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 27: Hoare triple {16783#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; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16783#true} {16783#true} #85#return; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 25: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 24: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 23: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L272 TraceCheckUtils]: 22: Hoare triple {16783#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16783#true} {16783#true} #83#return; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 20: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 19: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 18: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L272 TraceCheckUtils]: 17: Hoare triple {16783#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {16783#true} {16783#true} #81#return; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 15: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,518 INFO L290 TraceCheckUtils]: 14: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 13: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L272 TraceCheckUtils]: 12: Hoare triple {16783#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 11: Hoare triple {16783#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16783#true} {16783#true} #79#return; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 8: Hoare triple {16783#true} assume !(0 == ~cond); {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 7: Hoare triple {16783#true} ~cond := #in~cond; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L272 TraceCheckUtils]: 6: Hoare triple {16783#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 5: Hoare triple {16783#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; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L272 TraceCheckUtils]: 4: Hoare triple {16783#true} call #t~ret6 := main(); {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16783#true} {16783#true} #103#return; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 2: Hoare triple {16783#true} assume true; {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L290 TraceCheckUtils]: 1: Hoare triple {16783#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); {16783#true} is VALID [2022-04-08 12:27:36,519 INFO L272 TraceCheckUtils]: 0: Hoare triple {16783#true} call ULTIMATE.init(); {16783#true} is VALID [2022-04-08 12:27:36,520 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 12:27:36,520 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:27:36,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1921956992] [2022-04-08 12:27:36,520 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:27:36,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1904358542] [2022-04-08 12:27:36,520 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1904358542] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:27:36,520 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:27:36,520 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 12:27:36,521 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:27:36,521 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [991439614] [2022-04-08 12:27:36,521 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [991439614] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:27:36,521 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:27:36,521 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:27:36,521 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2002956261] [2022-04-08 12:27:36,521 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:27:36,521 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 12:27:36,521 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:27:36,522 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 12:27:36,567 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 12:27:36,567 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:27:36,567 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:36,567 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:27:36,567 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 12:27:36,568 INFO L87 Difference]: Start difference. First operand 217 states and 300 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 12:27:37,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:37,478 INFO L93 Difference]: Finished difference Result 235 states and 314 transitions. [2022-04-08 12:27:37,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 12:27:37,478 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 12:27:37,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:27:37,479 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 12:27:37,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-08 12:27:37,479 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 12:27:37,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-08 12:27:37,480 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 60 transitions. [2022-04-08 12:27:37,536 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 12:27:37,540 INFO L225 Difference]: With dead ends: 235 [2022-04-08 12:27:37,540 INFO L226 Difference]: Without dead ends: 232 [2022-04-08 12:27:37,540 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 12:27:37,541 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 17 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:27:37,541 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.1s Time] [2022-04-08 12:27:37,541 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 232 states. [2022-04-08 12:27:38,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 232 to 231. [2022-04-08 12:27:38,070 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:27:38,071 INFO L82 GeneralOperation]: Start isEquivalent. First operand 232 states. Second operand has 231 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 125 states have internal predecessors, (141), 85 states have call successors, (85), 22 states have call predecessors, (85), 21 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 12:27:38,071 INFO L74 IsIncluded]: Start isIncluded. First operand 232 states. Second operand has 231 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 125 states have internal predecessors, (141), 85 states have call successors, (85), 22 states have call predecessors, (85), 21 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 12:27:38,071 INFO L87 Difference]: Start difference. First operand 232 states. Second operand has 231 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 125 states have internal predecessors, (141), 85 states have call successors, (85), 22 states have call predecessors, (85), 21 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 12:27:38,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:38,076 INFO L93 Difference]: Finished difference Result 232 states and 310 transitions. [2022-04-08 12:27:38,076 INFO L276 IsEmpty]: Start isEmpty. Operand 232 states and 310 transitions. [2022-04-08 12:27:38,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:38,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:38,077 INFO L74 IsIncluded]: Start isIncluded. First operand has 231 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 125 states have internal predecessors, (141), 85 states have call successors, (85), 22 states have call predecessors, (85), 21 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 232 states. [2022-04-08 12:27:38,077 INFO L87 Difference]: Start difference. First operand has 231 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 125 states have internal predecessors, (141), 85 states have call successors, (85), 22 states have call predecessors, (85), 21 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 232 states. [2022-04-08 12:27:38,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:38,084 INFO L93 Difference]: Finished difference Result 232 states and 310 transitions. [2022-04-08 12:27:38,084 INFO L276 IsEmpty]: Start isEmpty. Operand 232 states and 310 transitions. [2022-04-08 12:27:38,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:38,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:38,085 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:27:38,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:27:38,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 231 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 125 states have internal predecessors, (141), 85 states have call successors, (85), 22 states have call predecessors, (85), 21 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-08 12:27:38,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 231 states to 231 states and 309 transitions. [2022-04-08 12:27:38,090 INFO L78 Accepts]: Start accepts. Automaton has 231 states and 309 transitions. Word has length 122 [2022-04-08 12:27:38,090 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:27:38,090 INFO L478 AbstractCegarLoop]: Abstraction has 231 states and 309 transitions. [2022-04-08 12:27:38,090 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 12:27:38,090 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 231 states and 309 transitions. [2022-04-08 12:27:38,772 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 309 edges. 309 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:27:38,772 INFO L276 IsEmpty]: Start isEmpty. Operand 231 states and 309 transitions. [2022-04-08 12:27:38,781 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2022-04-08 12:27:38,781 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:27:38,781 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 12:27:38,804 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 12:27:38,983 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 12:27:38,985 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:27:38,986 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:27:38,986 INFO L85 PathProgramCache]: Analyzing trace with hash 541794983, now seen corresponding path program 5 times [2022-04-08 12:27:38,986 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:38,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [788135353] [2022-04-08 12:27:38,986 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:27:38,986 INFO L85 PathProgramCache]: Analyzing trace with hash 541794983, now seen corresponding path program 6 times [2022-04-08 12:27:38,986 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:27:38,987 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1859911250] [2022-04-08 12:27:38,987 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:27:38,987 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:27:38,997 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:27:38,997 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [788149534] [2022-04-08 12:27:38,997 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:27:38,997 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:27:38,998 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:27:38,998 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 12:27:38,999 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 12:27:39,082 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 12:27:39,082 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:27:39,084 INFO L263 TraceCheckSpWp]: Trace formula consists of 277 conjuncts, 51 conjunts are in the unsatisfiable core [2022-04-08 12:27:39,110 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:27:39,112 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:27:40,297 INFO L272 TraceCheckUtils]: 0: Hoare triple {18925#true} call ULTIMATE.init(); {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L290 TraceCheckUtils]: 1: Hoare triple {18925#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); {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L290 TraceCheckUtils]: 2: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18925#true} {18925#true} #103#return; {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L272 TraceCheckUtils]: 4: Hoare triple {18925#true} call #t~ret6 := main(); {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L290 TraceCheckUtils]: 5: Hoare triple {18925#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; {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L272 TraceCheckUtils]: 6: Hoare triple {18925#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L290 TraceCheckUtils]: 7: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L290 TraceCheckUtils]: 8: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L290 TraceCheckUtils]: 9: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18925#true} {18925#true} #79#return; {18925#true} is VALID [2022-04-08 12:27:40,298 INFO L290 TraceCheckUtils]: 11: Hoare triple {18925#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L272 TraceCheckUtils]: 12: Hoare triple {18925#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 15: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {18925#true} {18925#true} #81#return; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L272 TraceCheckUtils]: 17: Hoare triple {18925#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 18: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 19: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 20: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18925#true} {18925#true} #83#return; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L272 TraceCheckUtils]: 22: Hoare triple {18925#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 23: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,299 INFO L290 TraceCheckUtils]: 24: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,300 INFO L290 TraceCheckUtils]: 25: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,300 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18925#true} {18925#true} #85#return; {18925#true} is VALID [2022-04-08 12:27:40,300 INFO L290 TraceCheckUtils]: 27: Hoare triple {18925#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; {19011#(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 12:27:40,300 INFO L272 TraceCheckUtils]: 28: Hoare triple {19011#(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)); {18925#true} is VALID [2022-04-08 12:27:40,300 INFO L290 TraceCheckUtils]: 29: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,300 INFO L290 TraceCheckUtils]: 30: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,300 INFO L290 TraceCheckUtils]: 31: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,302 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {18925#true} {19011#(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; {19011#(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 12:27:40,302 INFO L272 TraceCheckUtils]: 33: Hoare triple {19011#(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)); {18925#true} is VALID [2022-04-08 12:27:40,303 INFO L290 TraceCheckUtils]: 34: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,303 INFO L290 TraceCheckUtils]: 35: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,303 INFO L290 TraceCheckUtils]: 36: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,303 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18925#true} {19011#(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; {19011#(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 12:27:40,304 INFO L290 TraceCheckUtils]: 38: Hoare triple {19011#(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; {19011#(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 12:27:40,304 INFO L290 TraceCheckUtils]: 39: Hoare triple {19011#(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; {19048#(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 12:27:40,304 INFO L290 TraceCheckUtils]: 40: Hoare triple {19048#(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; {19048#(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 12:27:40,305 INFO L272 TraceCheckUtils]: 41: Hoare triple {19048#(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)); {18925#true} is VALID [2022-04-08 12:27:40,305 INFO L290 TraceCheckUtils]: 42: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,305 INFO L290 TraceCheckUtils]: 43: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,305 INFO L290 TraceCheckUtils]: 44: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,305 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {18925#true} {19048#(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; {19048#(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 12:27:40,305 INFO L272 TraceCheckUtils]: 46: Hoare triple {19048#(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)); {18925#true} is VALID [2022-04-08 12:27:40,306 INFO L290 TraceCheckUtils]: 47: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,306 INFO L290 TraceCheckUtils]: 48: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,306 INFO L290 TraceCheckUtils]: 49: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,306 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {18925#true} {19048#(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; {19048#(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 12:27:40,306 INFO L272 TraceCheckUtils]: 51: Hoare triple {19048#(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)); {18925#true} is VALID [2022-04-08 12:27:40,306 INFO L290 TraceCheckUtils]: 52: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,307 INFO L290 TraceCheckUtils]: 53: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,307 INFO L290 TraceCheckUtils]: 54: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,307 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18925#true} {19048#(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; {19048#(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 12:27:40,307 INFO L272 TraceCheckUtils]: 56: Hoare triple {19048#(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)); {18925#true} is VALID [2022-04-08 12:27:40,307 INFO L290 TraceCheckUtils]: 57: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,307 INFO L290 TraceCheckUtils]: 58: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,308 INFO L290 TraceCheckUtils]: 59: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,308 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18925#true} {19048#(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; {19048#(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 12:27:40,309 INFO L290 TraceCheckUtils]: 61: Hoare triple {19048#(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); {19115#(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 12:27:40,309 INFO L290 TraceCheckUtils]: 62: Hoare triple {19115#(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; {19119#(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 12:27:40,310 INFO L290 TraceCheckUtils]: 63: Hoare triple {19119#(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; {19119#(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 12:27:40,310 INFO L290 TraceCheckUtils]: 64: Hoare triple {19119#(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; {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,310 INFO L290 TraceCheckUtils]: 65: Hoare triple {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,310 INFO L272 TraceCheckUtils]: 66: Hoare triple {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,310 INFO L290 TraceCheckUtils]: 67: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,311 INFO L290 TraceCheckUtils]: 68: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,311 INFO L290 TraceCheckUtils]: 69: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,311 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {18925#true} {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #91#return; {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,311 INFO L272 TraceCheckUtils]: 71: Hoare triple {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,311 INFO L290 TraceCheckUtils]: 72: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,312 INFO L290 TraceCheckUtils]: 73: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,312 INFO L290 TraceCheckUtils]: 74: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,312 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {18925#true} {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #93#return; {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,312 INFO L272 TraceCheckUtils]: 76: Hoare triple {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,312 INFO L290 TraceCheckUtils]: 77: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,312 INFO L290 TraceCheckUtils]: 78: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,313 INFO L290 TraceCheckUtils]: 79: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,313 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18925#true} {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #95#return; {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,313 INFO L272 TraceCheckUtils]: 81: Hoare triple {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~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)); {18925#true} is VALID [2022-04-08 12:27:40,313 INFO L290 TraceCheckUtils]: 82: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,313 INFO L290 TraceCheckUtils]: 83: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,313 INFO L290 TraceCheckUtils]: 84: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,314 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {18925#true} {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #97#return; {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,315 INFO L290 TraceCheckUtils]: 86: Hoare triple {19126#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,315 INFO L290 TraceCheckUtils]: 87: Hoare triple {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} assume !false; {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,315 INFO L272 TraceCheckUtils]: 88: Hoare triple {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,315 INFO L290 TraceCheckUtils]: 89: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,315 INFO L290 TraceCheckUtils]: 90: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,315 INFO L290 TraceCheckUtils]: 91: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,316 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18925#true} {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #91#return; {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,316 INFO L272 TraceCheckUtils]: 93: Hoare triple {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,316 INFO L290 TraceCheckUtils]: 94: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,316 INFO L290 TraceCheckUtils]: 95: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,316 INFO L290 TraceCheckUtils]: 96: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,317 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {18925#true} {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #93#return; {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,317 INFO L272 TraceCheckUtils]: 98: Hoare triple {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,317 INFO L290 TraceCheckUtils]: 99: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,317 INFO L290 TraceCheckUtils]: 100: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,317 INFO L290 TraceCheckUtils]: 101: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,318 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {18925#true} {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #95#return; {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,318 INFO L272 TraceCheckUtils]: 103: Hoare triple {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~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)); {18925#true} is VALID [2022-04-08 12:27:40,318 INFO L290 TraceCheckUtils]: 104: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,318 INFO L290 TraceCheckUtils]: 105: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,318 INFO L290 TraceCheckUtils]: 106: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,319 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {18925#true} {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #97#return; {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,320 INFO L290 TraceCheckUtils]: 108: Hoare triple {19193#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {19260#(and (= main_~x~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (not (<= main_~y~0 (* main_~c~0 2))) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-08 12:27:40,321 INFO L290 TraceCheckUtils]: 109: Hoare triple {19260#(and (= main_~x~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (not (<= main_~y~0 (* main_~c~0 2))) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~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; {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-08 12:27:40,321 INFO L290 TraceCheckUtils]: 110: Hoare triple {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !false; {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-08 12:27:40,321 INFO L290 TraceCheckUtils]: 111: Hoare triple {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-08 12:27:40,322 INFO L290 TraceCheckUtils]: 112: Hoare triple {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !false; {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-08 12:27:40,322 INFO L272 TraceCheckUtils]: 113: Hoare triple {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,322 INFO L290 TraceCheckUtils]: 114: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,322 INFO L290 TraceCheckUtils]: 115: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,322 INFO L290 TraceCheckUtils]: 116: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,323 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {18925#true} {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #91#return; {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-08 12:27:40,324 INFO L272 TraceCheckUtils]: 118: Hoare triple {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:40,324 INFO L290 TraceCheckUtils]: 119: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:40,324 INFO L290 TraceCheckUtils]: 120: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:40,324 INFO L290 TraceCheckUtils]: 121: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:40,325 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {18925#true} {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #93#return; {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-08 12:27:40,325 INFO L272 TraceCheckUtils]: 123: Hoare triple {19264#(and (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {19307#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:27:40,326 INFO L290 TraceCheckUtils]: 124: Hoare triple {19307#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19311#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:40,326 INFO L290 TraceCheckUtils]: 125: Hoare triple {19311#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18926#false} is VALID [2022-04-08 12:27:40,326 INFO L290 TraceCheckUtils]: 126: Hoare triple {18926#false} assume !false; {18926#false} is VALID [2022-04-08 12:27:40,327 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 28 proven. 37 refuted. 0 times theorem prover too weak. 424 trivial. 0 not checked. [2022-04-08 12:27:40,327 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:27:42,184 INFO L290 TraceCheckUtils]: 126: Hoare triple {18926#false} assume !false; {18926#false} is VALID [2022-04-08 12:27:42,185 INFO L290 TraceCheckUtils]: 125: Hoare triple {19311#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18926#false} is VALID [2022-04-08 12:27:42,187 INFO L290 TraceCheckUtils]: 124: Hoare triple {19307#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19311#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:42,188 INFO L272 TraceCheckUtils]: 123: Hoare triple {19327#(= 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)); {19307#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:27:42,189 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {18925#true} {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #93#return; {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:42,189 INFO L290 TraceCheckUtils]: 121: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:42,189 INFO L290 TraceCheckUtils]: 120: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:42,189 INFO L290 TraceCheckUtils]: 119: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:42,189 INFO L272 TraceCheckUtils]: 118: Hoare triple {19327#(= 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)); {18925#true} is VALID [2022-04-08 12:27:42,190 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {18925#true} {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #91#return; {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:42,190 INFO L290 TraceCheckUtils]: 116: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:42,190 INFO L290 TraceCheckUtils]: 115: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:42,190 INFO L290 TraceCheckUtils]: 114: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:42,190 INFO L272 TraceCheckUtils]: 113: Hoare triple {19327#(= 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)); {18925#true} is VALID [2022-04-08 12:27:42,190 INFO L290 TraceCheckUtils]: 112: Hoare triple {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:42,191 INFO L290 TraceCheckUtils]: 111: Hoare triple {19327#(= 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; {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:42,191 INFO L290 TraceCheckUtils]: 110: Hoare triple {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:43,068 INFO L290 TraceCheckUtils]: 109: Hoare triple {19370#(= (+ (* (+ (* (* 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; {19327#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:27:43,069 INFO L290 TraceCheckUtils]: 108: Hoare triple {19374#(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))} assume !(~c~0 >= ~b~0); {19370#(= (+ (* (+ (* (* 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 12:27:43,070 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {18925#true} {19374#(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))} #97#return; {19374#(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))} is VALID [2022-04-08 12:27:43,070 INFO L290 TraceCheckUtils]: 106: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,070 INFO L290 TraceCheckUtils]: 105: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,070 INFO L290 TraceCheckUtils]: 104: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,070 INFO L272 TraceCheckUtils]: 103: Hoare triple {19374#(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))} 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)); {18925#true} is VALID [2022-04-08 12:27:43,071 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {18925#true} {19374#(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))} #95#return; {19374#(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))} is VALID [2022-04-08 12:27:43,071 INFO L290 TraceCheckUtils]: 101: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,071 INFO L290 TraceCheckUtils]: 100: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,071 INFO L290 TraceCheckUtils]: 99: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,071 INFO L272 TraceCheckUtils]: 98: Hoare triple {19374#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,072 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {18925#true} {19374#(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))} #93#return; {19374#(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))} is VALID [2022-04-08 12:27:43,072 INFO L290 TraceCheckUtils]: 96: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,072 INFO L290 TraceCheckUtils]: 95: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,072 INFO L290 TraceCheckUtils]: 94: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,072 INFO L272 TraceCheckUtils]: 93: Hoare triple {19374#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,073 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18925#true} {19374#(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))} #91#return; {19374#(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))} is VALID [2022-04-08 12:27:43,073 INFO L290 TraceCheckUtils]: 91: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,073 INFO L290 TraceCheckUtils]: 90: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,073 INFO L290 TraceCheckUtils]: 89: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,073 INFO L272 TraceCheckUtils]: 88: Hoare triple {19374#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,073 INFO L290 TraceCheckUtils]: 87: Hoare triple {19374#(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))} assume !false; {19374#(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))} is VALID [2022-04-08 12:27:43,396 INFO L290 TraceCheckUtils]: 86: Hoare triple {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {19374#(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))} is VALID [2022-04-08 12:27:43,396 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {18925#true} {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} #97#return; {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} is VALID [2022-04-08 12:27:43,397 INFO L290 TraceCheckUtils]: 84: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,397 INFO L290 TraceCheckUtils]: 83: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,397 INFO L290 TraceCheckUtils]: 82: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,397 INFO L272 TraceCheckUtils]: 81: Hoare triple {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} 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)); {18925#true} is VALID [2022-04-08 12:27:43,397 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18925#true} {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} #95#return; {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} is VALID [2022-04-08 12:27:43,398 INFO L290 TraceCheckUtils]: 79: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,398 INFO L290 TraceCheckUtils]: 78: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,398 INFO L290 TraceCheckUtils]: 77: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,398 INFO L272 TraceCheckUtils]: 76: Hoare triple {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,398 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {18925#true} {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} #93#return; {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} is VALID [2022-04-08 12:27:43,399 INFO L290 TraceCheckUtils]: 74: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,399 INFO L290 TraceCheckUtils]: 73: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,399 INFO L290 TraceCheckUtils]: 72: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,399 INFO L272 TraceCheckUtils]: 71: Hoare triple {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,399 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {18925#true} {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} #91#return; {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} is VALID [2022-04-08 12:27:43,400 INFO L290 TraceCheckUtils]: 69: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,400 INFO L290 TraceCheckUtils]: 68: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,400 INFO L290 TraceCheckUtils]: 67: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,400 INFO L272 TraceCheckUtils]: 66: Hoare triple {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,400 INFO L290 TraceCheckUtils]: 65: Hoare triple {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} assume !false; {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} is VALID [2022-04-08 12:27:43,401 INFO L290 TraceCheckUtils]: 64: Hoare triple {19508#(or (= (+ 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; {19441#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))))} is VALID [2022-04-08 12:27:43,401 INFO L290 TraceCheckUtils]: 63: Hoare triple {19508#(or (= (+ 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; {19508#(or (= (+ 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 12:27:43,602 INFO L290 TraceCheckUtils]: 62: Hoare triple {19515#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {19508#(or (= (+ 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 12:27:43,603 INFO L290 TraceCheckUtils]: 61: Hoare triple {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {19515#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)))} is VALID [2022-04-08 12:27:43,604 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18925#true} {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} #97#return; {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:43,604 INFO L290 TraceCheckUtils]: 59: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,604 INFO L290 TraceCheckUtils]: 58: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,604 INFO L290 TraceCheckUtils]: 57: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,604 INFO L272 TraceCheckUtils]: 56: Hoare triple {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~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)); {18925#true} is VALID [2022-04-08 12:27:43,605 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18925#true} {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} #95#return; {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:43,605 INFO L290 TraceCheckUtils]: 54: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,605 INFO L290 TraceCheckUtils]: 53: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,605 INFO L290 TraceCheckUtils]: 52: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,605 INFO L272 TraceCheckUtils]: 51: Hoare triple {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~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)); {18925#true} is VALID [2022-04-08 12:27:43,606 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {18925#true} {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} #93#return; {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:43,606 INFO L290 TraceCheckUtils]: 49: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,606 INFO L290 TraceCheckUtils]: 48: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,606 INFO L290 TraceCheckUtils]: 47: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,606 INFO L272 TraceCheckUtils]: 46: Hoare triple {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~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)); {18925#true} is VALID [2022-04-08 12:27:43,607 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {18925#true} {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} #91#return; {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:43,607 INFO L290 TraceCheckUtils]: 44: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,607 INFO L290 TraceCheckUtils]: 43: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,607 INFO L290 TraceCheckUtils]: 42: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,607 INFO L272 TraceCheckUtils]: 41: Hoare triple {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,608 INFO L290 TraceCheckUtils]: 40: Hoare triple {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} assume !false; {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:43,609 INFO L290 TraceCheckUtils]: 39: Hoare triple {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {19519#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* (- 1) main_~c~0) main_~b~0)) (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:27:43,609 INFO L290 TraceCheckUtils]: 38: Hoare triple {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} assume !false; {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 12:27:43,610 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18925#true} {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #89#return; {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 12:27:43,610 INFO L290 TraceCheckUtils]: 36: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,610 INFO L290 TraceCheckUtils]: 35: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,610 INFO L290 TraceCheckUtils]: 34: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,610 INFO L272 TraceCheckUtils]: 33: Hoare triple {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,611 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {18925#true} {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} #87#return; {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 12:27:43,611 INFO L290 TraceCheckUtils]: 31: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,611 INFO L290 TraceCheckUtils]: 30: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,611 INFO L290 TraceCheckUtils]: 29: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,611 INFO L272 TraceCheckUtils]: 28: Hoare triple {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L290 TraceCheckUtils]: 27: Hoare triple {18925#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; {19586#(or (<= main_~b~0 main_~a~0) (<= (* main_~a~0 2) main_~b~0) (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))) (+ (* (- 1) main_~a~0) main_~b~0)))} is VALID [2022-04-08 12:27:43,612 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18925#true} {18925#true} #85#return; {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L290 TraceCheckUtils]: 25: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L290 TraceCheckUtils]: 24: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L290 TraceCheckUtils]: 23: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L272 TraceCheckUtils]: 22: Hoare triple {18925#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18925#true} {18925#true} #83#return; {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L290 TraceCheckUtils]: 20: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L290 TraceCheckUtils]: 19: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L290 TraceCheckUtils]: 18: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,612 INFO L272 TraceCheckUtils]: 17: Hoare triple {18925#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {18925#true} {18925#true} #81#return; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 15: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 14: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 13: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L272 TraceCheckUtils]: 12: Hoare triple {18925#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 11: Hoare triple {18925#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18925#true} {18925#true} #79#return; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 9: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 8: Hoare triple {18925#true} assume !(0 == ~cond); {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 7: Hoare triple {18925#true} ~cond := #in~cond; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L272 TraceCheckUtils]: 6: Hoare triple {18925#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L290 TraceCheckUtils]: 5: Hoare triple {18925#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; {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L272 TraceCheckUtils]: 4: Hoare triple {18925#true} call #t~ret6 := main(); {18925#true} is VALID [2022-04-08 12:27:43,613 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18925#true} {18925#true} #103#return; {18925#true} is VALID [2022-04-08 12:27:43,614 INFO L290 TraceCheckUtils]: 2: Hoare triple {18925#true} assume true; {18925#true} is VALID [2022-04-08 12:27:43,614 INFO L290 TraceCheckUtils]: 1: Hoare triple {18925#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); {18925#true} is VALID [2022-04-08 12:27:43,614 INFO L272 TraceCheckUtils]: 0: Hoare triple {18925#true} call ULTIMATE.init(); {18925#true} is VALID [2022-04-08 12:27:43,614 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 36 proven. 29 refuted. 0 times theorem prover too weak. 424 trivial. 0 not checked. [2022-04-08 12:27:43,614 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:27:43,615 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1859911250] [2022-04-08 12:27:43,615 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:27:43,615 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [788149534] [2022-04-08 12:27:43,615 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [788149534] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:27:43,615 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:27:43,615 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 20 [2022-04-08 12:27:43,615 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:27:43,615 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [788135353] [2022-04-08 12:27:43,615 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [788135353] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:27:43,615 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:27:43,615 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 12:27:43,615 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [106156748] [2022-04-08 12:27:43,615 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:27:43,617 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (21), 6 states have call predecessors, (21), 6 states have call successors, (21) Word has length 127 [2022-04-08 12:27:43,617 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:27:43,617 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (21), 6 states have call predecessors, (21), 6 states have call successors, (21) [2022-04-08 12:27:43,705 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:27:43,705 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 12:27:43,705 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:43,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 12:27:43,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=305, Unknown=0, NotChecked=0, Total=380 [2022-04-08 12:27:43,706 INFO L87 Difference]: Start difference. First operand 231 states and 309 transitions. Second operand has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (21), 6 states have call predecessors, (21), 6 states have call successors, (21) [2022-04-08 12:27:46,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:46,867 INFO L93 Difference]: Finished difference Result 269 states and 358 transitions. [2022-04-08 12:27:46,867 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 12:27:46,867 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (21), 6 states have call predecessors, (21), 6 states have call successors, (21) Word has length 127 [2022-04-08 12:27:46,867 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:27:46,868 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (21), 6 states have call predecessors, (21), 6 states have call successors, (21) [2022-04-08 12:27:46,869 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 125 transitions. [2022-04-08 12:27:46,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (21), 6 states have call predecessors, (21), 6 states have call successors, (21) [2022-04-08 12:27:46,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 125 transitions. [2022-04-08 12:27:46,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 125 transitions. [2022-04-08 12:27:47,023 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 12:27:47,028 INFO L225 Difference]: With dead ends: 269 [2022-04-08 12:27:47,028 INFO L226 Difference]: Without dead ends: 267 [2022-04-08 12:27:47,028 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 259 GetRequests, 234 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=143, Invalid=507, Unknown=0, NotChecked=0, Total=650 [2022-04-08 12:27:47,029 INFO L913 BasicCegarLoop]: 65 mSDtfsCounter, 22 mSDsluCounter, 286 mSDsCounter, 0 mSdLazyCounter, 528 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 351 SdHoareTripleChecker+Invalid, 556 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 528 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-08 12:27:47,029 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 351 Invalid, 556 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 528 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-08 12:27:47,029 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 267 states. [2022-04-08 12:27:47,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 267 to 264. [2022-04-08 12:27:47,658 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:27:47,658 INFO L82 GeneralOperation]: Start isEquivalent. First operand 267 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 12:27:47,659 INFO L74 IsIncluded]: Start isIncluded. First operand 267 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 12:27:47,659 INFO L87 Difference]: Start difference. First operand 267 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 12:27:47,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:47,664 INFO L93 Difference]: Finished difference Result 267 states and 356 transitions. [2022-04-08 12:27:47,664 INFO L276 IsEmpty]: Start isEmpty. Operand 267 states and 356 transitions. [2022-04-08 12:27:47,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:47,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:47,665 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 267 states. [2022-04-08 12:27:47,665 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 267 states. [2022-04-08 12:27:47,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:27:47,670 INFO L93 Difference]: Finished difference Result 267 states and 356 transitions. [2022-04-08 12:27:47,670 INFO L276 IsEmpty]: Start isEmpty. Operand 267 states and 356 transitions. [2022-04-08 12:27:47,671 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:27:47,671 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:27:47,671 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:27:47,671 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:27:47,671 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 12:27:47,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 264 states to 264 states and 353 transitions. [2022-04-08 12:27:47,677 INFO L78 Accepts]: Start accepts. Automaton has 264 states and 353 transitions. Word has length 127 [2022-04-08 12:27:47,677 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:27:47,677 INFO L478 AbstractCegarLoop]: Abstraction has 264 states and 353 transitions. [2022-04-08 12:27:47,677 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (23), 2 states have call predecessors, (23), 1 states have return successors, (21), 6 states have call predecessors, (21), 6 states have call successors, (21) [2022-04-08 12:27:47,677 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 264 states and 353 transitions. [2022-04-08 12:27:48,392 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 12:27:48,392 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 353 transitions. [2022-04-08 12:27:48,393 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 130 [2022-04-08 12:27:48,393 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:27:48,393 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 12:27:48,412 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 12:27:48,594 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 12:27:48,594 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:27:48,594 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:27:48,595 INFO L85 PathProgramCache]: Analyzing trace with hash -2138166692, now seen corresponding path program 7 times [2022-04-08 12:27:48,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:27:48,595 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1444480670] [2022-04-08 12:27:48,595 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:27:48,595 INFO L85 PathProgramCache]: Analyzing trace with hash -2138166692, now seen corresponding path program 8 times [2022-04-08 12:27:48,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:27:48,595 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [728641850] [2022-04-08 12:27:48,595 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:27:48,595 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:27:48,608 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:27:48,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1207285850] [2022-04-08 12:27:48,608 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:27:48,608 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:27:48,608 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:27:48,620 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 12:27:48,622 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 12:27:48,688 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:27:48,689 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:27:48,691 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-08 12:27:48,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:27:48,720 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:27:49,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {21318#true} call ULTIMATE.init(); {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {21318#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); {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21318#true} {21318#true} #103#return; {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L272 TraceCheckUtils]: 4: Hoare triple {21318#true} call #t~ret6 := main(); {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L290 TraceCheckUtils]: 5: Hoare triple {21318#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; {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L272 TraceCheckUtils]: 6: Hoare triple {21318#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L290 TraceCheckUtils]: 7: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L290 TraceCheckUtils]: 8: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L290 TraceCheckUtils]: 9: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,785 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21318#true} {21318#true} #79#return; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 11: Hoare triple {21318#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L272 TraceCheckUtils]: 12: Hoare triple {21318#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 13: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 14: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 15: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {21318#true} {21318#true} #81#return; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L272 TraceCheckUtils]: 17: Hoare triple {21318#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 18: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 19: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 20: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21318#true} {21318#true} #83#return; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L272 TraceCheckUtils]: 22: Hoare triple {21318#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 23: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,786 INFO L290 TraceCheckUtils]: 24: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,787 INFO L290 TraceCheckUtils]: 25: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,787 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {21318#true} {21318#true} #85#return; {21318#true} is VALID [2022-04-08 12:27:49,787 INFO L290 TraceCheckUtils]: 27: Hoare triple {21318#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; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,787 INFO L272 TraceCheckUtils]: 28: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,787 INFO L290 TraceCheckUtils]: 29: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,787 INFO L290 TraceCheckUtils]: 30: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,787 INFO L290 TraceCheckUtils]: 31: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,788 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,788 INFO L272 TraceCheckUtils]: 33: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,788 INFO L290 TraceCheckUtils]: 34: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,788 INFO L290 TraceCheckUtils]: 35: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,788 INFO L290 TraceCheckUtils]: 36: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,789 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,790 INFO L290 TraceCheckUtils]: 38: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,790 INFO L290 TraceCheckUtils]: 39: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,790 INFO L290 TraceCheckUtils]: 40: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,790 INFO L272 TraceCheckUtils]: 41: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,791 INFO L290 TraceCheckUtils]: 42: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,791 INFO L290 TraceCheckUtils]: 43: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,791 INFO L290 TraceCheckUtils]: 44: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,791 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,792 INFO L272 TraceCheckUtils]: 46: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,792 INFO L290 TraceCheckUtils]: 47: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,792 INFO L290 TraceCheckUtils]: 48: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,792 INFO L290 TraceCheckUtils]: 49: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,792 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,792 INFO L272 TraceCheckUtils]: 51: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,793 INFO L290 TraceCheckUtils]: 52: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,793 INFO L290 TraceCheckUtils]: 53: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,793 INFO L290 TraceCheckUtils]: 54: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,793 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,793 INFO L272 TraceCheckUtils]: 56: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __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)); {21318#true} is VALID [2022-04-08 12:27:49,793 INFO L290 TraceCheckUtils]: 57: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,794 INFO L290 TraceCheckUtils]: 58: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,794 INFO L290 TraceCheckUtils]: 59: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,794 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,795 INFO L290 TraceCheckUtils]: 61: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,795 INFO L290 TraceCheckUtils]: 62: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,795 INFO L272 TraceCheckUtils]: 63: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,795 INFO L290 TraceCheckUtils]: 64: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,795 INFO L290 TraceCheckUtils]: 65: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,795 INFO L290 TraceCheckUtils]: 66: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,796 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,796 INFO L272 TraceCheckUtils]: 68: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,796 INFO L290 TraceCheckUtils]: 69: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,796 INFO L290 TraceCheckUtils]: 70: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,797 INFO L290 TraceCheckUtils]: 71: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,797 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,797 INFO L272 TraceCheckUtils]: 73: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,797 INFO L290 TraceCheckUtils]: 74: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,797 INFO L290 TraceCheckUtils]: 75: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,797 INFO L290 TraceCheckUtils]: 76: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,798 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,798 INFO L272 TraceCheckUtils]: 78: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __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)); {21318#true} is VALID [2022-04-08 12:27:49,798 INFO L290 TraceCheckUtils]: 79: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,798 INFO L290 TraceCheckUtils]: 80: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,798 INFO L290 TraceCheckUtils]: 81: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,799 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {21318#true} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,799 INFO L290 TraceCheckUtils]: 83: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,800 INFO L290 TraceCheckUtils]: 84: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:27:49,800 INFO L272 TraceCheckUtils]: 85: Hoare triple {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,800 INFO L290 TraceCheckUtils]: 86: Hoare triple {21318#true} ~cond := #in~cond; {21582#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:49,800 INFO L290 TraceCheckUtils]: 87: Hoare triple {21582#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:49,801 INFO L290 TraceCheckUtils]: 88: Hoare triple {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:49,801 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} {21404#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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 12:27:49,801 INFO L272 TraceCheckUtils]: 90: Hoare triple {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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)); {21318#true} is VALID [2022-04-08 12:27:49,802 INFO L290 TraceCheckUtils]: 91: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,802 INFO L290 TraceCheckUtils]: 92: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,802 INFO L290 TraceCheckUtils]: 93: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,802 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {21318#true} {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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; {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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 12:27:49,802 INFO L272 TraceCheckUtils]: 95: Hoare triple {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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)); {21318#true} is VALID [2022-04-08 12:27:49,802 INFO L290 TraceCheckUtils]: 96: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,802 INFO L290 TraceCheckUtils]: 97: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,803 INFO L290 TraceCheckUtils]: 98: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,803 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {21318#true} {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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; {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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 12:27:49,803 INFO L272 TraceCheckUtils]: 100: Hoare triple {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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)); {21318#true} is VALID [2022-04-08 12:27:49,803 INFO L290 TraceCheckUtils]: 101: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,803 INFO L290 TraceCheckUtils]: 102: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,803 INFO L290 TraceCheckUtils]: 103: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,804 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {21318#true} {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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; {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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 12:27:49,804 INFO L290 TraceCheckUtils]: 105: Hoare triple {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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); {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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 12:27:49,807 INFO L290 TraceCheckUtils]: 106: Hoare triple {21593#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~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))} ~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; {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:27:49,807 INFO L290 TraceCheckUtils]: 107: Hoare triple {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:27:49,808 INFO L290 TraceCheckUtils]: 108: Hoare triple {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:27:49,808 INFO L290 TraceCheckUtils]: 109: Hoare triple {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:27:49,808 INFO L272 TraceCheckUtils]: 110: Hoare triple {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,808 INFO L290 TraceCheckUtils]: 111: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,808 INFO L290 TraceCheckUtils]: 112: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,808 INFO L290 TraceCheckUtils]: 113: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,809 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {21318#true} {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:27:49,809 INFO L272 TraceCheckUtils]: 115: Hoare triple {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,809 INFO L290 TraceCheckUtils]: 116: Hoare triple {21318#true} ~cond := #in~cond; {21318#true} is VALID [2022-04-08 12:27:49,809 INFO L290 TraceCheckUtils]: 117: Hoare triple {21318#true} assume !(0 == ~cond); {21318#true} is VALID [2022-04-08 12:27:49,809 INFO L290 TraceCheckUtils]: 118: Hoare triple {21318#true} assume true; {21318#true} is VALID [2022-04-08 12:27:49,810 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {21318#true} {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:27:49,810 INFO L272 TraceCheckUtils]: 120: Hoare triple {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21318#true} is VALID [2022-04-08 12:27:49,810 INFO L290 TraceCheckUtils]: 121: Hoare triple {21318#true} ~cond := #in~cond; {21582#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:49,810 INFO L290 TraceCheckUtils]: 122: Hoare triple {21582#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:49,811 INFO L290 TraceCheckUtils]: 123: Hoare triple {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:27:49,811 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {21586#(not (= |__VERIFIER_assert_#in~cond| 0))} {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:27:49,814 INFO L272 TraceCheckUtils]: 125: Hoare triple {21645#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21703#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:27:49,815 INFO L290 TraceCheckUtils]: 126: Hoare triple {21703#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {21707#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:27:49,815 INFO L290 TraceCheckUtils]: 127: Hoare triple {21707#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21319#false} is VALID [2022-04-08 12:27:49,815 INFO L290 TraceCheckUtils]: 128: Hoare triple {21319#false} assume !false; {21319#false} is VALID [2022-04-08 12:27:49,816 INFO L134 CoverageAnalysis]: Checked inductivity of 545 backedges. 91 proven. 42 refuted. 0 times theorem prover too weak. 412 trivial. 0 not checked. [2022-04-08 12:27:49,816 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:28:38,752 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:28:38,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [728641850] [2022-04-08 12:28:38,753 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:28:38,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1207285850] [2022-04-08 12:28:38,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1207285850] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 12:28:38,753 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:28:38,753 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-08 12:28:38,753 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:28:38,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1444480670] [2022-04-08 12:28:38,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1444480670] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:28:38,753 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:28:38,754 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 12:28:38,754 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [87121262] [2022-04-08 12:28:38,754 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:28:38,754 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) Word has length 129 [2022-04-08 12:28:38,754 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:28:38,755 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-08 12:28:38,897 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 12:28:38,898 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 12:28:38,898 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:28:38,898 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 12:28:38,898 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=140, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:28:38,898 INFO L87 Difference]: Start difference. First operand 264 states and 353 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-08 12:28:40,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:28:40,966 INFO L93 Difference]: Finished difference Result 281 states and 367 transitions. [2022-04-08 12:28:40,967 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 12:28:40,967 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) Word has length 129 [2022-04-08 12:28:40,967 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:28:40,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-08 12:28:40,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-08 12:28:40,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-08 12:28:40,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-08 12:28:40,969 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 79 transitions. [2022-04-08 12:28:41,084 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:28:41,089 INFO L225 Difference]: With dead ends: 281 [2022-04-08 12:28:41,089 INFO L226 Difference]: Without dead ends: 279 [2022-04-08 12:28:41,090 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 155 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=63, Invalid=209, Unknown=0, NotChecked=0, Total=272 [2022-04-08 12:28:41,090 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 17 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 236 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 172 SdHoareTripleChecker+Invalid, 249 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 236 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 12:28:41,090 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 172 Invalid, 249 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 236 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-08 12:28:41,090 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 279 states. [2022-04-08 12:28:41,688 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 279 to 258. [2022-04-08 12:28:41,688 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:28:41,688 INFO L82 GeneralOperation]: Start isEquivalent. First operand 279 states. Second operand has 258 states, 143 states have (on average 1.118881118881119) internal successors, (160), 145 states have internal predecessors, (160), 88 states have call successors, (88), 27 states have call predecessors, (88), 26 states have return successors, (86), 85 states have call predecessors, (86), 86 states have call successors, (86) [2022-04-08 12:28:41,688 INFO L74 IsIncluded]: Start isIncluded. First operand 279 states. Second operand has 258 states, 143 states have (on average 1.118881118881119) internal successors, (160), 145 states have internal predecessors, (160), 88 states have call successors, (88), 27 states have call predecessors, (88), 26 states have return successors, (86), 85 states have call predecessors, (86), 86 states have call successors, (86) [2022-04-08 12:28:41,689 INFO L87 Difference]: Start difference. First operand 279 states. Second operand has 258 states, 143 states have (on average 1.118881118881119) internal successors, (160), 145 states have internal predecessors, (160), 88 states have call successors, (88), 27 states have call predecessors, (88), 26 states have return successors, (86), 85 states have call predecessors, (86), 86 states have call successors, (86) [2022-04-08 12:28:41,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:28:41,694 INFO L93 Difference]: Finished difference Result 279 states and 365 transitions. [2022-04-08 12:28:41,694 INFO L276 IsEmpty]: Start isEmpty. Operand 279 states and 365 transitions. [2022-04-08 12:28:41,695 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:28:41,695 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:28:41,695 INFO L74 IsIncluded]: Start isIncluded. First operand has 258 states, 143 states have (on average 1.118881118881119) internal successors, (160), 145 states have internal predecessors, (160), 88 states have call successors, (88), 27 states have call predecessors, (88), 26 states have return successors, (86), 85 states have call predecessors, (86), 86 states have call successors, (86) Second operand 279 states. [2022-04-08 12:28:41,696 INFO L87 Difference]: Start difference. First operand has 258 states, 143 states have (on average 1.118881118881119) internal successors, (160), 145 states have internal predecessors, (160), 88 states have call successors, (88), 27 states have call predecessors, (88), 26 states have return successors, (86), 85 states have call predecessors, (86), 86 states have call successors, (86) Second operand 279 states. [2022-04-08 12:28:41,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:28:41,700 INFO L93 Difference]: Finished difference Result 279 states and 365 transitions. [2022-04-08 12:28:41,700 INFO L276 IsEmpty]: Start isEmpty. Operand 279 states and 365 transitions. [2022-04-08 12:28:41,701 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:28:41,701 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:28:41,701 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:28:41,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:28:41,702 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 258 states, 143 states have (on average 1.118881118881119) internal successors, (160), 145 states have internal predecessors, (160), 88 states have call successors, (88), 27 states have call predecessors, (88), 26 states have return successors, (86), 85 states have call predecessors, (86), 86 states have call successors, (86) [2022-04-08 12:28:41,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 334 transitions. [2022-04-08 12:28:41,707 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 334 transitions. Word has length 129 [2022-04-08 12:28:41,707 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:28:41,707 INFO L478 AbstractCegarLoop]: Abstraction has 258 states and 334 transitions. [2022-04-08 12:28:41,707 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-08 12:28:41,708 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 258 states and 334 transitions. [2022-04-08 12:28:42,440 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 334 edges. 334 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:28:42,441 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 334 transitions. [2022-04-08 12:28:42,451 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2022-04-08 12:28:42,451 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:28:42,452 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 12:28:42,468 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Ended with exit code 0 [2022-04-08 12:28:42,652 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 12:28:42,652 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:28:42,652 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:28:42,652 INFO L85 PathProgramCache]: Analyzing trace with hash -1899875875, now seen corresponding path program 9 times [2022-04-08 12:28:42,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:28:42,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1495024355] [2022-04-08 12:28:42,653 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:28:42,653 INFO L85 PathProgramCache]: Analyzing trace with hash -1899875875, now seen corresponding path program 10 times [2022-04-08 12:28:42,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:28:42,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1215632022] [2022-04-08 12:28:42,653 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:28:42,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:28:42,663 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:28:42,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1323372959] [2022-04-08 12:28:42,664 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:28:42,664 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:28:42,664 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:28:42,665 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 12:28:42,672 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 12:28:42,739 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:28:42,740 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:28:42,741 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 76 conjunts are in the unsatisfiable core [2022-04-08 12:28:42,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:28:42,778 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:29:05,530 WARN L232 SmtUtils]: Spent 6.02s on a formula simplification that was a NOOP. DAG size: 26 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-08 12:29:05,605 INFO L272 TraceCheckUtils]: 0: Hoare triple {23480#true} call ULTIMATE.init(); {23480#true} is VALID [2022-04-08 12:29:05,605 INFO L290 TraceCheckUtils]: 1: Hoare triple {23480#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); {23480#true} is VALID [2022-04-08 12:29:05,605 INFO L290 TraceCheckUtils]: 2: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,605 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23480#true} {23480#true} #103#return; {23480#true} is VALID [2022-04-08 12:29:05,605 INFO L272 TraceCheckUtils]: 4: Hoare triple {23480#true} call #t~ret6 := main(); {23480#true} is VALID [2022-04-08 12:29:05,605 INFO L290 TraceCheckUtils]: 5: Hoare triple {23480#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; {23480#true} is VALID [2022-04-08 12:29:05,605 INFO L272 TraceCheckUtils]: 6: Hoare triple {23480#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,605 INFO L290 TraceCheckUtils]: 7: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 8: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 9: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23480#true} {23480#true} #79#return; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 11: Hoare triple {23480#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L272 TraceCheckUtils]: 12: Hoare triple {23480#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 13: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 14: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 15: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23480#true} {23480#true} #81#return; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L272 TraceCheckUtils]: 17: Hoare triple {23480#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 18: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 19: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L290 TraceCheckUtils]: 20: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,606 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23480#true} {23480#true} #83#return; {23480#true} is VALID [2022-04-08 12:29:05,607 INFO L272 TraceCheckUtils]: 22: Hoare triple {23480#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,607 INFO L290 TraceCheckUtils]: 23: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,607 INFO L290 TraceCheckUtils]: 24: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,607 INFO L290 TraceCheckUtils]: 25: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,607 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23480#true} {23480#true} #85#return; {23480#true} is VALID [2022-04-08 12:29:05,607 INFO L290 TraceCheckUtils]: 27: Hoare triple {23480#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; {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,607 INFO L272 TraceCheckUtils]: 28: Hoare triple {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,607 INFO L290 TraceCheckUtils]: 29: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,608 INFO L290 TraceCheckUtils]: 30: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,608 INFO L290 TraceCheckUtils]: 31: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,608 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {23480#true} {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,608 INFO L272 TraceCheckUtils]: 33: Hoare triple {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,608 INFO L290 TraceCheckUtils]: 34: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,608 INFO L290 TraceCheckUtils]: 35: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,609 INFO L290 TraceCheckUtils]: 36: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,609 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23480#true} {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,610 INFO L290 TraceCheckUtils]: 38: Hoare triple {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,610 INFO L290 TraceCheckUtils]: 39: Hoare triple {23566#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,610 INFO L290 TraceCheckUtils]: 40: Hoare triple {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,611 INFO L272 TraceCheckUtils]: 41: Hoare triple {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,611 INFO L290 TraceCheckUtils]: 42: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,611 INFO L290 TraceCheckUtils]: 43: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,611 INFO L290 TraceCheckUtils]: 44: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,611 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {23480#true} {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,612 INFO L272 TraceCheckUtils]: 46: Hoare triple {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,612 INFO L290 TraceCheckUtils]: 47: Hoare triple {23480#true} ~cond := #in~cond; {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:05,612 INFO L290 TraceCheckUtils]: 48: Hoare triple {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:05,612 INFO L290 TraceCheckUtils]: 49: Hoare triple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:05,613 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} {23603#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,613 INFO L272 TraceCheckUtils]: 51: Hoare triple {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,614 INFO L290 TraceCheckUtils]: 52: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,614 INFO L290 TraceCheckUtils]: 53: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,614 INFO L290 TraceCheckUtils]: 54: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,614 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {23480#true} {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,614 INFO L272 TraceCheckUtils]: 56: Hoare triple {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,615 INFO L290 TraceCheckUtils]: 57: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,615 INFO L290 TraceCheckUtils]: 58: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,615 INFO L290 TraceCheckUtils]: 59: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,615 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {23480#true} {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,616 INFO L290 TraceCheckUtils]: 61: Hoare triple {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:05,616 INFO L290 TraceCheckUtils]: 62: Hoare triple {23639#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,617 INFO L290 TraceCheckUtils]: 63: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,617 INFO L290 TraceCheckUtils]: 64: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,618 INFO L290 TraceCheckUtils]: 65: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,618 INFO L272 TraceCheckUtils]: 66: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,618 INFO L290 TraceCheckUtils]: 67: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,618 INFO L290 TraceCheckUtils]: 68: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,618 INFO L290 TraceCheckUtils]: 69: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,619 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {23480#true} {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,619 INFO L272 TraceCheckUtils]: 71: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,619 INFO L290 TraceCheckUtils]: 72: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,619 INFO L290 TraceCheckUtils]: 73: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,619 INFO L290 TraceCheckUtils]: 74: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,619 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {23480#true} {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,620 INFO L272 TraceCheckUtils]: 76: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,620 INFO L290 TraceCheckUtils]: 77: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,620 INFO L290 TraceCheckUtils]: 78: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,620 INFO L290 TraceCheckUtils]: 79: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,620 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {23480#true} {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,620 INFO L272 TraceCheckUtils]: 81: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} 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)); {23480#true} is VALID [2022-04-08 12:29:05,621 INFO L290 TraceCheckUtils]: 82: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,621 INFO L290 TraceCheckUtils]: 83: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,621 INFO L290 TraceCheckUtils]: 84: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,621 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {23480#true} {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #97#return; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,622 INFO L290 TraceCheckUtils]: 86: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,622 INFO L290 TraceCheckUtils]: 87: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,622 INFO L272 TraceCheckUtils]: 88: Hoare triple {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,623 INFO L290 TraceCheckUtils]: 89: Hoare triple {23480#true} ~cond := #in~cond; {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:05,623 INFO L290 TraceCheckUtils]: 90: Hoare triple {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:05,623 INFO L290 TraceCheckUtils]: 91: Hoare triple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:05,624 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} {23676#(and (= main_~s~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,624 INFO L272 TraceCheckUtils]: 93: Hoare triple {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,624 INFO L290 TraceCheckUtils]: 94: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,624 INFO L290 TraceCheckUtils]: 95: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,624 INFO L290 TraceCheckUtils]: 96: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,625 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23480#true} {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,625 INFO L272 TraceCheckUtils]: 98: Hoare triple {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,625 INFO L290 TraceCheckUtils]: 99: Hoare triple {23480#true} ~cond := #in~cond; {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:05,626 INFO L290 TraceCheckUtils]: 100: Hoare triple {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:05,626 INFO L290 TraceCheckUtils]: 101: Hoare triple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:05,627 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,627 INFO L272 TraceCheckUtils]: 103: Hoare triple {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:05,627 INFO L290 TraceCheckUtils]: 104: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:05,627 INFO L290 TraceCheckUtils]: 105: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:05,627 INFO L290 TraceCheckUtils]: 106: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:05,628 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {23480#true} {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #97#return; {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:05,628 INFO L290 TraceCheckUtils]: 108: Hoare triple {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:07,630 WARN L290 TraceCheckUtils]: 109: Hoare triple {23767#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} ~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; {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is UNKNOWN [2022-04-08 12:29:07,631 INFO L290 TraceCheckUtils]: 110: Hoare triple {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~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 12:29:07,631 INFO L290 TraceCheckUtils]: 111: Hoare triple {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~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; {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~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 12:29:07,632 INFO L290 TraceCheckUtils]: 112: Hoare triple {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~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 12:29:07,632 INFO L272 TraceCheckUtils]: 113: Hoare triple {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~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)); {23480#true} is VALID [2022-04-08 12:29:07,632 INFO L290 TraceCheckUtils]: 114: Hoare triple {23480#true} ~cond := #in~cond; {23480#true} is VALID [2022-04-08 12:29:07,632 INFO L290 TraceCheckUtils]: 115: Hoare triple {23480#true} assume !(0 == ~cond); {23480#true} is VALID [2022-04-08 12:29:07,632 INFO L290 TraceCheckUtils]: 116: Hoare triple {23480#true} assume true; {23480#true} is VALID [2022-04-08 12:29:07,633 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {23480#true} {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~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 12:29:07,633 INFO L272 TraceCheckUtils]: 118: Hoare triple {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~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)); {23480#true} is VALID [2022-04-08 12:29:07,633 INFO L290 TraceCheckUtils]: 119: Hoare triple {23480#true} ~cond := #in~cond; {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:07,633 INFO L290 TraceCheckUtils]: 120: Hoare triple {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:07,634 INFO L290 TraceCheckUtils]: 121: Hoare triple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:07,634 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} {23819#(and (= main_~r~0 0) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {23859#(and (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:07,635 INFO L272 TraceCheckUtils]: 123: Hoare triple {23859#(and (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23480#true} is VALID [2022-04-08 12:29:07,635 INFO L290 TraceCheckUtils]: 124: Hoare triple {23480#true} ~cond := #in~cond; {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:07,635 INFO L290 TraceCheckUtils]: 125: Hoare triple {23628#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:07,635 INFO L290 TraceCheckUtils]: 126: Hoare triple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:07,637 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {23632#(not (= |__VERIFIER_assert_#in~cond| 0))} {23859#(and (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (and (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (= main_~x~0 0)))) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {23875#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:29:07,654 INFO L272 TraceCheckUtils]: 128: Hoare triple {23875#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (or (= (+ main_~y~0 (* (- 1) main_~b~0)) 0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {23879#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:29:07,655 INFO L290 TraceCheckUtils]: 129: Hoare triple {23879#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23883#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:07,655 INFO L290 TraceCheckUtils]: 130: Hoare triple {23883#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23481#false} is VALID [2022-04-08 12:29:07,655 INFO L290 TraceCheckUtils]: 131: Hoare triple {23481#false} assume !false; {23481#false} is VALID [2022-04-08 12:29:07,656 INFO L134 CoverageAnalysis]: Checked inductivity of 550 backedges. 133 proven. 85 refuted. 0 times theorem prover too weak. 332 trivial. 0 not checked. [2022-04-08 12:29:07,656 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:29:19,227 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:29:19,371 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:29:19,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1215632022] [2022-04-08 12:29:19,371 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:29:19,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1323372959] [2022-04-08 12:29:19,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1323372959] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 12:29:19,371 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:29:19,371 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-08 12:29:19,371 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:29:19,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1495024355] [2022-04-08 12:29:19,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1495024355] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:29:19,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:29:19,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 12:29:19,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2095012944] [2022-04-08 12:29:19,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:29:19,373 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 11 states have internal predecessors, (31), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (22), 9 states have call predecessors, (22), 8 states have call successors, (22) Word has length 132 [2022-04-08 12:29:19,373 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:29:19,373 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 11 states have internal predecessors, (31), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (22), 9 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 12:29:21,473 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 75 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:29:21,473 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 12:29:21,473 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:29:21,474 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 12:29:21,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=184, Unknown=0, NotChecked=0, Total=240 [2022-04-08 12:29:21,474 INFO L87 Difference]: Start difference. First operand 258 states and 334 transitions. Second operand has 14 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 11 states have internal predecessors, (31), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (22), 9 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 12:29:25,512 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 12:29:39,837 WARN L232 SmtUtils]: Spent 14.06s on a formula simplification. DAG size of input: 36 DAG size of output: 32 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-08 12:29:40,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:29:40,675 INFO L93 Difference]: Finished difference Result 296 states and 384 transitions. [2022-04-08 12:29:40,675 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 12:29:40,676 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 11 states have internal predecessors, (31), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (22), 9 states have call predecessors, (22), 8 states have call successors, (22) Word has length 132 [2022-04-08 12:29:40,676 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:29:40,676 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 11 states have internal predecessors, (31), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (22), 9 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 12:29:40,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 112 transitions. [2022-04-08 12:29:40,677 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 11 states have internal predecessors, (31), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (22), 9 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 12:29:40,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 112 transitions. [2022-04-08 12:29:40,678 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 112 transitions. [2022-04-08 12:29:42,856 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 111 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:29:42,862 INFO L225 Difference]: With dead ends: 296 [2022-04-08 12:29:42,862 INFO L226 Difference]: Without dead ends: 294 [2022-04-08 12:29:42,862 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 121 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 20.6s TimeCoverageRelationStatistics Valid=82, Invalid=298, Unknown=0, NotChecked=0, Total=380 [2022-04-08 12:29:42,863 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 35 mSDsluCounter, 169 mSDsCounter, 0 mSdLazyCounter, 415 mSolverCounterSat, 50 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 207 SdHoareTripleChecker+Invalid, 466 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 415 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.9s IncrementalHoareTripleChecker+Time [2022-04-08 12:29:42,864 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 207 Invalid, 466 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 415 Invalid, 1 Unknown, 0 Unchecked, 2.9s Time] [2022-04-08 12:29:42,868 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 294 states. [2022-04-08 12:29:43,592 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 294 to 291. [2022-04-08 12:29:43,593 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:29:43,593 INFO L82 GeneralOperation]: Start isEquivalent. First operand 294 states. Second operand has 291 states, 161 states have (on average 1.124223602484472) internal successors, (181), 163 states have internal predecessors, (181), 100 states have call successors, (100), 30 states have call predecessors, (100), 29 states have return successors, (98), 97 states have call predecessors, (98), 98 states have call successors, (98) [2022-04-08 12:29:43,593 INFO L74 IsIncluded]: Start isIncluded. First operand 294 states. Second operand has 291 states, 161 states have (on average 1.124223602484472) internal successors, (181), 163 states have internal predecessors, (181), 100 states have call successors, (100), 30 states have call predecessors, (100), 29 states have return successors, (98), 97 states have call predecessors, (98), 98 states have call successors, (98) [2022-04-08 12:29:43,594 INFO L87 Difference]: Start difference. First operand 294 states. Second operand has 291 states, 161 states have (on average 1.124223602484472) internal successors, (181), 163 states have internal predecessors, (181), 100 states have call successors, (100), 30 states have call predecessors, (100), 29 states have return successors, (98), 97 states have call predecessors, (98), 98 states have call successors, (98) [2022-04-08 12:29:43,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:29:43,599 INFO L93 Difference]: Finished difference Result 294 states and 382 transitions. [2022-04-08 12:29:43,599 INFO L276 IsEmpty]: Start isEmpty. Operand 294 states and 382 transitions. [2022-04-08 12:29:43,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:29:43,600 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:29:43,600 INFO L74 IsIncluded]: Start isIncluded. First operand has 291 states, 161 states have (on average 1.124223602484472) internal successors, (181), 163 states have internal predecessors, (181), 100 states have call successors, (100), 30 states have call predecessors, (100), 29 states have return successors, (98), 97 states have call predecessors, (98), 98 states have call successors, (98) Second operand 294 states. [2022-04-08 12:29:43,600 INFO L87 Difference]: Start difference. First operand has 291 states, 161 states have (on average 1.124223602484472) internal successors, (181), 163 states have internal predecessors, (181), 100 states have call successors, (100), 30 states have call predecessors, (100), 29 states have return successors, (98), 97 states have call predecessors, (98), 98 states have call successors, (98) Second operand 294 states. [2022-04-08 12:29:43,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:29:43,605 INFO L93 Difference]: Finished difference Result 294 states and 382 transitions. [2022-04-08 12:29:43,605 INFO L276 IsEmpty]: Start isEmpty. Operand 294 states and 382 transitions. [2022-04-08 12:29:43,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:29:43,606 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:29:43,606 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:29:43,606 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:29:43,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 291 states, 161 states have (on average 1.124223602484472) internal successors, (181), 163 states have internal predecessors, (181), 100 states have call successors, (100), 30 states have call predecessors, (100), 29 states have return successors, (98), 97 states have call predecessors, (98), 98 states have call successors, (98) [2022-04-08 12:29:43,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 291 states to 291 states and 379 transitions. [2022-04-08 12:29:43,612 INFO L78 Accepts]: Start accepts. Automaton has 291 states and 379 transitions. Word has length 132 [2022-04-08 12:29:43,612 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:29:43,612 INFO L478 AbstractCegarLoop]: Abstraction has 291 states and 379 transitions. [2022-04-08 12:29:43,612 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 11 states have internal predecessors, (31), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (22), 9 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-08 12:29:43,613 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 291 states and 379 transitions. [2022-04-08 12:29:46,555 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 379 edges. 378 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:29:46,556 INFO L276 IsEmpty]: Start isEmpty. Operand 291 states and 379 transitions. [2022-04-08 12:29:46,557 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 136 [2022-04-08 12:29:46,557 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:29:46,557 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 12:29:46,573 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-08 12:29:46,772 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 12:29:46,773 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:29:46,773 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:29:46,773 INFO L85 PathProgramCache]: Analyzing trace with hash 1068997356, now seen corresponding path program 7 times [2022-04-08 12:29:46,773 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:29:46,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [970097491] [2022-04-08 12:29:46,773 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:29:46,773 INFO L85 PathProgramCache]: Analyzing trace with hash 1068997356, now seen corresponding path program 8 times [2022-04-08 12:29:46,773 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:29:46,774 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [864145847] [2022-04-08 12:29:46,774 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:29:46,774 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:29:46,788 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:29:46,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1430185995] [2022-04-08 12:29:46,789 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:29:46,789 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:29:46,789 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:29:46,790 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 12:29:46,790 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 12:29:46,871 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:29:46,871 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:29:46,872 INFO L263 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-08 12:29:46,892 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:29:46,893 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:29:48,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {25676#true} call ULTIMATE.init(); {25676#true} is VALID [2022-04-08 12:29:48,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {25676#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); {25676#true} is VALID [2022-04-08 12:29:48,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,467 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25676#true} {25676#true} #103#return; {25676#true} is VALID [2022-04-08 12:29:48,467 INFO L272 TraceCheckUtils]: 4: Hoare triple {25676#true} call #t~ret6 := main(); {25676#true} is VALID [2022-04-08 12:29:48,467 INFO L290 TraceCheckUtils]: 5: Hoare triple {25676#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; {25676#true} is VALID [2022-04-08 12:29:48,467 INFO L272 TraceCheckUtils]: 6: Hoare triple {25676#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 7: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 8: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 9: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25676#true} {25676#true} #79#return; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 11: Hoare triple {25676#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L272 TraceCheckUtils]: 12: Hoare triple {25676#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 13: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 14: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 15: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {25676#true} {25676#true} #81#return; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L272 TraceCheckUtils]: 17: Hoare triple {25676#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 18: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,468 INFO L290 TraceCheckUtils]: 19: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,469 INFO L290 TraceCheckUtils]: 20: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,469 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {25676#true} {25676#true} #83#return; {25676#true} is VALID [2022-04-08 12:29:48,469 INFO L272 TraceCheckUtils]: 22: Hoare triple {25676#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:29:48,469 INFO L290 TraceCheckUtils]: 23: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,469 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {25676#true} {25676#true} #85#return; {25676#true} is VALID [2022-04-08 12:29:48,472 INFO L290 TraceCheckUtils]: 27: Hoare triple {25676#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; {25762#(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 12:29:48,472 INFO L272 TraceCheckUtils]: 28: Hoare triple {25762#(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)); {25676#true} is VALID [2022-04-08 12:29:48,472 INFO L290 TraceCheckUtils]: 29: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,472 INFO L290 TraceCheckUtils]: 30: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,472 INFO L290 TraceCheckUtils]: 31: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,473 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {25676#true} {25762#(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; {25762#(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 12:29:48,473 INFO L272 TraceCheckUtils]: 33: Hoare triple {25762#(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)); {25676#true} is VALID [2022-04-08 12:29:48,473 INFO L290 TraceCheckUtils]: 34: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,473 INFO L290 TraceCheckUtils]: 35: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,473 INFO L290 TraceCheckUtils]: 36: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,474 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25676#true} {25762#(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; {25762#(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 12:29:48,474 INFO L290 TraceCheckUtils]: 38: Hoare triple {25762#(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; {25762#(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 12:29:48,475 INFO L290 TraceCheckUtils]: 39: Hoare triple {25762#(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; {25799#(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 12:29:48,475 INFO L290 TraceCheckUtils]: 40: Hoare triple {25799#(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; {25799#(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 12:29:48,475 INFO L272 TraceCheckUtils]: 41: Hoare triple {25799#(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)); {25676#true} is VALID [2022-04-08 12:29:48,475 INFO L290 TraceCheckUtils]: 42: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,475 INFO L290 TraceCheckUtils]: 43: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,475 INFO L290 TraceCheckUtils]: 44: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,476 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {25676#true} {25799#(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; {25799#(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 12:29:48,476 INFO L272 TraceCheckUtils]: 46: Hoare triple {25799#(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)); {25676#true} is VALID [2022-04-08 12:29:48,476 INFO L290 TraceCheckUtils]: 47: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,476 INFO L290 TraceCheckUtils]: 48: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,476 INFO L290 TraceCheckUtils]: 49: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,477 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {25676#true} {25799#(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; {25799#(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 12:29:48,477 INFO L272 TraceCheckUtils]: 51: Hoare triple {25799#(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)); {25676#true} is VALID [2022-04-08 12:29:48,477 INFO L290 TraceCheckUtils]: 52: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,477 INFO L290 TraceCheckUtils]: 53: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,477 INFO L290 TraceCheckUtils]: 54: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,478 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25676#true} {25799#(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; {25799#(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 12:29:48,478 INFO L272 TraceCheckUtils]: 56: Hoare triple {25799#(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)); {25676#true} is VALID [2022-04-08 12:29:48,478 INFO L290 TraceCheckUtils]: 57: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,478 INFO L290 TraceCheckUtils]: 58: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,478 INFO L290 TraceCheckUtils]: 59: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,479 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25676#true} {25799#(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; {25799#(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 12:29:48,480 INFO L290 TraceCheckUtils]: 61: Hoare triple {25799#(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; {25866#(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 12:29:48,481 INFO L290 TraceCheckUtils]: 62: Hoare triple {25866#(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; {25866#(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 12:29:48,481 INFO L272 TraceCheckUtils]: 63: Hoare triple {25866#(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)); {25676#true} is VALID [2022-04-08 12:29:48,481 INFO L290 TraceCheckUtils]: 64: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,481 INFO L290 TraceCheckUtils]: 65: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,481 INFO L290 TraceCheckUtils]: 66: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,482 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {25676#true} {25866#(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; {25866#(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 12:29:48,482 INFO L272 TraceCheckUtils]: 68: Hoare triple {25866#(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)); {25676#true} is VALID [2022-04-08 12:29:48,482 INFO L290 TraceCheckUtils]: 69: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,482 INFO L290 TraceCheckUtils]: 70: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,482 INFO L290 TraceCheckUtils]: 71: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,483 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {25676#true} {25866#(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; {25866#(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 12:29:48,483 INFO L272 TraceCheckUtils]: 73: Hoare triple {25866#(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)); {25676#true} is VALID [2022-04-08 12:29:48,483 INFO L290 TraceCheckUtils]: 74: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,483 INFO L290 TraceCheckUtils]: 75: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,483 INFO L290 TraceCheckUtils]: 76: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,484 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {25676#true} {25866#(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; {25866#(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 12:29:48,484 INFO L272 TraceCheckUtils]: 78: Hoare triple {25866#(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)); {25676#true} is VALID [2022-04-08 12:29:48,484 INFO L290 TraceCheckUtils]: 79: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,484 INFO L290 TraceCheckUtils]: 80: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,484 INFO L290 TraceCheckUtils]: 81: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,485 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {25676#true} {25866#(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; {25866#(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 12:29:48,486 INFO L290 TraceCheckUtils]: 83: Hoare triple {25866#(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; {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,486 INFO L290 TraceCheckUtils]: 84: Hoare triple {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,486 INFO L272 TraceCheckUtils]: 85: Hoare triple {25933#(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_~k~0 2) (= 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)); {25676#true} is VALID [2022-04-08 12:29:48,487 INFO L290 TraceCheckUtils]: 86: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,487 INFO L290 TraceCheckUtils]: 87: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,487 INFO L290 TraceCheckUtils]: 88: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,487 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {25676#true} {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,487 INFO L272 TraceCheckUtils]: 90: Hoare triple {25933#(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_~k~0 2) (= 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)); {25676#true} is VALID [2022-04-08 12:29:48,487 INFO L290 TraceCheckUtils]: 91: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,488 INFO L290 TraceCheckUtils]: 92: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,488 INFO L290 TraceCheckUtils]: 93: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,488 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {25676#true} {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,488 INFO L272 TraceCheckUtils]: 95: Hoare triple {25933#(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_~k~0 2) (= 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)); {25676#true} is VALID [2022-04-08 12:29:48,488 INFO L290 TraceCheckUtils]: 96: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,488 INFO L290 TraceCheckUtils]: 97: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,488 INFO L290 TraceCheckUtils]: 98: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,489 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {25676#true} {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,489 INFO L272 TraceCheckUtils]: 100: Hoare triple {25933#(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_~k~0 2) (= 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)); {25676#true} is VALID [2022-04-08 12:29:48,489 INFO L290 TraceCheckUtils]: 101: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,489 INFO L290 TraceCheckUtils]: 102: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,489 INFO L290 TraceCheckUtils]: 103: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,490 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {25676#true} {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {25933#(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_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,491 INFO L290 TraceCheckUtils]: 105: Hoare triple {25933#(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_~k~0 2) (= 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; {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,491 INFO L290 TraceCheckUtils]: 106: Hoare triple {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,492 INFO L272 TraceCheckUtils]: 107: Hoare triple {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~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)); {25676#true} is VALID [2022-04-08 12:29:48,492 INFO L290 TraceCheckUtils]: 108: Hoare triple {25676#true} ~cond := #in~cond; {26010#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:48,492 INFO L290 TraceCheckUtils]: 109: Hoare triple {26010#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:48,492 INFO L290 TraceCheckUtils]: 110: Hoare triple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:48,493 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:29:48,493 INFO L272 TraceCheckUtils]: 112: Hoare triple {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~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)); {25676#true} is VALID [2022-04-08 12:29:48,493 INFO L290 TraceCheckUtils]: 113: Hoare triple {25676#true} ~cond := #in~cond; {26010#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:48,494 INFO L290 TraceCheckUtils]: 114: Hoare triple {26010#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:48,494 INFO L290 TraceCheckUtils]: 115: Hoare triple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:29:48,495 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} {26000#(and (= (+ (- 1) main_~k~0) 2) (= 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_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {26036#(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 12:29:48,495 INFO L272 TraceCheckUtils]: 117: Hoare triple {26036#(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)); {25676#true} is VALID [2022-04-08 12:29:48,495 INFO L290 TraceCheckUtils]: 118: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,495 INFO L290 TraceCheckUtils]: 119: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,495 INFO L290 TraceCheckUtils]: 120: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,496 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {25676#true} {26036#(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; {26036#(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 12:29:48,496 INFO L272 TraceCheckUtils]: 122: Hoare triple {26036#(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)); {25676#true} is VALID [2022-04-08 12:29:48,496 INFO L290 TraceCheckUtils]: 123: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:29:48,496 INFO L290 TraceCheckUtils]: 124: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:29:48,496 INFO L290 TraceCheckUtils]: 125: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:29:48,497 INFO L284 TraceCheckUtils]: 126: Hoare quadruple {25676#true} {26036#(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; {26036#(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 12:29:48,497 INFO L290 TraceCheckUtils]: 127: Hoare triple {26036#(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); {26070#(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 12:29:48,498 INFO L290 TraceCheckUtils]: 128: Hoare triple {26070#(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; {26074#(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))) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} is VALID [2022-04-08 12:29:48,499 INFO L290 TraceCheckUtils]: 129: Hoare triple {26074#(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))) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} assume !false; {26074#(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))) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} is VALID [2022-04-08 12:29:48,499 INFO L290 TraceCheckUtils]: 130: Hoare triple {26074#(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))) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} assume !(0 != ~b~0); {26081#(and (< (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~s~0 3) 0) (= main_~q~0 1) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 12:29:48,500 INFO L272 TraceCheckUtils]: 131: Hoare triple {26081#(and (< (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~s~0 3) 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)); {26085#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:29:48,500 INFO L290 TraceCheckUtils]: 132: Hoare triple {26085#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26089#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:29:48,500 INFO L290 TraceCheckUtils]: 133: Hoare triple {26089#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25677#false} is VALID [2022-04-08 12:29:48,501 INFO L290 TraceCheckUtils]: 134: Hoare triple {25677#false} assume !false; {25677#false} is VALID [2022-04-08 12:29:48,501 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 12:29:48,501 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:31:32,375 INFO L290 TraceCheckUtils]: 134: Hoare triple {25677#false} assume !false; {25677#false} is VALID [2022-04-08 12:31:32,375 INFO L290 TraceCheckUtils]: 133: Hoare triple {26089#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25677#false} is VALID [2022-04-08 12:31:32,375 INFO L290 TraceCheckUtils]: 132: Hoare triple {26085#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26089#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:31:32,376 INFO L272 TraceCheckUtils]: 131: Hoare triple {26105#(= (+ (* 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)); {26085#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:31:32,376 INFO L290 TraceCheckUtils]: 130: Hoare triple {26109#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {26105#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-08 12:31:32,377 INFO L290 TraceCheckUtils]: 129: Hoare triple {26109#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {26109#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-08 12:31:34,378 WARN L290 TraceCheckUtils]: 128: Hoare triple {26116#(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; {26109#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is UNKNOWN [2022-04-08 12:31:34,379 INFO L290 TraceCheckUtils]: 127: Hoare triple {26120#(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); {26116#(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 12:31:34,380 INFO L284 TraceCheckUtils]: 126: Hoare quadruple {25676#true} {26120#(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; {26120#(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 12:31:34,380 INFO L290 TraceCheckUtils]: 125: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:34,380 INFO L290 TraceCheckUtils]: 124: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:34,380 INFO L290 TraceCheckUtils]: 123: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:34,380 INFO L272 TraceCheckUtils]: 122: Hoare triple {26120#(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)); {25676#true} is VALID [2022-04-08 12:31:34,381 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {25676#true} {26120#(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; {26120#(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 12:31:34,381 INFO L290 TraceCheckUtils]: 120: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:34,381 INFO L290 TraceCheckUtils]: 119: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:34,381 INFO L290 TraceCheckUtils]: 118: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:34,381 INFO L272 TraceCheckUtils]: 117: Hoare triple {26120#(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)); {25676#true} is VALID [2022-04-08 12:31:34,382 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} {26154#(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; {26120#(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 12:31:34,382 INFO L290 TraceCheckUtils]: 115: Hoare triple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:31:34,383 INFO L290 TraceCheckUtils]: 114: Hoare triple {26164#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:31:34,383 INFO L290 TraceCheckUtils]: 113: Hoare triple {25676#true} ~cond := #in~cond; {26164#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:31:34,383 INFO L272 TraceCheckUtils]: 112: Hoare triple {26154#(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)); {25676#true} is VALID [2022-04-08 12:31:34,384 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} {26171#(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; {26154#(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 12:31:34,384 INFO L290 TraceCheckUtils]: 110: Hoare triple {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:31:34,385 INFO L290 TraceCheckUtils]: 109: Hoare triple {26164#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {26014#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:31:34,385 INFO L290 TraceCheckUtils]: 108: Hoare triple {25676#true} ~cond := #in~cond; {26164#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:31:34,385 INFO L272 TraceCheckUtils]: 107: Hoare triple {26171#(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)); {25676#true} is VALID [2022-04-08 12:31:34,386 INFO L290 TraceCheckUtils]: 106: Hoare triple {26171#(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; {26171#(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 12:31:34,536 INFO L290 TraceCheckUtils]: 105: Hoare triple {26190#(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; {26171#(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 12:31:34,537 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {25676#true} {26190#(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; {26190#(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 12:31:34,538 INFO L290 TraceCheckUtils]: 103: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:34,538 INFO L290 TraceCheckUtils]: 102: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:34,538 INFO L290 TraceCheckUtils]: 101: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:34,538 INFO L272 TraceCheckUtils]: 100: Hoare triple {26190#(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)); {25676#true} is VALID [2022-04-08 12:31:34,538 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {25676#true} {26190#(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; {26190#(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 12:31:34,538 INFO L290 TraceCheckUtils]: 98: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:34,539 INFO L290 TraceCheckUtils]: 97: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:34,539 INFO L290 TraceCheckUtils]: 96: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:34,539 INFO L272 TraceCheckUtils]: 95: Hoare triple {26190#(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)); {25676#true} is VALID [2022-04-08 12:31:34,539 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {25676#true} {26190#(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; {26190#(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 12:31:34,539 INFO L290 TraceCheckUtils]: 93: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:34,539 INFO L290 TraceCheckUtils]: 92: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:34,540 INFO L290 TraceCheckUtils]: 91: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:34,540 INFO L272 TraceCheckUtils]: 90: Hoare triple {26190#(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)); {25676#true} is VALID [2022-04-08 12:31:34,540 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {25676#true} {26190#(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; {26190#(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 12:31:34,540 INFO L290 TraceCheckUtils]: 88: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:34,540 INFO L290 TraceCheckUtils]: 87: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:34,541 INFO L290 TraceCheckUtils]: 86: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:34,541 INFO L272 TraceCheckUtils]: 85: Hoare triple {26190#(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)); {25676#true} is VALID [2022-04-08 12:31:34,541 INFO L290 TraceCheckUtils]: 84: Hoare triple {26190#(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; {26190#(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 12:31:35,279 INFO L290 TraceCheckUtils]: 83: Hoare triple {26257#(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; {26190#(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 12:31:35,281 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {25676#true} {26257#(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; {26257#(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 12:31:35,281 INFO L290 TraceCheckUtils]: 81: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:35,281 INFO L290 TraceCheckUtils]: 80: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:35,281 INFO L290 TraceCheckUtils]: 79: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:35,281 INFO L272 TraceCheckUtils]: 78: Hoare triple {26257#(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)); {25676#true} is VALID [2022-04-08 12:31:35,282 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {25676#true} {26257#(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; {26257#(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 12:31:35,282 INFO L290 TraceCheckUtils]: 76: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:35,282 INFO L290 TraceCheckUtils]: 75: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:35,282 INFO L290 TraceCheckUtils]: 74: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:35,282 INFO L272 TraceCheckUtils]: 73: Hoare triple {26257#(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)); {25676#true} is VALID [2022-04-08 12:31:35,283 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {25676#true} {26257#(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; {26257#(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 12:31:35,283 INFO L290 TraceCheckUtils]: 71: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:35,283 INFO L290 TraceCheckUtils]: 70: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:35,283 INFO L290 TraceCheckUtils]: 69: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:35,283 INFO L272 TraceCheckUtils]: 68: Hoare triple {26257#(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)); {25676#true} is VALID [2022-04-08 12:31:35,284 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {25676#true} {26257#(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; {26257#(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 12:31:35,284 INFO L290 TraceCheckUtils]: 66: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:35,284 INFO L290 TraceCheckUtils]: 65: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:35,284 INFO L290 TraceCheckUtils]: 64: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:35,285 INFO L272 TraceCheckUtils]: 63: Hoare triple {26257#(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)); {25676#true} is VALID [2022-04-08 12:31:35,285 INFO L290 TraceCheckUtils]: 62: Hoare triple {26257#(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; {26257#(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 12:31:36,408 INFO L290 TraceCheckUtils]: 61: Hoare triple {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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; {26257#(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 12:31:36,409 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25676#true} {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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 12:31:36,409 INFO L290 TraceCheckUtils]: 59: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,409 INFO L290 TraceCheckUtils]: 58: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,409 INFO L290 TraceCheckUtils]: 57: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,409 INFO L272 TraceCheckUtils]: 56: Hoare triple {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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)); {25676#true} is VALID [2022-04-08 12:31:36,410 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25676#true} {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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 12:31:36,410 INFO L290 TraceCheckUtils]: 54: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,410 INFO L290 TraceCheckUtils]: 53: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,411 INFO L290 TraceCheckUtils]: 52: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,411 INFO L272 TraceCheckUtils]: 51: Hoare triple {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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)); {25676#true} is VALID [2022-04-08 12:31:36,413 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {25676#true} {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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 12:31:36,413 INFO L290 TraceCheckUtils]: 49: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,414 INFO L290 TraceCheckUtils]: 48: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,414 INFO L290 TraceCheckUtils]: 47: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,414 INFO L272 TraceCheckUtils]: 46: Hoare triple {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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)); {25676#true} is VALID [2022-04-08 12:31:36,414 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {25676#true} {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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 12:31:36,415 INFO L290 TraceCheckUtils]: 44: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,415 INFO L290 TraceCheckUtils]: 43: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,415 INFO L290 TraceCheckUtils]: 42: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,415 INFO L272 TraceCheckUtils]: 41: Hoare triple {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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)); {25676#true} is VALID [2022-04-08 12:31:36,416 INFO L290 TraceCheckUtils]: 40: Hoare triple {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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 12:31:36,416 INFO L290 TraceCheckUtils]: 39: Hoare triple {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {26324#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) main_~b~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~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 12:31:36,417 INFO L290 TraceCheckUtils]: 38: Hoare triple {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} assume !false; {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} is VALID [2022-04-08 12:31:36,418 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25676#true} {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} #89#return; {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} is VALID [2022-04-08 12:31:36,418 INFO L290 TraceCheckUtils]: 36: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,418 INFO L290 TraceCheckUtils]: 35: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,418 INFO L290 TraceCheckUtils]: 34: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,418 INFO L272 TraceCheckUtils]: 33: Hoare triple {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:31:36,419 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {25676#true} {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} #87#return; {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} is VALID [2022-04-08 12:31:36,419 INFO L290 TraceCheckUtils]: 31: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,419 INFO L290 TraceCheckUtils]: 30: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,419 INFO L290 TraceCheckUtils]: 29: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,419 INFO L272 TraceCheckUtils]: 28: Hoare triple {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L290 TraceCheckUtils]: 27: Hoare triple {25676#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; {26391#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) main_~b~0)) (= (+ (* (* main_~q~0 main_~x~0) 3) (* 3 (* main_~y~0 main_~s~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0))} is VALID [2022-04-08 12:31:36,420 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {25676#true} {25676#true} #85#return; {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L290 TraceCheckUtils]: 25: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L290 TraceCheckUtils]: 24: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L290 TraceCheckUtils]: 23: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L272 TraceCheckUtils]: 22: Hoare triple {25676#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {25676#true} {25676#true} #83#return; {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L290 TraceCheckUtils]: 20: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L290 TraceCheckUtils]: 19: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L290 TraceCheckUtils]: 18: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,420 INFO L272 TraceCheckUtils]: 17: Hoare triple {25676#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {25676#true} {25676#true} #81#return; {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 15: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 14: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 13: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L272 TraceCheckUtils]: 12: Hoare triple {25676#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 11: Hoare triple {25676#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25676#true} {25676#true} #79#return; {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 9: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 8: Hoare triple {25676#true} assume !(0 == ~cond); {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 7: Hoare triple {25676#true} ~cond := #in~cond; {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L272 TraceCheckUtils]: 6: Hoare triple {25676#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {25676#true} is VALID [2022-04-08 12:31:36,421 INFO L290 TraceCheckUtils]: 5: Hoare triple {25676#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; {25676#true} is VALID [2022-04-08 12:31:36,422 INFO L272 TraceCheckUtils]: 4: Hoare triple {25676#true} call #t~ret6 := main(); {25676#true} is VALID [2022-04-08 12:31:36,422 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25676#true} {25676#true} #103#return; {25676#true} is VALID [2022-04-08 12:31:36,422 INFO L290 TraceCheckUtils]: 2: Hoare triple {25676#true} assume true; {25676#true} is VALID [2022-04-08 12:31:36,422 INFO L290 TraceCheckUtils]: 1: Hoare triple {25676#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); {25676#true} is VALID [2022-04-08 12:31:36,422 INFO L272 TraceCheckUtils]: 0: Hoare triple {25676#true} call ULTIMATE.init(); {25676#true} is VALID [2022-04-08 12:31:36,423 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 12:31:36,423 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:31:36,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [864145847] [2022-04-08 12:31:36,423 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:31:36,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1430185995] [2022-04-08 12:31:36,423 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1430185995] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:31:36,423 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:31:36,423 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 16] total 26 [2022-04-08 12:31:36,424 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:31:36,424 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [970097491] [2022-04-08 12:31:36,424 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [970097491] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:31:36,424 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:31:36,424 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 12:31:36,424 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2146112683] [2022-04-08 12:31:36,424 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:31:36,424 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 7 states have call predecessors, (23), 7 states have call successors, (23) Word has length 135 [2022-04-08 12:31:36,425 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:31:36,425 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 7 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-08 12:31:36,524 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 12:31:36,524 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 12:31:36,524 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:31:36,525 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 12:31:36,525 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=131, Invalid=519, Unknown=0, NotChecked=0, Total=650 [2022-04-08 12:31:36,525 INFO L87 Difference]: Start difference. First operand 291 states and 379 transitions. Second operand has 15 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 7 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-08 12:31:43,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:31:43,461 INFO L93 Difference]: Finished difference Result 339 states and 443 transitions. [2022-04-08 12:31:43,461 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 12:31:43,461 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 7 states have call predecessors, (23), 7 states have call successors, (23) Word has length 135 [2022-04-08 12:31:43,461 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:31:43,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 7 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-08 12:31:43,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 127 transitions. [2022-04-08 12:31:43,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 7 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-08 12:31:43,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 127 transitions. [2022-04-08 12:31:43,464 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 127 transitions. [2022-04-08 12:31:43,630 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:31:43,637 INFO L225 Difference]: With dead ends: 339 [2022-04-08 12:31:43,637 INFO L226 Difference]: Without dead ends: 332 [2022-04-08 12:31:43,637 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 273 GetRequests, 243 SyntacticMatches, 2 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 189 ImplicationChecksByTransitivity, 2.7s TimeCoverageRelationStatistics Valid=172, Invalid=698, Unknown=0, NotChecked=0, Total=870 [2022-04-08 12:31:43,637 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 30 mSDsluCounter, 297 mSDsCounter, 0 mSdLazyCounter, 907 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 352 SdHoareTripleChecker+Invalid, 957 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 907 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:31:43,638 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 352 Invalid, 957 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 907 Invalid, 0 Unknown, 0 Unchecked, 3.2s Time] [2022-04-08 12:31:43,638 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 332 states. [2022-04-08 12:31:44,379 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 332 to 301. [2022-04-08 12:31:44,379 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:31:44,380 INFO L82 GeneralOperation]: Start isEquivalent. First operand 332 states. Second operand has 301 states, 166 states have (on average 1.1265060240963856) internal successors, (187), 168 states have internal predecessors, (187), 104 states have call successors, (104), 31 states have call predecessors, (104), 30 states have return successors, (102), 101 states have call predecessors, (102), 102 states have call successors, (102) [2022-04-08 12:31:44,380 INFO L74 IsIncluded]: Start isIncluded. First operand 332 states. Second operand has 301 states, 166 states have (on average 1.1265060240963856) internal successors, (187), 168 states have internal predecessors, (187), 104 states have call successors, (104), 31 states have call predecessors, (104), 30 states have return successors, (102), 101 states have call predecessors, (102), 102 states have call successors, (102) [2022-04-08 12:31:44,380 INFO L87 Difference]: Start difference. First operand 332 states. Second operand has 301 states, 166 states have (on average 1.1265060240963856) internal successors, (187), 168 states have internal predecessors, (187), 104 states have call successors, (104), 31 states have call predecessors, (104), 30 states have return successors, (102), 101 states have call predecessors, (102), 102 states have call successors, (102) [2022-04-08 12:31:44,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:31:44,386 INFO L93 Difference]: Finished difference Result 332 states and 436 transitions. [2022-04-08 12:31:44,386 INFO L276 IsEmpty]: Start isEmpty. Operand 332 states and 436 transitions. [2022-04-08 12:31:44,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:31:44,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:31:44,387 INFO L74 IsIncluded]: Start isIncluded. First operand has 301 states, 166 states have (on average 1.1265060240963856) internal successors, (187), 168 states have internal predecessors, (187), 104 states have call successors, (104), 31 states have call predecessors, (104), 30 states have return successors, (102), 101 states have call predecessors, (102), 102 states have call successors, (102) Second operand 332 states. [2022-04-08 12:31:44,388 INFO L87 Difference]: Start difference. First operand has 301 states, 166 states have (on average 1.1265060240963856) internal successors, (187), 168 states have internal predecessors, (187), 104 states have call successors, (104), 31 states have call predecessors, (104), 30 states have return successors, (102), 101 states have call predecessors, (102), 102 states have call successors, (102) Second operand 332 states. [2022-04-08 12:31:44,393 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:31:44,393 INFO L93 Difference]: Finished difference Result 332 states and 436 transitions. [2022-04-08 12:31:44,394 INFO L276 IsEmpty]: Start isEmpty. Operand 332 states and 436 transitions. [2022-04-08 12:31:44,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:31:44,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:31:44,394 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:31:44,394 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:31:44,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 301 states, 166 states have (on average 1.1265060240963856) internal successors, (187), 168 states have internal predecessors, (187), 104 states have call successors, (104), 31 states have call predecessors, (104), 30 states have return successors, (102), 101 states have call predecessors, (102), 102 states have call successors, (102) [2022-04-08 12:31:44,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 301 states to 301 states and 393 transitions. [2022-04-08 12:31:44,401 INFO L78 Accepts]: Start accepts. Automaton has 301 states and 393 transitions. Word has length 135 [2022-04-08 12:31:44,401 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:31:44,401 INFO L478 AbstractCegarLoop]: Abstraction has 301 states and 393 transitions. [2022-04-08 12:31:44,401 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 7 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-08 12:31:44,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 301 states and 393 transitions. [2022-04-08 12:31:47,417 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 393 edges. 392 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:31:47,417 INFO L276 IsEmpty]: Start isEmpty. Operand 301 states and 393 transitions. [2022-04-08 12:31:47,418 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 139 [2022-04-08 12:31:47,419 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:31:47,419 INFO L499 BasicCegarLoop]: trace histogram [17, 16, 16, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:31:47,435 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-08 12:31:47,619 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-08 12:31:47,619 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:31:47,620 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:31:47,620 INFO L85 PathProgramCache]: Analyzing trace with hash -896647763, now seen corresponding path program 9 times [2022-04-08 12:31:47,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:31:47,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1102753959] [2022-04-08 12:31:47,620 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:31:47,620 INFO L85 PathProgramCache]: Analyzing trace with hash -896647763, now seen corresponding path program 10 times [2022-04-08 12:31:47,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:31:47,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [183210775] [2022-04-08 12:31:47,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:31:47,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:31:47,634 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:31:47,635 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [345858589] [2022-04-08 12:31:47,635 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:31:47,635 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:31:47,635 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:31:47,636 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:31:47,636 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-08 12:31:47,701 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:31:47,701 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:31:47,702 INFO L263 TraceCheckSpWp]: Trace formula consists of 294 conjuncts, 79 conjunts are in the unsatisfiable core [2022-04-08 12:31:47,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:31:47,725 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:04,239 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:32:08,273 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:32:13,240 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:32:44,033 INFO L272 TraceCheckUtils]: 0: Hoare triple {28463#true} call ULTIMATE.init(); {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {28463#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); {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28463#true} {28463#true} #103#return; {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L272 TraceCheckUtils]: 4: Hoare triple {28463#true} call #t~ret6 := main(); {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {28463#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; {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L272 TraceCheckUtils]: 6: Hoare triple {28463#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L290 TraceCheckUtils]: 7: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L290 TraceCheckUtils]: 8: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,034 INFO L290 TraceCheckUtils]: 9: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,035 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28463#true} {28463#true} #79#return; {28463#true} is VALID [2022-04-08 12:32:44,035 INFO L290 TraceCheckUtils]: 11: Hoare triple {28463#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {28463#true} is VALID [2022-04-08 12:32:44,035 INFO L272 TraceCheckUtils]: 12: Hoare triple {28463#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,035 INFO L290 TraceCheckUtils]: 13: Hoare triple {28463#true} ~cond := #in~cond; {28507#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:32:44,035 INFO L290 TraceCheckUtils]: 14: Hoare triple {28507#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {28511#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:44,036 INFO L290 TraceCheckUtils]: 15: Hoare triple {28511#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {28511#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:44,036 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {28511#(not (= |assume_abort_if_not_#in~cond| 0))} {28463#true} #81#return; {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-08 12:32:44,036 INFO L272 TraceCheckUtils]: 17: Hoare triple {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,036 INFO L290 TraceCheckUtils]: 18: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,036 INFO L290 TraceCheckUtils]: 19: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,037 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {28463#true} {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #83#return; {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-08 12:32:44,037 INFO L272 TraceCheckUtils]: 22: Hoare triple {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,037 INFO L290 TraceCheckUtils]: 23: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,037 INFO L290 TraceCheckUtils]: 24: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,037 INFO L290 TraceCheckUtils]: 25: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,037 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28463#true} {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #85#return; {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-08 12:32:44,038 INFO L290 TraceCheckUtils]: 27: Hoare triple {28518#(and (<= 0 main_~y~0) (<= main_~y~0 10))} ~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; {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} is VALID [2022-04-08 12:32:44,038 INFO L272 TraceCheckUtils]: 28: Hoare triple {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,038 INFO L290 TraceCheckUtils]: 29: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,038 INFO L290 TraceCheckUtils]: 30: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,038 INFO L290 TraceCheckUtils]: 31: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,039 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {28463#true} {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} #87#return; {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} is VALID [2022-04-08 12:32:44,039 INFO L272 TraceCheckUtils]: 33: Hoare triple {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,039 INFO L290 TraceCheckUtils]: 34: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,039 INFO L290 TraceCheckUtils]: 35: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,039 INFO L290 TraceCheckUtils]: 36: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,040 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {28463#true} {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} #89#return; {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} is VALID [2022-04-08 12:32:44,040 INFO L290 TraceCheckUtils]: 38: Hoare triple {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} assume !false; {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} is VALID [2022-04-08 12:32:44,041 INFO L290 TraceCheckUtils]: 39: Hoare triple {28552#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:44,041 INFO L290 TraceCheckUtils]: 40: Hoare triple {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} assume !false; {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:44,041 INFO L272 TraceCheckUtils]: 41: Hoare triple {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,041 INFO L290 TraceCheckUtils]: 42: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,041 INFO L290 TraceCheckUtils]: 43: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,041 INFO L290 TraceCheckUtils]: 44: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,042 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {28463#true} {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #91#return; {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:44,042 INFO L272 TraceCheckUtils]: 46: Hoare triple {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,042 INFO L290 TraceCheckUtils]: 47: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,042 INFO L290 TraceCheckUtils]: 48: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,042 INFO L290 TraceCheckUtils]: 49: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,043 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {28463#true} {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #93#return; {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:44,043 INFO L272 TraceCheckUtils]: 51: Hoare triple {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,043 INFO L290 TraceCheckUtils]: 52: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,043 INFO L290 TraceCheckUtils]: 53: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,043 INFO L290 TraceCheckUtils]: 54: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,044 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {28463#true} {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #95#return; {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:44,044 INFO L272 TraceCheckUtils]: 56: Hoare triple {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} 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)); {28463#true} is VALID [2022-04-08 12:32:44,044 INFO L290 TraceCheckUtils]: 57: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,044 INFO L290 TraceCheckUtils]: 58: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,044 INFO L290 TraceCheckUtils]: 59: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,045 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {28463#true} {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #97#return; {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:44,045 INFO L290 TraceCheckUtils]: 61: Hoare triple {28589#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {28656#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~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_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:44,046 INFO L290 TraceCheckUtils]: 62: Hoare triple {28656#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~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_~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; {28660#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,046 INFO L290 TraceCheckUtils]: 63: Hoare triple {28660#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {28660#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,047 INFO L290 TraceCheckUtils]: 64: Hoare triple {28660#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,047 INFO L290 TraceCheckUtils]: 65: Hoare triple {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,047 INFO L272 TraceCheckUtils]: 66: Hoare triple {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,048 INFO L290 TraceCheckUtils]: 67: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,048 INFO L290 TraceCheckUtils]: 68: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,048 INFO L290 TraceCheckUtils]: 69: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,048 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {28463#true} {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,048 INFO L272 TraceCheckUtils]: 71: Hoare triple {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,049 INFO L290 TraceCheckUtils]: 72: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,049 INFO L290 TraceCheckUtils]: 73: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,049 INFO L290 TraceCheckUtils]: 74: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,049 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {28463#true} {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,049 INFO L272 TraceCheckUtils]: 76: Hoare triple {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,050 INFO L290 TraceCheckUtils]: 77: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,050 INFO L290 TraceCheckUtils]: 78: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,050 INFO L290 TraceCheckUtils]: 79: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,050 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {28463#true} {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,050 INFO L272 TraceCheckUtils]: 81: Hoare triple {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,051 INFO L290 TraceCheckUtils]: 82: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,051 INFO L290 TraceCheckUtils]: 83: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,051 INFO L290 TraceCheckUtils]: 84: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,051 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {28463#true} {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #97#return; {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,053 INFO L290 TraceCheckUtils]: 86: Hoare triple {28667#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~yy~0 (* main_~y~0 main_~y~0)) (= 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; {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,053 INFO L290 TraceCheckUtils]: 87: Hoare triple {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,054 INFO L272 TraceCheckUtils]: 88: Hoare triple {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,054 INFO L290 TraceCheckUtils]: 89: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,054 INFO L290 TraceCheckUtils]: 90: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,054 INFO L290 TraceCheckUtils]: 91: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,054 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {28463#true} {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,055 INFO L272 TraceCheckUtils]: 93: Hoare triple {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,055 INFO L290 TraceCheckUtils]: 94: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,055 INFO L290 TraceCheckUtils]: 95: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,055 INFO L290 TraceCheckUtils]: 96: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,055 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {28463#true} {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,056 INFO L272 TraceCheckUtils]: 98: Hoare triple {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,056 INFO L290 TraceCheckUtils]: 99: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,056 INFO L290 TraceCheckUtils]: 100: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,056 INFO L290 TraceCheckUtils]: 101: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,057 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {28463#true} {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,057 INFO L272 TraceCheckUtils]: 103: Hoare triple {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {28463#true} is VALID [2022-04-08 12:32:44,057 INFO L290 TraceCheckUtils]: 104: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,057 INFO L290 TraceCheckUtils]: 105: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,057 INFO L290 TraceCheckUtils]: 106: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,058 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {28463#true} {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #97#return; {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,059 INFO L290 TraceCheckUtils]: 108: Hoare triple {28734#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= 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; {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,060 INFO L290 TraceCheckUtils]: 109: Hoare triple {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,060 INFO L272 TraceCheckUtils]: 110: Hoare triple {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 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)); {28463#true} is VALID [2022-04-08 12:32:44,060 INFO L290 TraceCheckUtils]: 111: Hoare triple {28463#true} ~cond := #in~cond; {28463#true} is VALID [2022-04-08 12:32:44,060 INFO L290 TraceCheckUtils]: 112: Hoare triple {28463#true} assume !(0 == ~cond); {28463#true} is VALID [2022-04-08 12:32:44,060 INFO L290 TraceCheckUtils]: 113: Hoare triple {28463#true} assume true; {28463#true} is VALID [2022-04-08 12:32:44,061 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {28463#true} {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-08 12:32:44,061 INFO L272 TraceCheckUtils]: 115: Hoare triple {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 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)); {28463#true} is VALID [2022-04-08 12:32:44,061 INFO L290 TraceCheckUtils]: 116: Hoare triple {28463#true} ~cond := #in~cond; {28826#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:44,061 INFO L290 TraceCheckUtils]: 117: Hoare triple {28826#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:44,062 INFO L290 TraceCheckUtils]: 118: Hoare triple {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:44,062 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} {28801#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ (- 2) main_~k~0) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {28837#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:32:44,063 INFO L272 TraceCheckUtils]: 120: Hoare triple {28837#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* 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)); {28463#true} is VALID [2022-04-08 12:32:44,063 INFO L290 TraceCheckUtils]: 121: Hoare triple {28463#true} ~cond := #in~cond; {28826#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:44,063 INFO L290 TraceCheckUtils]: 122: Hoare triple {28826#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:44,063 INFO L290 TraceCheckUtils]: 123: Hoare triple {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:44,064 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} {28837#(and (<= 0 main_~y~0) (= main_~s~0 0) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {28853#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:32:44,065 INFO L272 TraceCheckUtils]: 125: Hoare triple {28853#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* 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)); {28463#true} is VALID [2022-04-08 12:32:44,065 INFO L290 TraceCheckUtils]: 126: Hoare triple {28463#true} ~cond := #in~cond; {28826#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:44,065 INFO L290 TraceCheckUtils]: 127: Hoare triple {28826#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:44,065 INFO L290 TraceCheckUtils]: 128: Hoare triple {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:44,066 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {28830#(not (= |__VERIFIER_assert_#in~cond| 0))} {28853#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {28869#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:32:44,068 INFO L290 TraceCheckUtils]: 130: Hoare triple {28869#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {28873#(and (< main_~c~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) main_~c~0)) (= main_~k~0 2))} is VALID [2022-04-08 12:32:44,072 INFO L290 TraceCheckUtils]: 131: Hoare triple {28873#(and (< main_~c~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (<= main_~y~0 10) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) main_~c~0)) (= main_~k~0 2))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28877#(and (= (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0)) main_~x~0) (<= main_~y~0 10) (= (mod (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0) 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (< main_~b~0 (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) (= (+ main_~q~0 (* 2 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) 0) (= (mod (+ main_~b~0 main_~y~0) 2) 0) (not (= main_~x~0 0)))} is VALID [2022-04-08 12:32:44,073 INFO L290 TraceCheckUtils]: 132: Hoare triple {28877#(and (= (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0)) main_~x~0) (<= main_~y~0 10) (= (mod (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0) 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (< main_~b~0 (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) (= (+ main_~q~0 (* 2 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) 0) (= (mod (+ main_~b~0 main_~y~0) 2) 0) (not (= main_~x~0 0)))} assume !false; {28877#(and (= (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0)) main_~x~0) (<= main_~y~0 10) (= (mod (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0) 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (< main_~b~0 (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) (= (+ main_~q~0 (* 2 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) 0) (= (mod (+ main_~b~0 main_~y~0) 2) 0) (not (= main_~x~0 0)))} is VALID [2022-04-08 12:32:44,075 INFO L290 TraceCheckUtils]: 133: Hoare triple {28877#(and (= (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0)) main_~x~0) (<= main_~y~0 10) (= (mod (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0) 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (< main_~b~0 (* main_~x~0 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) (= (+ main_~q~0 (* 2 (div (div (+ main_~b~0 (* (- 1) main_~y~0)) (- 2)) main_~x~0))) 0) (= (mod (+ main_~b~0 main_~y~0) 2) 0) (not (= main_~x~0 0)))} assume !(0 != ~b~0); {28884#(and (<= main_~y~0 10) (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (div (div (* (- 1) main_~y~0) (- 2)) main_~x~0))) (= (+ (* 2 (div (div (* (- 1) main_~y~0) (- 2)) main_~x~0)) main_~q~0) 0) (= (mod main_~y~0 2) 0) (= (mod (div (* (- 1) main_~y~0) (- 2)) main_~x~0) 0) (< 0 (* main_~x~0 (div (div (* (- 1) main_~y~0) (- 2)) main_~x~0))))} is VALID [2022-04-08 12:32:44,080 INFO L272 TraceCheckUtils]: 134: Hoare triple {28884#(and (<= main_~y~0 10) (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (div (div (* (- 1) main_~y~0) (- 2)) main_~x~0))) (= (+ (* 2 (div (div (* (- 1) main_~y~0) (- 2)) main_~x~0)) main_~q~0) 0) (= (mod main_~y~0 2) 0) (= (mod (div (* (- 1) main_~y~0) (- 2)) main_~x~0) 0) (< 0 (* main_~x~0 (div (div (* (- 1) main_~y~0) (- 2)) main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {28888#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:44,080 INFO L290 TraceCheckUtils]: 135: Hoare triple {28888#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28892#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:44,081 INFO L290 TraceCheckUtils]: 136: Hoare triple {28892#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28464#false} is VALID [2022-04-08 12:32:44,081 INFO L290 TraceCheckUtils]: 137: Hoare triple {28464#false} assume !false; {28464#false} is VALID [2022-04-08 12:32:44,081 INFO L134 CoverageAnalysis]: Checked inductivity of 615 backedges. 149 proven. 58 refuted. 0 times theorem prover too weak. 408 trivial. 0 not checked. [2022-04-08 12:32:44,082 INFO L328 TraceCheckSpWp]: Computing backward predicates...