/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/egcd3-ll_valuebound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 15:05:27,175 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 15:05:27,176 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 15:05:27,214 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 15:05:27,214 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 15:05:27,215 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 15:05:27,217 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 15:05:27,219 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 15:05:27,220 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 15:05:27,223 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 15:05:27,224 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 15:05:27,225 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 15:05:27,225 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 15:05:27,227 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 15:05:27,228 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 15:05:27,230 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 15:05:27,230 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 15:05:27,231 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 15:05:27,232 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 15:05:27,236 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 15:05:27,237 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 15:05:27,238 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 15:05:27,239 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 15:05:27,239 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 15:05:27,240 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 15:05:27,245 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 15:05:27,245 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 15:05:27,245 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 15:05:27,246 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 15:05:27,246 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 15:05:27,247 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 15:05:27,247 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 15:05:27,248 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 15:05:27,249 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 15:05:27,249 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 15:05:27,250 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 15:05:27,250 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 15:05:27,250 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 15:05:27,250 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 15:05:27,251 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 15:05:27,251 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 15:05:27,252 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 15:05:27,253 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-15 15:05:27,259 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 15:05:27,259 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 15:05:27,260 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 15:05:27,260 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 15:05:27,260 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 15:05:27,260 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 15:05:27,260 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 15:05:27,260 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 15:05:27,261 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 15:05:27,261 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 15:05:27,261 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 15:05:27,261 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 15:05:27,261 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 15:05:27,261 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:05:27,262 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-15 15:05:27,262 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-15 15:05:27,459 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 15:05:27,479 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 15:05:27,481 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 15:05:27,482 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 15:05:27,482 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 15:05:27,483 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound50.c [2022-04-15 15:05:27,524 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cbe10f1d1/06fb0967158a47dfbbcebeaecea12b9e/FLAG81dc45793 [2022-04-15 15:05:27,846 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 15:05:27,847 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound50.c [2022-04-15 15:05:27,852 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cbe10f1d1/06fb0967158a47dfbbcebeaecea12b9e/FLAG81dc45793 [2022-04-15 15:05:28,253 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cbe10f1d1/06fb0967158a47dfbbcebeaecea12b9e [2022-04-15 15:05:28,254 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 15:05:28,262 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 15:05:28,263 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 15:05:28,263 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 15:05:28,268 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 15:05:28,269 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,269 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2914abc9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28, skipping insertion in model container [2022-04-15 15:05:28,270 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,274 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 15:05:28,286 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 15:05:28,394 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/egcd3-ll_valuebound50.c[490,503] [2022-04-15 15:05:28,429 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:05:28,435 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 15:05:28,442 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/egcd3-ll_valuebound50.c[490,503] [2022-04-15 15:05:28,448 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:05:28,456 INFO L208 MainTranslator]: Completed translation [2022-04-15 15:05:28,456 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28 WrapperNode [2022-04-15 15:05:28,456 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 15:05:28,457 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 15:05:28,457 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 15:05:28,457 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 15:05:28,464 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,464 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,468 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,468 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,478 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,481 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,482 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,483 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 15:05:28,483 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 15:05:28,483 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 15:05:28,484 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 15:05:28,484 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (1/1) ... [2022-04-15 15:05:28,490 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:05:28,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:05:28,507 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-15 15:05:28,521 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-15 15:05:28,537 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 15:05:28,537 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 15:05:28,537 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 15:05:28,537 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 15:05:28,538 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 15:05:28,538 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 15:05:28,538 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 15:05:28,539 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 15:05:28,539 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 15:05:28,539 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 15:05:28,540 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 15:05:28,540 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 15:05:28,540 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 15:05:28,540 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 15:05:28,541 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 15:05:28,543 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 15:05:28,544 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 15:05:28,544 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 15:05:28,544 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 15:05:28,544 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 15:05:28,589 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 15:05:28,590 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 15:05:28,755 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 15:05:28,760 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 15:05:28,760 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-15 15:05:28,761 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:05:28 BoogieIcfgContainer [2022-04-15 15:05:28,761 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 15:05:28,762 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 15:05:28,762 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 15:05:28,764 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 15:05:28,764 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 03:05:28" (1/3) ... [2022-04-15 15:05:28,765 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7451ea68 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:05:28, skipping insertion in model container [2022-04-15 15:05:28,765 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:05:28" (2/3) ... [2022-04-15 15:05:28,765 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7451ea68 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:05:28, skipping insertion in model container [2022-04-15 15:05:28,765 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:05:28" (3/3) ... [2022-04-15 15:05:28,766 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_valuebound50.c [2022-04-15 15:05:28,769 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 15:05:28,769 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 15:05:28,793 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 15:05:28,813 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 15:05:28,813 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 15:05:28,826 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 15:05:28,831 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 15:05:28,831 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:05:28,832 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:05:28,832 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:05:28,835 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:05:28,835 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 1 times [2022-04-15 15:05:28,850 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:28,850 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1963726367] [2022-04-15 15:05:28,859 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:05:28,859 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 2 times [2022-04-15 15:05:28,862 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:05:28,862 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [362765256] [2022-04-15 15:05:28,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:05:28,863 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:05:28,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:29,012 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 15:05:29,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:29,025 INFO L290 TraceCheckUtils]: 0: Hoare triple {64#(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-15 15:05:29,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-15 15:05:29,026 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-15 15:05:29,026 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 15:05:29,028 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:29,032 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,033 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-15 15:05:29,033 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-15 15:05:29,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:29,038 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,038 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,038 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,038 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-15 15:05:29,039 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-15 15:05:29,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:29,043 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,044 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,044 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,044 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-15 15:05:29,044 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-15 15:05:29,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:29,049 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,050 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,050 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,050 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-15 15:05:29,051 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 15:05:29,051 INFO L290 TraceCheckUtils]: 1: Hoare triple {64#(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-15 15:05:29,051 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-15 15:05:29,051 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-15 15:05:29,051 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-15 15:05:29,052 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;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-15 15:05:29,052 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-15 15:05:29,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,052 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,053 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,053 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-15 15:05:29,053 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-15 15:05:29,053 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-15 15:05:29,053 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,054 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,054 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,054 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-15 15:05:29,054 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-15 15:05:29,054 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,055 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,055 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,055 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-15 15:05:29,055 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-15 15:05:29,056 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 15:05:29,056 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 15:05:29,056 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 15:05:29,056 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-15 15:05:29,056 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; {44#false} is VALID [2022-04-15 15:05:29,057 INFO L290 TraceCheckUtils]: 28: Hoare triple {44#false} assume false; {44#false} is VALID [2022-04-15 15:05:29,057 INFO L272 TraceCheckUtils]: 29: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-15 15:05:29,057 INFO L290 TraceCheckUtils]: 30: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-15 15:05:29,057 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-15 15:05:29,057 INFO L290 TraceCheckUtils]: 32: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-15 15:05:29,058 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 15:05:29,058 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:05:29,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [362765256] [2022-04-15 15:05:29,059 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [362765256] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:05:29,059 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:05:29,059 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 15:05:29,061 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:05:29,061 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1963726367] [2022-04-15 15:05:29,061 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1963726367] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:05:29,061 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:05:29,061 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 15:05:29,062 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [614490575] [2022-04-15 15:05:29,062 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:05:29,065 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-15 15:05:29,066 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:05:29,069 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:29,101 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:29,101 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 15:05:29,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:29,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 15:05:29,123 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 15:05:29,125 INFO L87 Difference]: Start difference. First operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:29,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:29,301 INFO L93 Difference]: Finished difference Result 73 states and 115 transitions. [2022-04-15 15:05:29,304 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 15:05:29,305 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-15 15:05:29,305 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:05:29,307 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:29,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-15 15:05:29,321 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:29,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-15 15:05:29,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 115 transitions. [2022-04-15 15:05:29,443 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:29,451 INFO L225 Difference]: With dead ends: 73 [2022-04-15 15:05:29,451 INFO L226 Difference]: Without dead ends: 35 [2022-04-15 15:05:29,454 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 15:05:29,460 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 24 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:05:29,461 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 43 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:05:29,471 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-15 15:05:29,488 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-15 15:05:29,488 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:05:29,489 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:05:29,490 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:05:29,490 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:05:29,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:29,496 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-15 15:05:29,496 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-15 15:05:29,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:29,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:29,497 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-15 15:05:29,498 INFO L87 Difference]: Start difference. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-15 15:05:29,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:29,506 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-15 15:05:29,506 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-15 15:05:29,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:29,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:29,507 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:05:29,507 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:05:29,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:05:29,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-15 15:05:29,510 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 33 [2022-04-15 15:05:29,510 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:05:29,510 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-15 15:05:29,511 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, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:29,511 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-15 15:05:29,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:29,557 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-15 15:05:29,559 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-15 15:05:29,559 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:05:29,559 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:05:29,559 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 15:05:29,560 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:05:29,561 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:05:29,561 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 1 times [2022-04-15 15:05:29,561 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:29,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1158582471] [2022-04-15 15:05:29,563 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:05:29,563 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 2 times [2022-04-15 15:05:29,563 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:05:29,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2129263348] [2022-04-15 15:05:29,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:05:29,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:05:29,587 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:05:29,587 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [836573675] [2022-04-15 15:05:29,587 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:05:29,588 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:29,588 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:05:29,589 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:05:29,590 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-15 15:05:29,628 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 15:05:29,628 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:05:29,629 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 15:05:29,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:29,647 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:05:29,882 INFO L272 TraceCheckUtils]: 0: Hoare triple {353#true} call ULTIMATE.init(); {353#true} is VALID [2022-04-15 15:05:29,883 INFO L290 TraceCheckUtils]: 1: Hoare triple {353#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); {353#true} is VALID [2022-04-15 15:05:29,884 INFO L290 TraceCheckUtils]: 2: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-15 15:05:29,884 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {353#true} {353#true} #112#return; {353#true} is VALID [2022-04-15 15:05:29,884 INFO L272 TraceCheckUtils]: 4: Hoare triple {353#true} call #t~ret6 := main(); {353#true} is VALID [2022-04-15 15:05:29,884 INFO L290 TraceCheckUtils]: 5: Hoare triple {353#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {353#true} is VALID [2022-04-15 15:05:29,885 INFO L272 TraceCheckUtils]: 6: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {353#true} is VALID [2022-04-15 15:05:29,886 INFO L290 TraceCheckUtils]: 7: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-15 15:05:29,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-15 15:05:29,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-15 15:05:29,887 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {353#true} {353#true} #94#return; {353#true} is VALID [2022-04-15 15:05:29,887 INFO L290 TraceCheckUtils]: 11: Hoare triple {353#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {353#true} is VALID [2022-04-15 15:05:29,887 INFO L272 TraceCheckUtils]: 12: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {353#true} is VALID [2022-04-15 15:05:29,887 INFO L290 TraceCheckUtils]: 13: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-15 15:05:29,887 INFO L290 TraceCheckUtils]: 14: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-15 15:05:29,887 INFO L290 TraceCheckUtils]: 15: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-15 15:05:29,887 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {353#true} {353#true} #96#return; {353#true} is VALID [2022-04-15 15:05:29,887 INFO L272 TraceCheckUtils]: 17: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-15 15:05:29,887 INFO L290 TraceCheckUtils]: 18: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-15 15:05:29,888 INFO L290 TraceCheckUtils]: 19: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-15 15:05:29,888 INFO L290 TraceCheckUtils]: 20: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-15 15:05:29,890 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {353#true} {353#true} #98#return; {353#true} is VALID [2022-04-15 15:05:29,890 INFO L272 TraceCheckUtils]: 22: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-15 15:05:29,890 INFO L290 TraceCheckUtils]: 23: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-15 15:05:29,890 INFO L290 TraceCheckUtils]: 24: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-15 15:05:29,891 INFO L290 TraceCheckUtils]: 25: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-15 15:05:29,891 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {353#true} {353#true} #100#return; {353#true} is VALID [2022-04-15 15:05:29,892 INFO L290 TraceCheckUtils]: 27: Hoare triple {353#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:05:29,892 INFO L290 TraceCheckUtils]: 28: Hoare triple {439#(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; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:05:29,893 INFO L290 TraceCheckUtils]: 29: Hoare triple {439#(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); {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:05:29,894 INFO L272 TraceCheckUtils]: 30: Hoare triple {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {450#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:05:29,895 INFO L290 TraceCheckUtils]: 31: Hoare triple {450#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {454#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:05:29,895 INFO L290 TraceCheckUtils]: 32: Hoare triple {454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {354#false} is VALID [2022-04-15 15:05:29,895 INFO L290 TraceCheckUtils]: 33: Hoare triple {354#false} assume !false; {354#false} is VALID [2022-04-15 15:05:29,896 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 15:05:29,896 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:05:29,896 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:05:29,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2129263348] [2022-04-15 15:05:29,897 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:05:29,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [836573675] [2022-04-15 15:05:29,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [836573675] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:05:29,897 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:05:29,898 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:05:29,898 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:05:29,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1158582471] [2022-04-15 15:05:29,898 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1158582471] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:05:29,898 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:05:29,898 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:05:29,899 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [813378034] [2022-04-15 15:05:29,899 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:05:29,899 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-15 15:05:29,900 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:05:29,900 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:05:29,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:29,918 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:05:29,918 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:29,921 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:05:29,923 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:05:29,923 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:05:30,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:30,220 INFO L93 Difference]: Finished difference Result 54 states and 69 transitions. [2022-04-15 15:05:30,220 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 15:05:30,220 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-15 15:05:30,220 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:05:30,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:05:30,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-15 15:05:30,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:05:30,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-15 15:05:30,224 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-15 15:05:30,281 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-15 15:05:30,283 INFO L225 Difference]: With dead ends: 54 [2022-04-15 15:05:30,283 INFO L226 Difference]: Without dead ends: 51 [2022-04-15 15:05:30,283 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-15 15:05:30,284 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 14 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:05:30,284 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 158 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 15:05:30,285 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-15 15:05:30,293 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-15 15:05:30,293 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:05:30,294 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:05:30,294 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:05:30,294 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:05:30,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:30,296 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-15 15:05:30,297 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-15 15:05:30,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:30,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:30,298 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-15 15:05:30,298 INFO L87 Difference]: Start difference. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-15 15:05:30,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:30,300 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-15 15:05:30,300 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-15 15:05:30,301 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:30,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:30,301 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:05:30,301 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:05:30,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:05:30,303 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2022-04-15 15:05:30,303 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 34 [2022-04-15 15:05:30,303 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:05:30,303 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2022-04-15 15:05:30,303 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:05:30,303 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 64 transitions. [2022-04-15 15:05:30,359 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:30,359 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-15 15:05:30,360 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-15 15:05:30,360 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:05:30,360 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:05:30,392 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-15 15:05:30,580 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:30,580 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:05:30,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:05:30,580 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 1 times [2022-04-15 15:05:30,580 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:30,581 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [784061486] [2022-04-15 15:05:30,581 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:05:30,581 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 2 times [2022-04-15 15:05:30,581 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:05:30,581 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1686821571] [2022-04-15 15:05:30,581 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:05:30,581 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:05:30,600 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:05:30,600 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [199503027] [2022-04-15 15:05:30,600 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:05:30,600 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:30,601 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:05:30,601 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:05:30,609 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-15 15:05:30,648 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:05:30,648 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:05:30,649 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 15:05:30,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:30,658 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:05:30,818 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-15 15:05:30,819 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#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); {774#true} is VALID [2022-04-15 15:05:30,819 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:30,819 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-15 15:05:30,819 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-15 15:05:30,819 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-15 15:05:30,819 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:30,819 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-15 15:05:30,819 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-15 15:05:30,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:30,820 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-15 15:05:30,820 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-15 15:05:30,820 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:30,820 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-15 15:05:30,820 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-15 15:05:30,820 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:30,820 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-15 15:05:30,820 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:30,822 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 15:05:30,823 INFO L290 TraceCheckUtils]: 19: Hoare triple {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:30,823 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:30,826 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-15 15:05:30,826 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:30,826 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-15 15:05:30,826 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-15 15:05:30,826 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:30,827 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-15 15:05:30,827 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-15 15:05:30,828 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-15 15:05:30,828 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-15 15:05:30,829 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-15 15:05:30,829 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-15 15:05:30,831 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 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; {880#(<= 1 main_~b~0)} is VALID [2022-04-15 15:05:30,831 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-15 15:05:30,831 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-15 15:05:30,832 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-15 15:05:30,832 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-15 15:05:30,832 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-15 15:05:30,832 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-15 15:05:30,832 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-15 15:05:30,832 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:05:31,089 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-15 15:05:31,089 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-15 15:05:31,090 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-15 15:05:31,090 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-15 15:05:31,095 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-15 15:05:31,095 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-15 15:05:31,096 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 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; {880#(<= 1 main_~b~0)} is VALID [2022-04-15 15:05:31,096 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-15 15:05:31,097 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-15 15:05:31,097 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-15 15:05:31,097 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-15 15:05:31,098 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-15 15:05:31,098 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-15 15:05:31,098 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:31,098 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-15 15:05:31,098 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-15 15:05:31,098 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:31,099 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-15 15:05:31,099 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:31,100 INFO L290 TraceCheckUtils]: 19: Hoare triple {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:31,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-15 15:05:31,100 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:31,100 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-15 15:05:31,100 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:31,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-15 15:05:31,101 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-15 15:05:31,101 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:31,101 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-15 15:05:31,101 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-15 15:05:31,101 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:31,101 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-15 15:05:31,101 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-15 15:05:31,101 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {774#true} is VALID [2022-04-15 15:05:31,101 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-15 15:05:31,101 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-15 15:05:31,101 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-15 15:05:31,102 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-15 15:05:31,102 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#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); {774#true} is VALID [2022-04-15 15:05:31,102 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-15 15:05:31,102 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-15 15:05:31,102 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:05:31,102 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1686821571] [2022-04-15 15:05:31,102 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:05:31,102 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [199503027] [2022-04-15 15:05:31,102 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [199503027] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:05:31,102 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:05:31,102 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-15 15:05:31,103 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:05:31,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [784061486] [2022-04-15 15:05:31,103 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [784061486] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:05:31,103 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:05:31,103 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 15:05:31,103 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [12802272] [2022-04-15 15:05:31,103 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:05:31,103 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-15 15:05:31,104 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:05:31,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:31,128 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:31,128 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 15:05:31,128 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:31,129 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 15:05:31,129 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-15 15:05:31,129 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:31,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:31,684 INFO L93 Difference]: Finished difference Result 103 states and 143 transitions. [2022-04-15 15:05:31,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 15:05:31,684 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-15 15:05:31,684 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:05:31,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:31,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-15 15:05:31,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:31,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-15 15:05:31,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-15 15:05:31,765 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:31,771 INFO L225 Difference]: With dead ends: 103 [2022-04-15 15:05:31,771 INFO L226 Difference]: Without dead ends: 96 [2022-04-15 15:05:31,772 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:05:31,780 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 68 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 232 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:05:31,781 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 232 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 15:05:31,782 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-15 15:05:31,842 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 71. [2022-04-15 15:05:31,842 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:05:31,843 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-15 15:05:31,846 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-15 15:05:31,846 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-15 15:05:31,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:31,855 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-15 15:05:31,855 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-15 15:05:31,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:31,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:31,862 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-15 15:05:31,864 INFO L87 Difference]: Start difference. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-15 15:05:31,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:31,868 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-15 15:05:31,868 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-15 15:05:31,869 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:31,869 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:31,869 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:05:31,869 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:05:31,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-15 15:05:31,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 95 transitions. [2022-04-15 15:05:31,871 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 95 transitions. Word has length 39 [2022-04-15 15:05:31,871 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:05:31,871 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 95 transitions. [2022-04-15 15:05:31,871 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 15:05:31,871 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 95 transitions. [2022-04-15 15:05:31,954 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:31,954 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 95 transitions. [2022-04-15 15:05:31,956 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-15 15:05:31,957 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:05:31,957 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:05:31,977 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-15 15:05:32,173 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-15 15:05:32,174 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:05:32,174 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:05:32,174 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 1 times [2022-04-15 15:05:32,174 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:32,174 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [717018318] [2022-04-15 15:05:32,174 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:05:32,175 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 2 times [2022-04-15 15:05:32,175 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:05:32,175 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [398804834] [2022-04-15 15:05:32,175 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:05:32,176 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:05:32,190 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:05:32,190 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1468610636] [2022-04-15 15:05:32,190 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:05:32,191 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:32,191 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:05:32,191 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:05:32,200 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-15 15:05:32,249 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:05:32,249 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:05:32,250 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-15 15:05:32,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:32,267 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:05:32,835 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-15 15:05:32,835 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#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); {1566#true} is VALID [2022-04-15 15:05:32,835 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:32,835 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-15 15:05:32,835 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-15 15:05:32,835 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-15 15:05:32,835 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:32,835 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-15 15:05:32,836 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-15 15:05:32,836 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:32,836 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-15 15:05:32,836 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-15 15:05:32,836 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:32,836 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 15:05:32,837 INFO L290 TraceCheckUtils]: 14: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:32,837 INFO L290 TraceCheckUtils]: 15: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:32,837 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1566#true} #96#return; {1621#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,837 INFO L272 TraceCheckUtils]: 17: Hoare triple {1621#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:32,838 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 15:05:32,838 INFO L290 TraceCheckUtils]: 19: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:32,838 INFO L290 TraceCheckUtils]: 20: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:32,839 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1621#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #98#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,839 INFO L272 TraceCheckUtils]: 22: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:32,839 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-15 15:05:32,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-15 15:05:32,839 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:32,842 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} #100#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1656#(and (<= 0 main_~y~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_~y~0 50))} is VALID [2022-04-15 15:05:32,843 INFO L290 TraceCheckUtils]: 28: Hoare triple {1656#(and (<= 0 main_~y~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_~y~0 50))} assume !false; {1656#(and (<= 0 main_~y~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_~y~0 50))} is VALID [2022-04-15 15:05:32,843 INFO L290 TraceCheckUtils]: 29: Hoare triple {1656#(and (<= 0 main_~y~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_~y~0 50))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,844 INFO L290 TraceCheckUtils]: 30: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} assume !false; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,844 INFO L290 TraceCheckUtils]: 31: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} assume !(~c~0 >= ~b~0); {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,845 INFO L290 TraceCheckUtils]: 32: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50))} ~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; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,845 INFO L290 TraceCheckUtils]: 33: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !false; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,845 INFO L290 TraceCheckUtils]: 34: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,849 INFO L290 TraceCheckUtils]: 35: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !false; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,849 INFO L290 TraceCheckUtils]: 36: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 50))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,850 INFO L290 TraceCheckUtils]: 37: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} assume !false; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:32,851 INFO L272 TraceCheckUtils]: 38: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 50))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:05:32,851 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:05:32,851 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-15 15:05:32,851 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-15 15:05:32,852 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 6 proven. 10 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 15:05:32,852 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:05:33,195 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-15 15:05:33,195 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-15 15:05:33,196 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:05:33,196 INFO L272 TraceCheckUtils]: 38: Hoare triple {1714#(= 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)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:05:33,197 INFO L290 TraceCheckUtils]: 37: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:05:33,197 INFO L290 TraceCheckUtils]: 36: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:05:33,198 INFO L290 TraceCheckUtils]: 35: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-15 15:05:33,198 INFO L290 TraceCheckUtils]: 34: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-15 15:05:33,199 INFO L290 TraceCheckUtils]: 33: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:05:33,199 INFO L290 TraceCheckUtils]: 32: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:05:33,199 INFO L290 TraceCheckUtils]: 31: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:05:33,200 INFO L290 TraceCheckUtils]: 30: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:05:33,200 INFO L290 TraceCheckUtils]: 29: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:05:33,201 INFO L290 TraceCheckUtils]: 28: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !false; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-15 15:05:33,201 INFO L290 TraceCheckUtils]: 27: Hoare triple {1566#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-15 15:05:33,201 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1566#true} #100#return; {1566#true} is VALID [2022-04-15 15:05:33,201 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:33,201 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-15 15:05:33,201 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-15 15:05:33,201 INFO L272 TraceCheckUtils]: 22: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1566#true} {1566#true} #98#return; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 20: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 19: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L272 TraceCheckUtils]: 17: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1566#true} {1566#true} #96#return; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 15: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 14: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-15 15:05:33,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#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); {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-15 15:05:33,203 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 15:05:33,204 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:05:33,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [398804834] [2022-04-15 15:05:33,204 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:05:33,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1468610636] [2022-04-15 15:05:33,204 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1468610636] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:05:33,204 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:05:33,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 18 [2022-04-15 15:05:33,204 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:05:33,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [717018318] [2022-04-15 15:05:33,204 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [717018318] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:05:33,204 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:05:33,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 15:05:33,204 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [913918133] [2022-04-15 15:05:33,204 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:05:33,205 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-15 15:05:33,205 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:05:33,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 15:05:33,231 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:33,231 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 15:05:33,231 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:33,231 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 15:05:33,231 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2022-04-15 15:05:33,232 INFO L87 Difference]: Start difference. First operand 71 states and 95 transitions. Second operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 15:05:34,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:34,427 INFO L93 Difference]: Finished difference Result 112 states and 151 transitions. [2022-04-15 15:05:34,427 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 15:05:34,427 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-15 15:05:34,427 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:05:34,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 15:05:34,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-15 15:05:34,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 15:05:34,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-15 15:05:34,432 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 117 transitions. [2022-04-15 15:05:34,527 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-15 15:05:34,529 INFO L225 Difference]: With dead ends: 112 [2022-04-15 15:05:34,529 INFO L226 Difference]: Without dead ends: 110 [2022-04-15 15:05:34,529 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 66 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 81 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=96, Invalid=410, Unknown=0, NotChecked=0, Total=506 [2022-04-15 15:05:34,530 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 89 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 358 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 414 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 358 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 15:05:34,530 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [98 Valid, 245 Invalid, 414 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 358 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 15:05:34,530 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-15 15:05:34,678 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 93. [2022-04-15 15:05:34,678 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:05:34,679 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 15:05:34,679 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 15:05:34,679 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 15:05:34,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:34,683 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-15 15:05:34,683 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-15 15:05:34,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:34,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:34,684 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-15 15:05:34,684 INFO L87 Difference]: Start difference. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-15 15:05:34,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:34,687 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-15 15:05:34,687 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-15 15:05:34,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:34,688 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:34,688 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:05:34,688 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:05:34,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 15:05:34,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 122 transitions. [2022-04-15 15:05:34,691 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 122 transitions. Word has length 42 [2022-04-15 15:05:34,691 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:05:34,691 INFO L478 AbstractCegarLoop]: Abstraction has 93 states and 122 transitions. [2022-04-15 15:05:34,691 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 15:05:34,691 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 93 states and 122 transitions. [2022-04-15 15:05:34,816 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-15 15:05:34,816 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 122 transitions. [2022-04-15 15:05:34,817 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-15 15:05:34,817 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:05:34,817 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:05:34,833 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-15 15:05:35,022 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:35,022 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:05:35,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:05:35,023 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 1 times [2022-04-15 15:05:35,023 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:35,023 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [595718319] [2022-04-15 15:05:35,023 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:05:35,023 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 2 times [2022-04-15 15:05:35,023 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:05:35,023 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1475293835] [2022-04-15 15:05:35,023 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:05:35,024 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:05:35,040 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:05:35,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [410291999] [2022-04-15 15:05:35,040 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:05:35,040 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:35,040 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:05:35,043 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:05:35,070 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-15 15:05:35,115 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:05:35,115 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:05:35,116 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-15 15:05:35,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:35,128 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:05:35,389 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#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); {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,390 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-15 15:05:35,391 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-15 15:05:35,391 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 15:05:35,391 INFO L290 TraceCheckUtils]: 14: Hoare triple {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:35,392 INFO L290 TraceCheckUtils]: 15: Hoare triple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:35,392 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} {2475#true} #96#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:35,392 INFO L272 TraceCheckUtils]: 17: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,393 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,393 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,393 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,393 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #98#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:35,393 INFO L272 TraceCheckUtils]: 22: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,394 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,394 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,394 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #100#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:35,395 INFO L290 TraceCheckUtils]: 27: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2564#(<= 0 main_~b~0)} is VALID [2022-04-15 15:05:35,395 INFO L290 TraceCheckUtils]: 28: Hoare triple {2564#(<= 0 main_~b~0)} assume !false; {2564#(<= 0 main_~b~0)} is VALID [2022-04-15 15:05:35,395 INFO L290 TraceCheckUtils]: 29: Hoare triple {2564#(<= 0 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-15 15:05:35,396 INFO L290 TraceCheckUtils]: 30: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-15 15:05:35,396 INFO L290 TraceCheckUtils]: 31: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-15 15:05:35,397 INFO L290 TraceCheckUtils]: 32: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-15 15:05:35,397 INFO L272 TraceCheckUtils]: 33: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,397 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,397 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,397 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,398 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-15 15:05:35,398 INFO L272 TraceCheckUtils]: 38: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,398 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,398 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,398 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,399 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-15 15:05:35,399 INFO L272 TraceCheckUtils]: 43: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:05:35,400 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:05:35,400 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-15 15:05:35,400 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-15 15:05:35,400 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 7 proven. 6 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-15 15:05:35,400 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:05:35,601 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-15 15:05:35,602 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-15 15:05:35,602 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:05:35,603 INFO L272 TraceCheckUtils]: 43: Hoare triple {2634#(= 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)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:05:35,603 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #104#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 15:05:35,603 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,603 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,604 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,604 INFO L272 TraceCheckUtils]: 38: Hoare triple {2634#(= 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)); {2475#true} is VALID [2022-04-15 15:05:35,604 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #102#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 15:05:35,604 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,604 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,604 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,605 INFO L272 TraceCheckUtils]: 33: Hoare triple {2634#(= 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)); {2475#true} is VALID [2022-04-15 15:05:35,605 INFO L290 TraceCheckUtils]: 32: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 15:05:35,605 INFO L290 TraceCheckUtils]: 31: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 15:05:35,606 INFO L290 TraceCheckUtils]: 30: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 15:05:35,606 INFO L290 TraceCheckUtils]: 29: Hoare triple {2475#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-15 15:05:35,606 INFO L290 TraceCheckUtils]: 28: Hoare triple {2475#true} assume !false; {2475#true} is VALID [2022-04-15 15:05:35,606 INFO L290 TraceCheckUtils]: 27: Hoare triple {2475#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2475#true} is VALID [2022-04-15 15:05:35,606 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2475#true} #100#return; {2475#true} is VALID [2022-04-15 15:05:35,606 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,606 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,606 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,606 INFO L272 TraceCheckUtils]: 22: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2475#true} #98#return; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L272 TraceCheckUtils]: 17: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2475#true} {2475#true} #96#return; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 15: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 14: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-15 15:05:35,607 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#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); {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-15 15:05:35,608 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 15:05:35,608 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:05:35,608 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1475293835] [2022-04-15 15:05:35,608 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:05:35,609 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [410291999] [2022-04-15 15:05:35,609 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [410291999] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:05:35,609 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:05:35,609 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-15 15:05:35,609 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:05:35,609 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [595718319] [2022-04-15 15:05:35,609 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [595718319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:05:35,609 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:05:35,609 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:05:35,609 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [127908269] [2022-04-15 15:05:35,609 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:05:35,609 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-15 15:05:35,610 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:05:35,610 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 15:05:35,633 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:35,633 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:05:35,633 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:35,633 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:05:35,633 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-15 15:05:35,633 INFO L87 Difference]: Start difference. First operand 93 states and 122 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 15:05:36,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:36,030 INFO L93 Difference]: Finished difference Result 130 states and 179 transitions. [2022-04-15 15:05:36,030 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:05:36,031 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-15 15:05:36,031 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:05:36,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 15:05:36,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:05:36,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 15:05:36,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:05:36,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-15 15:05:36,083 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-15 15:05:36,085 INFO L225 Difference]: With dead ends: 130 [2022-04-15 15:05:36,085 INFO L226 Difference]: Without dead ends: 128 [2022-04-15 15:05:36,086 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-15 15:05:36,086 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 8 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:05:36,087 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 141 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:05:36,087 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-15 15:05:36,285 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 123. [2022-04-15 15:05:36,285 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:05:36,286 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:05:36,286 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:05:36,287 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:05:36,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:36,294 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-15 15:05:36,295 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-15 15:05:36,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:36,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:36,295 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-15 15:05:36,311 INFO L87 Difference]: Start difference. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-15 15:05:36,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:05:36,317 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-15 15:05:36,317 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-15 15:05:36,318 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:05:36,318 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:05:36,318 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:05:36,318 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:05:36,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:05:36,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 172 transitions. [2022-04-15 15:05:36,323 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 172 transitions. Word has length 47 [2022-04-15 15:05:36,323 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:05:36,323 INFO L478 AbstractCegarLoop]: Abstraction has 123 states and 172 transitions. [2022-04-15 15:05:36,323 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 15:05:36,323 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 123 states and 172 transitions. [2022-04-15 15:05:36,471 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:05:36,471 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 172 transitions. [2022-04-15 15:05:36,471 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-15 15:05:36,471 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:05:36,471 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:05:36,499 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-15 15:05:36,672 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:36,672 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:05:36,672 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:05:36,672 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 1 times [2022-04-15 15:05:36,673 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:05:36,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1683367122] [2022-04-15 15:05:36,673 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:05:36,673 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 2 times [2022-04-15 15:05:36,673 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:05:36,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2104378016] [2022-04-15 15:05:36,673 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:05:36,673 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:05:36,685 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:05:36,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [985229980] [2022-04-15 15:05:36,685 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:05:36,685 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:05:36,685 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:05:36,686 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:05:36,687 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-15 15:05:36,724 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:05:36,725 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:05:36,725 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-15 15:05:36,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:05:36,734 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:05:42,204 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-15 15:05:42,204 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#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); {3530#true} is VALID [2022-04-15 15:05:42,204 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:05:42,204 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-15 15:05:42,204 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-15 15:05:42,204 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:05:42,205 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 15:05:42,206 INFO L290 TraceCheckUtils]: 14: Hoare triple {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:42,206 INFO L290 TraceCheckUtils]: 15: Hoare triple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:42,206 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} {3530#true} #96#return; {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,206 INFO L272 TraceCheckUtils]: 17: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:05:42,206 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:05:42,206 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:05:42,207 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:05:42,207 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #98#return; {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,207 INFO L272 TraceCheckUtils]: 22: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:05:42,207 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 15:05:42,208 INFO L290 TraceCheckUtils]: 24: Hoare triple {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:42,208 INFO L290 TraceCheckUtils]: 25: Hoare triple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 15:05:42,208 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #100#return; {3616#(and (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,209 INFO L290 TraceCheckUtils]: 27: Hoare triple {3616#(and (<= 1 main_~y~0) (<= main_~y~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-15 15:05:42,209 INFO L290 TraceCheckUtils]: 28: Hoare triple {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !false; {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-15 15:05:42,209 INFO L290 TraceCheckUtils]: 29: Hoare triple {3620#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-15 15:05:42,210 INFO L290 TraceCheckUtils]: 30: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !false; {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-15 15:05:42,211 INFO L290 TraceCheckUtils]: 31: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-15 15:05:42,211 INFO L290 TraceCheckUtils]: 32: Hoare triple {3627#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= 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; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,212 INFO L290 TraceCheckUtils]: 33: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,212 INFO L290 TraceCheckUtils]: 34: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,214 INFO L290 TraceCheckUtils]: 35: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,215 INFO L290 TraceCheckUtils]: 36: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,215 INFO L290 TraceCheckUtils]: 37: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} assume !false; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,216 INFO L272 TraceCheckUtils]: 38: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:05:42,216 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:05:42,216 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:05:42,216 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:05:42,222 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} #102#return; {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-15 15:05:42,224 INFO L272 TraceCheckUtils]: 43: Hoare triple {3637#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0) (<= main_~y~0 50))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:05:42,224 INFO L290 TraceCheckUtils]: 44: Hoare triple {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3675#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:05:42,225 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-15 15:05:42,225 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-15 15:05:42,225 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 11 proven. 7 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 15:05:42,225 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:07:08,903 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-15 15:07:08,903 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-15 15:07:08,903 INFO L290 TraceCheckUtils]: 44: Hoare triple {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3675#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:08,904 INFO L272 TraceCheckUtils]: 43: Hoare triple {3691#(= 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)); {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:08,905 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:08,905 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:07:08,905 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:07:08,905 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:07:08,905 INFO L272 TraceCheckUtils]: 38: Hoare triple {3691#(= 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)); {3530#true} is VALID [2022-04-15 15:07:08,905 INFO L290 TraceCheckUtils]: 37: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:08,906 INFO L290 TraceCheckUtils]: 36: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:08,906 INFO L290 TraceCheckUtils]: 35: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:08,907 INFO L290 TraceCheckUtils]: 34: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:08,907 INFO L290 TraceCheckUtils]: 33: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:09,123 INFO L290 TraceCheckUtils]: 32: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:09,124 INFO L290 TraceCheckUtils]: 31: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !(~c~0 >= ~b~0); {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-15 15:07:09,125 INFO L290 TraceCheckUtils]: 30: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !false; {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-15 15:07:09,125 INFO L290 TraceCheckUtils]: 29: Hoare triple {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-15 15:07:09,125 INFO L290 TraceCheckUtils]: 28: Hoare triple {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:09,126 INFO L290 TraceCheckUtils]: 27: Hoare triple {3530#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:09,126 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L272 TraceCheckUtils]: 22: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:07:09,126 INFO L272 TraceCheckUtils]: 17: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-15 15:07:09,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#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); {3530#true} is VALID [2022-04-15 15:07:09,128 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-15 15:07:09,128 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 15:07:09,128 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:07:09,128 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2104378016] [2022-04-15 15:07:09,128 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:07:09,128 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [985229980] [2022-04-15 15:07:09,128 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [985229980] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:07:09,128 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:07:09,128 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-15 15:07:09,128 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:07:09,128 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1683367122] [2022-04-15 15:07:09,128 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1683367122] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:09,129 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:09,129 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 15:07:09,129 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [402632749] [2022-04-15 15:07:09,129 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:07:09,129 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-15 15:07:09,129 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:07:09,129 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 15:07:09,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:09,158 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 15:07:09,158 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:09,158 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 15:07:09,159 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:07:09,159 INFO L87 Difference]: Start difference. First operand 123 states and 172 transitions. Second operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 15:07:10,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:10,069 INFO L93 Difference]: Finished difference Result 137 states and 184 transitions. [2022-04-15 15:07:10,069 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 15:07:10,069 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-15 15:07:10,070 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:07:10,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 15:07:10,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-15 15:07:10,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 15:07:10,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-15 15:07:10,073 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 101 transitions. [2022-04-15 15:07:10,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:10,155 INFO L225 Difference]: With dead ends: 137 [2022-04-15 15:07:10,156 INFO L226 Difference]: Without dead ends: 135 [2022-04-15 15:07:10,156 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-15 15:07:10,156 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 58 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 253 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 231 SdHoareTripleChecker+Invalid, 280 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 253 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 15:07:10,156 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [70 Valid, 231 Invalid, 280 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 253 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 15:07:10,157 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-04-15 15:07:10,397 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 131. [2022-04-15 15:07:10,397 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:07:10,397 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:07:10,398 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:07:10,398 INFO L87 Difference]: Start difference. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:07:10,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:10,402 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-15 15:07:10,402 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-15 15:07:10,402 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:10,402 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:10,402 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-15 15:07:10,403 INFO L87 Difference]: Start difference. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-15 15:07:10,406 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:10,406 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-15 15:07:10,406 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-15 15:07:10,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:10,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:10,407 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:07:10,407 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:07:10,407 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-15 15:07:10,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 178 transitions. [2022-04-15 15:07:10,410 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 178 transitions. Word has length 47 [2022-04-15 15:07:10,410 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:07:10,411 INFO L478 AbstractCegarLoop]: Abstraction has 131 states and 178 transitions. [2022-04-15 15:07:10,411 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 15:07:10,411 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 178 transitions. [2022-04-15 15:07:10,599 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-15 15:07:10,599 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 178 transitions. [2022-04-15 15:07:10,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-15 15:07:10,600 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:07:10,600 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 15:07:10,619 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-15 15:07:10,818 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:10,818 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:07:10,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:07:10,818 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 3 times [2022-04-15 15:07:10,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:10,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1267819264] [2022-04-15 15:07:10,819 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:07:10,819 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 4 times [2022-04-15 15:07:10,819 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:07:10,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [462947389] [2022-04-15 15:07:10,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:07:10,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:07:10,831 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:07:10,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1637981573] [2022-04-15 15:07:10,831 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:07:10,831 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:10,831 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:07:10,832 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:07:10,863 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-15 15:07:10,867 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:07:10,868 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:07:10,868 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 15:07:10,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:07:10,879 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:07:11,001 INFO L272 TraceCheckUtils]: 0: Hoare triple {4637#true} call ULTIMATE.init(); {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {4637#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); {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4637#true} {4637#true} #112#return; {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L272 TraceCheckUtils]: 4: Hoare triple {4637#true} call #t~ret6 := main(); {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L290 TraceCheckUtils]: 5: Hoare triple {4637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L272 TraceCheckUtils]: 6: Hoare triple {4637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L290 TraceCheckUtils]: 7: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L290 TraceCheckUtils]: 8: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L290 TraceCheckUtils]: 9: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4637#true} {4637#true} #94#return; {4637#true} is VALID [2022-04-15 15:07:11,001 INFO L290 TraceCheckUtils]: 11: Hoare triple {4637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L272 TraceCheckUtils]: 12: Hoare triple {4637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 14: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 15: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4637#true} {4637#true} #96#return; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L272 TraceCheckUtils]: 17: Hoare triple {4637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 18: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 19: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 20: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4637#true} {4637#true} #98#return; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L272 TraceCheckUtils]: 22: Hoare triple {4637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 23: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 24: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 25: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4637#true} {4637#true} #100#return; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 27: Hoare triple {4637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4637#true} is VALID [2022-04-15 15:07:11,002 INFO L290 TraceCheckUtils]: 28: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-15 15:07:11,003 INFO L290 TraceCheckUtils]: 29: Hoare triple {4637#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4637#true} is VALID [2022-04-15 15:07:11,003 INFO L290 TraceCheckUtils]: 30: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-15 15:07:11,003 INFO L290 TraceCheckUtils]: 31: Hoare triple {4637#true} assume !(~c~0 >= ~b~0); {4735#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 15:07:11,003 INFO L290 TraceCheckUtils]: 32: Hoare triple {4735#(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; {4739#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 15:07:11,004 INFO L290 TraceCheckUtils]: 33: Hoare triple {4739#(< main_~b~0 main_~a~0)} assume !false; {4739#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 15:07:11,004 INFO L290 TraceCheckUtils]: 34: Hoare triple {4739#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4746#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 15:07:11,004 INFO L290 TraceCheckUtils]: 35: Hoare triple {4746#(< main_~b~0 main_~c~0)} assume !false; {4746#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 36: Hoare triple {4746#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 37: Hoare triple {4638#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; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 38: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 39: Hoare triple {4638#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 40: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 41: Hoare triple {4638#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 42: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L272 TraceCheckUtils]: 43: Hoare triple {4638#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 44: Hoare triple {4638#false} ~cond := #in~cond; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 45: Hoare triple {4638#false} assume 0 == ~cond; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L290 TraceCheckUtils]: 46: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-15 15:07:11,005 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 15:07:11,005 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:07:11,006 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:07:11,006 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [462947389] [2022-04-15 15:07:11,006 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:07:11,006 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1637981573] [2022-04-15 15:07:11,006 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1637981573] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:11,006 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:11,006 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:07:11,006 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:07:11,006 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1267819264] [2022-04-15 15:07:11,006 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1267819264] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:11,006 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:11,006 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:07:11,006 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1985355464] [2022-04-15 15:07:11,006 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:07:11,007 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-15 15:07:11,007 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:07:11,007 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:07:11,027 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:11,027 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:07:11,027 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:11,027 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:07:11,027 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 15:07:11,027 INFO L87 Difference]: Start difference. First operand 131 states and 178 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:07:11,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:11,483 INFO L93 Difference]: Finished difference Result 170 states and 230 transitions. [2022-04-15 15:07:11,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 15:07:11,483 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-15 15:07:11,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:07:11,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:07:11,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-15 15:07:11,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:07:11,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-15 15:07:11,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 102 transitions. [2022-04-15 15:07:11,555 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:11,556 INFO L225 Difference]: With dead ends: 170 [2022-04-15 15:07:11,556 INFO L226 Difference]: Without dead ends: 114 [2022-04-15 15:07:11,557 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-15 15:07:11,557 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 18 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:07:11,557 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 155 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 15:07:11,558 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-04-15 15:07:11,729 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 106. [2022-04-15 15:07:11,730 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:07:11,730 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-15 15:07:11,730 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-15 15:07:11,731 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-15 15:07:11,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:11,733 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-15 15:07:11,733 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-15 15:07:11,734 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:11,734 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:11,734 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-15 15:07:11,734 INFO L87 Difference]: Start difference. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-15 15:07:11,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:11,737 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-15 15:07:11,737 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-15 15:07:11,737 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:11,737 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:11,737 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:07:11,737 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:07:11,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-15 15:07:11,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 137 transitions. [2022-04-15 15:07:11,740 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 137 transitions. Word has length 47 [2022-04-15 15:07:11,740 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:07:11,740 INFO L478 AbstractCegarLoop]: Abstraction has 106 states and 137 transitions. [2022-04-15 15:07:11,740 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 15:07:11,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 137 transitions. [2022-04-15 15:07:11,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:11,890 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 137 transitions. [2022-04-15 15:07:11,891 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-15 15:07:11,891 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:07:11,891 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:07:11,906 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-15 15:07:12,096 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:12,096 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:07:12,096 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:07:12,097 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 1 times [2022-04-15 15:07:12,097 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:12,097 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [199653990] [2022-04-15 15:07:12,100 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:07:12,100 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 2 times [2022-04-15 15:07:12,100 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:07:12,100 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1356118199] [2022-04-15 15:07:12,100 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:07:12,101 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:07:12,115 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:07:12,115 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [151903455] [2022-04-15 15:07:12,115 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:07:12,116 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:12,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:07:12,131 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:07:12,141 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-15 15:07:12,182 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:07:12,182 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:07:12,182 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 15:07:12,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:07:12,190 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:07:12,308 INFO L272 TraceCheckUtils]: 0: Hoare triple {5567#true} call ULTIMATE.init(); {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L290 TraceCheckUtils]: 1: Hoare triple {5567#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); {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5567#true} {5567#true} #112#return; {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {5567#true} call #t~ret6 := main(); {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {5567#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L272 TraceCheckUtils]: 6: Hoare triple {5567#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L290 TraceCheckUtils]: 7: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L290 TraceCheckUtils]: 8: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L290 TraceCheckUtils]: 9: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,308 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5567#true} {5567#true} #94#return; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 11: Hoare triple {5567#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L272 TraceCheckUtils]: 12: Hoare triple {5567#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 14: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 15: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5567#true} {5567#true} #96#return; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L272 TraceCheckUtils]: 17: Hoare triple {5567#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 18: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 19: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 20: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5567#true} {5567#true} #98#return; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L272 TraceCheckUtils]: 22: Hoare triple {5567#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 23: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,309 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5567#true} {5567#true} #100#return; {5567#true} is VALID [2022-04-15 15:07:12,310 INFO L290 TraceCheckUtils]: 27: Hoare triple {5567#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5567#true} is VALID [2022-04-15 15:07:12,310 INFO L290 TraceCheckUtils]: 28: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-15 15:07:12,310 INFO L290 TraceCheckUtils]: 29: Hoare triple {5567#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5567#true} is VALID [2022-04-15 15:07:12,310 INFO L290 TraceCheckUtils]: 30: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-15 15:07:12,310 INFO L290 TraceCheckUtils]: 31: Hoare triple {5567#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:12,310 INFO L290 TraceCheckUtils]: 32: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:12,310 INFO L272 TraceCheckUtils]: 33: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5567#true} is VALID [2022-04-15 15:07:12,311 INFO L290 TraceCheckUtils]: 34: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-15 15:07:12,311 INFO L290 TraceCheckUtils]: 35: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-15 15:07:12,311 INFO L290 TraceCheckUtils]: 36: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,311 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:12,311 INFO L272 TraceCheckUtils]: 38: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5567#true} is VALID [2022-04-15 15:07:12,312 INFO L290 TraceCheckUtils]: 39: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-15 15:07:12,312 INFO L290 TraceCheckUtils]: 40: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-15 15:07:12,312 INFO L290 TraceCheckUtils]: 41: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,312 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:12,312 INFO L272 TraceCheckUtils]: 43: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5567#true} is VALID [2022-04-15 15:07:12,312 INFO L290 TraceCheckUtils]: 44: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-15 15:07:12,312 INFO L290 TraceCheckUtils]: 45: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-15 15:07:12,313 INFO L290 TraceCheckUtils]: 46: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-15 15:07:12,313 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:12,314 INFO L272 TraceCheckUtils]: 48: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {5717#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:12,314 INFO L290 TraceCheckUtils]: 49: Hoare triple {5717#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5721#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:12,314 INFO L290 TraceCheckUtils]: 50: Hoare triple {5721#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5568#false} is VALID [2022-04-15 15:07:12,314 INFO L290 TraceCheckUtils]: 51: Hoare triple {5568#false} assume !false; {5568#false} is VALID [2022-04-15 15:07:12,315 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-15 15:07:12,315 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:07:12,315 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:07:12,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1356118199] [2022-04-15 15:07:12,315 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:07:12,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [151903455] [2022-04-15 15:07:12,315 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [151903455] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:12,315 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:12,315 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:07:12,315 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:07:12,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [199653990] [2022-04-15 15:07:12,315 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [199653990] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:12,315 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:12,315 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:07:12,315 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1554235961] [2022-04-15 15:07:12,315 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:07:12,316 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (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 52 [2022-04-15 15:07:12,316 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:07:12,316 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (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-15 15:07:12,341 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-15 15:07:12,341 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:07:12,341 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:12,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:07:12,342 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 15:07:12,342 INFO L87 Difference]: Start difference. First operand 106 states and 137 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (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-15 15:07:12,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:12,834 INFO L93 Difference]: Finished difference Result 158 states and 221 transitions. [2022-04-15 15:07:12,835 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:07:12,835 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (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 52 [2022-04-15 15:07:12,835 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:07:12,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (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-15 15:07:12,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:07:12,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (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-15 15:07:12,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:07:12,837 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-15 15:07:12,886 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-15 15:07:12,889 INFO L225 Difference]: With dead ends: 158 [2022-04-15 15:07:12,889 INFO L226 Difference]: Without dead ends: 156 [2022-04-15 15:07:12,889 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 48 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:07:12,890 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:07:12,890 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 156 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:07:12,890 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-15 15:07:13,249 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 140. [2022-04-15 15:07:13,249 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:07:13,249 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-15 15:07:13,250 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-15 15:07:13,250 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-15 15:07:13,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:13,254 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-15 15:07:13,254 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-15 15:07:13,255 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:13,255 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:13,255 INFO L74 IsIncluded]: Start isIncluded. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-15 15:07:13,256 INFO L87 Difference]: Start difference. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-15 15:07:13,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:13,260 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-15 15:07:13,260 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-15 15:07:13,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:13,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:13,261 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:07:13,261 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:07:13,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-15 15:07:13,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 194 transitions. [2022-04-15 15:07:13,265 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 194 transitions. Word has length 52 [2022-04-15 15:07:13,265 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:07:13,265 INFO L478 AbstractCegarLoop]: Abstraction has 140 states and 194 transitions. [2022-04-15 15:07:13,265 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (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-15 15:07:13,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 140 states and 194 transitions. [2022-04-15 15:07:13,515 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 194 edges. 194 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:13,515 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 194 transitions. [2022-04-15 15:07:13,516 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-15 15:07:13,516 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:07:13,516 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:07:13,532 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-15 15:07:13,716 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:13,716 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:07:13,717 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:07:13,717 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 1 times [2022-04-15 15:07:13,717 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:13,717 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1248350983] [2022-04-15 15:07:13,717 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:07:13,717 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 2 times [2022-04-15 15:07:13,717 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:07:13,717 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [508064843] [2022-04-15 15:07:13,717 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:07:13,718 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:07:13,728 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:07:13,729 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [530391615] [2022-04-15 15:07:13,729 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:07:13,729 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:13,729 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:07:13,742 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:07:13,743 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-15 15:07:13,781 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:07:13,782 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:07:13,783 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-15 15:07:13,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:07:13,794 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:07:14,347 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {6637#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); {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L290 TraceCheckUtils]: 5: Hoare triple {6637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:14,347 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {6637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L272 TraceCheckUtils]: 17: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L272 TraceCheckUtils]: 22: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:14,348 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-15 15:07:14,349 INFO L290 TraceCheckUtils]: 27: Hoare triple {6637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,350 INFO L290 TraceCheckUtils]: 28: Hoare triple {6723#(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; {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,350 INFO L290 TraceCheckUtils]: 29: Hoare triple {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6730#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,350 INFO L290 TraceCheckUtils]: 30: Hoare triple {6730#(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; {6730#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,351 INFO L290 TraceCheckUtils]: 31: Hoare triple {6730#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,351 INFO L290 TraceCheckUtils]: 32: Hoare triple {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,351 INFO L272 TraceCheckUtils]: 33: Hoare triple {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,351 INFO L290 TraceCheckUtils]: 34: Hoare triple {6637#true} ~cond := #in~cond; {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:14,351 INFO L290 TraceCheckUtils]: 35: Hoare triple {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:14,352 INFO L290 TraceCheckUtils]: 36: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:14,352 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,352 INFO L272 TraceCheckUtils]: 38: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,352 INFO L290 TraceCheckUtils]: 39: Hoare triple {6637#true} ~cond := #in~cond; {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:14,353 INFO L290 TraceCheckUtils]: 40: Hoare triple {6747#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:14,353 INFO L290 TraceCheckUtils]: 41: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:14,353 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,353 INFO L272 TraceCheckUtils]: 43: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,353 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:14,353 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:14,353 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:14,354 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6637#true} {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,354 INFO L272 TraceCheckUtils]: 48: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:14,354 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:14,354 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:14,354 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:14,355 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6637#true} {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,355 INFO L290 TraceCheckUtils]: 53: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,355 INFO L290 TraceCheckUtils]: 54: Hoare triple {6758#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,356 INFO L290 TraceCheckUtils]: 55: Hoare triple {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,356 INFO L290 TraceCheckUtils]: 56: Hoare triple {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:07:14,356 INFO L290 TraceCheckUtils]: 57: Hoare triple {6810#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 15:07:14,357 INFO L290 TraceCheckUtils]: 58: Hoare triple {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 15:07:14,357 INFO L290 TraceCheckUtils]: 59: Hoare triple {6820#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {6827#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-15 15:07:14,358 INFO L272 TraceCheckUtils]: 60: Hoare triple {6827#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:14,358 INFO L290 TraceCheckUtils]: 61: Hoare triple {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6835#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:14,358 INFO L290 TraceCheckUtils]: 62: Hoare triple {6835#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-15 15:07:14,358 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-15 15:07:14,358 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-15 15:07:14,358 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:07:38,822 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-15 15:07:38,822 INFO L290 TraceCheckUtils]: 62: Hoare triple {6835#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-15 15:07:38,823 INFO L290 TraceCheckUtils]: 61: Hoare triple {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6835#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:38,823 INFO L272 TraceCheckUtils]: 60: Hoare triple {6851#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6831#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:38,824 INFO L290 TraceCheckUtils]: 59: Hoare triple {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {6851#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:38,824 INFO L290 TraceCheckUtils]: 58: Hoare triple {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 15:07:38,949 INFO L290 TraceCheckUtils]: 57: Hoare triple {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6855#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 15:07:38,950 INFO L290 TraceCheckUtils]: 56: Hoare triple {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:38,950 INFO L290 TraceCheckUtils]: 55: Hoare triple {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,008 INFO L290 TraceCheckUtils]: 54: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,009 INFO L290 TraceCheckUtils]: 53: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,010 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6637#true} {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,010 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:39,010 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:39,010 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:39,010 INFO L272 TraceCheckUtils]: 48: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,011 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6637#true} {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,011 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:39,011 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:39,011 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:39,011 INFO L272 TraceCheckUtils]: 43: Hoare triple {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,012 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6909#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {6872#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,013 INFO L290 TraceCheckUtils]: 41: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:39,013 INFO L290 TraceCheckUtils]: 40: Hoare triple {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:39,013 INFO L290 TraceCheckUtils]: 39: Hoare triple {6637#true} ~cond := #in~cond; {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:07:39,013 INFO L272 TraceCheckUtils]: 38: Hoare triple {6909#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,014 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {6909#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,015 INFO L290 TraceCheckUtils]: 36: Hoare triple {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:39,015 INFO L290 TraceCheckUtils]: 35: Hoare triple {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6751#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:39,015 INFO L290 TraceCheckUtils]: 34: Hoare triple {6637#true} ~cond := #in~cond; {6919#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:07:39,015 INFO L272 TraceCheckUtils]: 33: Hoare triple {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,016 INFO L290 TraceCheckUtils]: 32: Hoare triple {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,017 INFO L290 TraceCheckUtils]: 31: Hoare triple {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6926#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:07:39,017 INFO L290 TraceCheckUtils]: 30: Hoare triple {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-15 15:07:39,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {6637#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6945#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-15 15:07:39,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {6637#true} assume !false; {6637#true} is VALID [2022-04-15 15:07:39,018 INFO L290 TraceCheckUtils]: 27: Hoare triple {6637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6637#true} is VALID [2022-04-15 15:07:39,018 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-15 15:07:39,018 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:39,018 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:39,018 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L272 TraceCheckUtils]: 22: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L272 TraceCheckUtils]: 17: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 11: Hoare triple {6637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {6637#true} is VALID [2022-04-15 15:07:39,019 INFO L290 TraceCheckUtils]: 5: Hoare triple {6637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6637#true} is VALID [2022-04-15 15:07:39,020 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-15 15:07:39,020 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-15 15:07:39,020 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-15 15:07:39,020 INFO L290 TraceCheckUtils]: 1: Hoare triple {6637#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); {6637#true} is VALID [2022-04-15 15:07:39,020 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-15 15:07:39,020 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-15 15:07:39,020 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:07:39,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [508064843] [2022-04-15 15:07:39,020 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:07:39,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [530391615] [2022-04-15 15:07:39,020 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [530391615] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:07:39,021 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:07:39,021 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-15 15:07:39,021 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:07:39,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1248350983] [2022-04-15 15:07:39,021 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1248350983] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:39,021 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:39,021 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 15:07:39,021 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [187300678] [2022-04-15 15:07:39,021 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:07:39,021 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-15 15:07:39,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:07:39,022 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 15:07:39,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:39,061 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 15:07:39,061 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:39,061 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 15:07:39,062 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-15 15:07:39,062 INFO L87 Difference]: Start difference. First operand 140 states and 194 transitions. Second operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 15:07:41,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:41,014 INFO L93 Difference]: Finished difference Result 200 states and 283 transitions. [2022-04-15 15:07:41,014 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 15:07:41,015 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-15 15:07:41,015 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:07:41,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 15:07:41,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-15 15:07:41,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 15:07:41,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-15 15:07:41,019 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 131 transitions. [2022-04-15 15:07:41,165 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:41,169 INFO L225 Difference]: With dead ends: 200 [2022-04-15 15:07:41,169 INFO L226 Difference]: Without dead ends: 197 [2022-04-15 15:07:41,170 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-15 15:07:41,171 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 53 mSDsluCounter, 265 mSDsCounter, 0 mSdLazyCounter, 634 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 667 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 634 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-15 15:07:41,171 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [69 Valid, 310 Invalid, 667 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 634 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-15 15:07:41,172 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-15 15:07:41,706 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 193. [2022-04-15 15:07:41,706 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:07:41,707 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:41,708 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:41,710 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:41,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:41,735 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-15 15:07:41,735 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-15 15:07:41,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:41,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:41,736 INFO L74 IsIncluded]: Start isIncluded. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-15 15:07:41,736 INFO L87 Difference]: Start difference. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-15 15:07:41,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:41,753 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-15 15:07:41,753 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-15 15:07:41,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:41,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:41,754 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:07:41,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:07:41,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:41,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 275 transitions. [2022-04-15 15:07:41,759 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 275 transitions. Word has length 64 [2022-04-15 15:07:41,760 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:07:41,760 INFO L478 AbstractCegarLoop]: Abstraction has 193 states and 275 transitions. [2022-04-15 15:07:41,760 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-15 15:07:41,760 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 193 states and 275 transitions. [2022-04-15 15:07:42,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 275 edges. 275 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:42,109 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 275 transitions. [2022-04-15 15:07:42,109 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-15 15:07:42,109 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:07:42,109 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:07:42,126 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-15 15:07:42,319 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-15 15:07:42,320 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:07:42,320 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:07:42,320 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 3 times [2022-04-15 15:07:42,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:42,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1846456745] [2022-04-15 15:07:42,321 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:07:42,321 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 4 times [2022-04-15 15:07:42,321 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:07:42,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1066273915] [2022-04-15 15:07:42,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:07:42,322 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:07:42,332 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:07:42,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2056824140] [2022-04-15 15:07:42,332 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:07:42,333 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:42,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:07:42,333 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:07:42,334 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-15 15:07:42,375 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:07:42,375 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:07:42,375 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-15 15:07:42,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:07:42,386 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:07:42,592 INFO L272 TraceCheckUtils]: 0: Hoare triple {8229#true} call ULTIMATE.init(); {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 1: Hoare triple {8229#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); {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 2: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8229#true} {8229#true} #112#return; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L272 TraceCheckUtils]: 4: Hoare triple {8229#true} call #t~ret6 := main(); {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 5: Hoare triple {8229#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L272 TraceCheckUtils]: 6: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 7: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 9: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8229#true} {8229#true} #94#return; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 11: Hoare triple {8229#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L272 TraceCheckUtils]: 12: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 13: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 14: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,593 INFO L290 TraceCheckUtils]: 15: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8229#true} {8229#true} #96#return; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L272 TraceCheckUtils]: 17: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 18: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 19: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8229#true} {8229#true} #98#return; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L272 TraceCheckUtils]: 22: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 24: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 25: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8229#true} {8229#true} #100#return; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 27: Hoare triple {8229#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 28: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 29: Hoare triple {8229#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8229#true} is VALID [2022-04-15 15:07:42,594 INFO L290 TraceCheckUtils]: 30: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-15 15:07:42,595 INFO L290 TraceCheckUtils]: 31: Hoare triple {8229#true} assume !(~c~0 >= ~b~0); {8327#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 15:07:42,595 INFO L290 TraceCheckUtils]: 32: Hoare triple {8327#(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; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 15:07:42,595 INFO L290 TraceCheckUtils]: 33: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !false; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 15:07:42,595 INFO L290 TraceCheckUtils]: 34: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 15:07:42,596 INFO L290 TraceCheckUtils]: 35: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !false; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 15:07:42,596 INFO L290 TraceCheckUtils]: 36: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,596 INFO L290 TraceCheckUtils]: 37: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !false; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,596 INFO L272 TraceCheckUtils]: 38: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,596 INFO L290 TraceCheckUtils]: 39: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,596 INFO L290 TraceCheckUtils]: 40: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,596 INFO L290 TraceCheckUtils]: 41: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,597 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #102#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,597 INFO L272 TraceCheckUtils]: 43: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,597 INFO L290 TraceCheckUtils]: 44: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,597 INFO L290 TraceCheckUtils]: 45: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,597 INFO L290 TraceCheckUtils]: 46: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,598 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #104#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,598 INFO L272 TraceCheckUtils]: 48: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,598 INFO L290 TraceCheckUtils]: 49: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,598 INFO L290 TraceCheckUtils]: 50: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,598 INFO L290 TraceCheckUtils]: 51: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,598 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #106#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,599 INFO L272 TraceCheckUtils]: 53: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,599 INFO L290 TraceCheckUtils]: 54: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,599 INFO L290 TraceCheckUtils]: 55: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,599 INFO L290 TraceCheckUtils]: 56: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,599 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #108#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,599 INFO L290 TraceCheckUtils]: 58: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,600 INFO L290 TraceCheckUtils]: 59: Hoare triple {8345#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8415#(< 0 main_~c~0)} is VALID [2022-04-15 15:07:42,600 INFO L290 TraceCheckUtils]: 60: Hoare triple {8415#(< 0 main_~c~0)} assume !false; {8415#(< 0 main_~c~0)} is VALID [2022-04-15 15:07:42,600 INFO L290 TraceCheckUtils]: 61: Hoare triple {8415#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8415#(< 0 main_~c~0)} is VALID [2022-04-15 15:07:42,601 INFO L290 TraceCheckUtils]: 62: Hoare triple {8415#(< 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; {8425#(< 0 main_~b~0)} is VALID [2022-04-15 15:07:42,601 INFO L290 TraceCheckUtils]: 63: Hoare triple {8425#(< 0 main_~b~0)} assume !false; {8425#(< 0 main_~b~0)} is VALID [2022-04-15 15:07:42,601 INFO L290 TraceCheckUtils]: 64: Hoare triple {8425#(< 0 main_~b~0)} assume !(0 != ~b~0); {8230#false} is VALID [2022-04-15 15:07:42,601 INFO L272 TraceCheckUtils]: 65: Hoare triple {8230#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8230#false} is VALID [2022-04-15 15:07:42,601 INFO L290 TraceCheckUtils]: 66: Hoare triple {8230#false} ~cond := #in~cond; {8230#false} is VALID [2022-04-15 15:07:42,602 INFO L290 TraceCheckUtils]: 67: Hoare triple {8230#false} assume 0 == ~cond; {8230#false} is VALID [2022-04-15 15:07:42,602 INFO L290 TraceCheckUtils]: 68: Hoare triple {8230#false} assume !false; {8230#false} is VALID [2022-04-15 15:07:42,602 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-15 15:07:42,602 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:07:42,852 INFO L290 TraceCheckUtils]: 68: Hoare triple {8230#false} assume !false; {8230#false} is VALID [2022-04-15 15:07:42,852 INFO L290 TraceCheckUtils]: 67: Hoare triple {8230#false} assume 0 == ~cond; {8230#false} is VALID [2022-04-15 15:07:42,852 INFO L290 TraceCheckUtils]: 66: Hoare triple {8230#false} ~cond := #in~cond; {8230#false} is VALID [2022-04-15 15:07:42,852 INFO L272 TraceCheckUtils]: 65: Hoare triple {8230#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8230#false} is VALID [2022-04-15 15:07:42,852 INFO L290 TraceCheckUtils]: 64: Hoare triple {8425#(< 0 main_~b~0)} assume !(0 != ~b~0); {8230#false} is VALID [2022-04-15 15:07:42,853 INFO L290 TraceCheckUtils]: 63: Hoare triple {8425#(< 0 main_~b~0)} assume !false; {8425#(< 0 main_~b~0)} is VALID [2022-04-15 15:07:42,853 INFO L290 TraceCheckUtils]: 62: Hoare triple {8415#(< 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; {8425#(< 0 main_~b~0)} is VALID [2022-04-15 15:07:42,854 INFO L290 TraceCheckUtils]: 61: Hoare triple {8415#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8415#(< 0 main_~c~0)} is VALID [2022-04-15 15:07:42,854 INFO L290 TraceCheckUtils]: 60: Hoare triple {8415#(< 0 main_~c~0)} assume !false; {8415#(< 0 main_~c~0)} is VALID [2022-04-15 15:07:42,854 INFO L290 TraceCheckUtils]: 59: Hoare triple {8345#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8415#(< 0 main_~c~0)} is VALID [2022-04-15 15:07:42,855 INFO L290 TraceCheckUtils]: 58: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,855 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #108#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,855 INFO L290 TraceCheckUtils]: 56: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,855 INFO L290 TraceCheckUtils]: 55: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,856 INFO L290 TraceCheckUtils]: 54: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,856 INFO L272 TraceCheckUtils]: 53: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,856 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #106#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,856 INFO L290 TraceCheckUtils]: 51: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,856 INFO L290 TraceCheckUtils]: 50: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,856 INFO L290 TraceCheckUtils]: 49: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,856 INFO L272 TraceCheckUtils]: 48: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,857 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #104#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,857 INFO L290 TraceCheckUtils]: 46: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,857 INFO L290 TraceCheckUtils]: 45: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,857 INFO L290 TraceCheckUtils]: 44: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,857 INFO L272 TraceCheckUtils]: 43: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,858 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8229#true} {8345#(< main_~v~0 main_~c~0)} #102#return; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,858 INFO L290 TraceCheckUtils]: 41: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,858 INFO L290 TraceCheckUtils]: 40: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,858 INFO L290 TraceCheckUtils]: 39: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,858 INFO L272 TraceCheckUtils]: 38: Hoare triple {8345#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,859 INFO L290 TraceCheckUtils]: 37: Hoare triple {8345#(< main_~v~0 main_~c~0)} assume !false; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,859 INFO L290 TraceCheckUtils]: 36: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8345#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 15:07:42,859 INFO L290 TraceCheckUtils]: 35: Hoare triple {8338#(< main_~b~0 main_~c~0)} assume !false; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 15:07:42,860 INFO L290 TraceCheckUtils]: 34: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8338#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 15:07:42,860 INFO L290 TraceCheckUtils]: 33: Hoare triple {8331#(< main_~b~0 main_~a~0)} assume !false; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 15:07:42,860 INFO L290 TraceCheckUtils]: 32: Hoare triple {8327#(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; {8331#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 31: Hoare triple {8229#true} assume !(~c~0 >= ~b~0); {8327#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 30: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 29: Hoare triple {8229#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 28: Hoare triple {8229#true} assume !false; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 27: Hoare triple {8229#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8229#true} {8229#true} #100#return; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 25: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 24: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 23: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L272 TraceCheckUtils]: 22: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8229#true} {8229#true} #98#return; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 20: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,861 INFO L290 TraceCheckUtils]: 19: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 18: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L272 TraceCheckUtils]: 17: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8229#true} {8229#true} #96#return; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 15: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 14: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 13: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L272 TraceCheckUtils]: 12: Hoare triple {8229#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 11: Hoare triple {8229#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8229#true} {8229#true} #94#return; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 9: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 8: Hoare triple {8229#true} assume !(0 == ~cond); {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 7: Hoare triple {8229#true} ~cond := #in~cond; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L272 TraceCheckUtils]: 6: Hoare triple {8229#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 5: Hoare triple {8229#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L272 TraceCheckUtils]: 4: Hoare triple {8229#true} call #t~ret6 := main(); {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8229#true} {8229#true} #112#return; {8229#true} is VALID [2022-04-15 15:07:42,862 INFO L290 TraceCheckUtils]: 2: Hoare triple {8229#true} assume true; {8229#true} is VALID [2022-04-15 15:07:42,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {8229#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); {8229#true} is VALID [2022-04-15 15:07:42,863 INFO L272 TraceCheckUtils]: 0: Hoare triple {8229#true} call ULTIMATE.init(); {8229#true} is VALID [2022-04-15 15:07:42,863 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-15 15:07:42,863 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:07:42,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1066273915] [2022-04-15 15:07:42,863 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:07:42,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2056824140] [2022-04-15 15:07:42,863 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2056824140] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:07:42,863 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:07:42,863 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-15 15:07:42,863 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:07:42,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1846456745] [2022-04-15 15:07:42,864 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1846456745] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:42,864 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:42,864 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 15:07:42,864 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2118791599] [2022-04-15 15:07:42,864 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:07:42,864 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-15 15:07:42,864 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:07:42,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:42,904 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-15 15:07:42,904 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 15:07:42,905 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:42,905 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 15:07:42,905 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-15 15:07:42,905 INFO L87 Difference]: Start difference. First operand 193 states and 275 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:44,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:44,665 INFO L93 Difference]: Finished difference Result 288 states and 424 transitions. [2022-04-15 15:07:44,665 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 15:07:44,665 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-15 15:07:44,665 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:07:44,665 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:44,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-15 15:07:44,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:44,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-15 15:07:44,669 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-15 15:07:44,777 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:44,782 INFO L225 Difference]: With dead ends: 288 [2022-04-15 15:07:44,782 INFO L226 Difference]: Without dead ends: 281 [2022-04-15 15:07:44,782 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 134 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-15 15:07:44,783 INFO L913 BasicCegarLoop]: 87 mSDtfsCounter, 46 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 83 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 318 SdHoareTripleChecker+Invalid, 363 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 83 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 15:07:44,784 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 318 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [83 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 15:07:44,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 281 states. [2022-04-15 15:07:45,159 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 281 to 208. [2022-04-15 15:07:45,160 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:07:45,160 INFO L82 GeneralOperation]: Start isEquivalent. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:45,160 INFO L74 IsIncluded]: Start isIncluded. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:45,161 INFO L87 Difference]: Start difference. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:45,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:45,168 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-15 15:07:45,168 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-15 15:07:45,169 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:45,169 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:45,170 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-15 15:07:45,170 INFO L87 Difference]: Start difference. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-15 15:07:45,178 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:45,178 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-15 15:07:45,178 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-15 15:07:45,179 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:45,179 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:45,179 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:07:45,179 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:07:45,179 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:45,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 296 transitions. [2022-04-15 15:07:45,184 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 296 transitions. Word has length 69 [2022-04-15 15:07:45,184 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:07:45,184 INFO L478 AbstractCegarLoop]: Abstraction has 208 states and 296 transitions. [2022-04-15 15:07:45,184 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:45,184 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 296 transitions. [2022-04-15 15:07:45,580 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:45,580 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 296 transitions. [2022-04-15 15:07:45,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-15 15:07:45,581 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:07:45,581 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:07:45,601 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-15 15:07:45,781 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-15 15:07:45,782 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:07:45,782 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:07:45,782 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 1 times [2022-04-15 15:07:45,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:45,782 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [58400878] [2022-04-15 15:07:45,782 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:07:45,782 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 2 times [2022-04-15 15:07:45,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:07:45,783 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1937271458] [2022-04-15 15:07:45,783 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:07:45,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:07:45,791 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:07:45,791 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1001777600] [2022-04-15 15:07:45,792 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:07:45,792 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:45,792 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:07:45,797 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:07:45,798 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-15 15:07:45,849 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:07:45,849 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:07:45,850 INFO L263 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 15:07:45,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:07:45,858 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:07:46,038 INFO L272 TraceCheckUtils]: 0: Hoare triple {10231#true} call ULTIMATE.init(); {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L290 TraceCheckUtils]: 1: Hoare triple {10231#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); {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L290 TraceCheckUtils]: 2: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10231#true} {10231#true} #112#return; {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L272 TraceCheckUtils]: 4: Hoare triple {10231#true} call #t~ret6 := main(); {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L290 TraceCheckUtils]: 5: Hoare triple {10231#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L272 TraceCheckUtils]: 6: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L290 TraceCheckUtils]: 7: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,038 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10231#true} {10231#true} #94#return; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 11: Hoare triple {10231#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L272 TraceCheckUtils]: 12: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 13: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 14: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 15: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10231#true} {10231#true} #96#return; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L272 TraceCheckUtils]: 17: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 18: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 19: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 20: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10231#true} {10231#true} #98#return; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L272 TraceCheckUtils]: 22: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 23: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 24: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,040 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10231#true} {10231#true} #100#return; {10231#true} is VALID [2022-04-15 15:07:46,040 INFO L290 TraceCheckUtils]: 27: Hoare triple {10231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10231#true} is VALID [2022-04-15 15:07:46,040 INFO L290 TraceCheckUtils]: 28: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-15 15:07:46,040 INFO L290 TraceCheckUtils]: 29: Hoare triple {10231#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10231#true} is VALID [2022-04-15 15:07:46,040 INFO L290 TraceCheckUtils]: 30: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-15 15:07:46,040 INFO L290 TraceCheckUtils]: 31: Hoare triple {10231#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:46,040 INFO L290 TraceCheckUtils]: 32: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:46,041 INFO L272 TraceCheckUtils]: 33: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,041 INFO L290 TraceCheckUtils]: 34: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,041 INFO L290 TraceCheckUtils]: 35: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,041 INFO L290 TraceCheckUtils]: 36: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,041 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:46,041 INFO L272 TraceCheckUtils]: 38: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,041 INFO L290 TraceCheckUtils]: 39: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,042 INFO L290 TraceCheckUtils]: 40: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,042 INFO L290 TraceCheckUtils]: 41: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,042 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:46,042 INFO L272 TraceCheckUtils]: 43: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,042 INFO L290 TraceCheckUtils]: 44: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,042 INFO L290 TraceCheckUtils]: 45: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,042 INFO L290 TraceCheckUtils]: 46: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,043 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:46,043 INFO L272 TraceCheckUtils]: 48: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,043 INFO L290 TraceCheckUtils]: 49: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,043 INFO L290 TraceCheckUtils]: 50: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,043 INFO L290 TraceCheckUtils]: 51: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,044 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10231#true} {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #108#return; {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 15:07:46,044 INFO L290 TraceCheckUtils]: 53: Hoare triple {10329#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-15 15:07:46,044 INFO L290 TraceCheckUtils]: 54: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} assume !false; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-15 15:07:46,045 INFO L272 TraceCheckUtils]: 55: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,045 INFO L290 TraceCheckUtils]: 56: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,045 INFO L290 TraceCheckUtils]: 57: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,045 INFO L290 TraceCheckUtils]: 58: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,045 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10231#true} {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #102#return; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-15 15:07:46,045 INFO L272 TraceCheckUtils]: 60: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,045 INFO L290 TraceCheckUtils]: 61: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,045 INFO L290 TraceCheckUtils]: 62: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,046 INFO L290 TraceCheckUtils]: 63: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,046 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10231#true} {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #104#return; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-15 15:07:46,046 INFO L272 TraceCheckUtils]: 65: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,046 INFO L290 TraceCheckUtils]: 66: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,046 INFO L290 TraceCheckUtils]: 67: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,046 INFO L290 TraceCheckUtils]: 68: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,047 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10231#true} {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #106#return; {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-15 15:07:46,048 INFO L272 TraceCheckUtils]: 70: Hoare triple {10396#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:46,048 INFO L290 TraceCheckUtils]: 71: Hoare triple {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10452#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:46,048 INFO L290 TraceCheckUtils]: 72: Hoare triple {10452#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10232#false} is VALID [2022-04-15 15:07:46,048 INFO L290 TraceCheckUtils]: 73: Hoare triple {10232#false} assume !false; {10232#false} is VALID [2022-04-15 15:07:46,048 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 5 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-15 15:07:46,049 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:07:46,272 INFO L290 TraceCheckUtils]: 73: Hoare triple {10232#false} assume !false; {10232#false} is VALID [2022-04-15 15:07:46,274 INFO L290 TraceCheckUtils]: 72: Hoare triple {10452#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10232#false} is VALID [2022-04-15 15:07:46,274 INFO L290 TraceCheckUtils]: 71: Hoare triple {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10452#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:46,275 INFO L272 TraceCheckUtils]: 70: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10448#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:46,275 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,275 INFO L290 TraceCheckUtils]: 68: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,275 INFO L290 TraceCheckUtils]: 67: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,275 INFO L290 TraceCheckUtils]: 66: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,275 INFO L272 TraceCheckUtils]: 65: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,276 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,276 INFO L290 TraceCheckUtils]: 63: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,276 INFO L290 TraceCheckUtils]: 62: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,276 INFO L290 TraceCheckUtils]: 61: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,276 INFO L272 TraceCheckUtils]: 60: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,277 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,277 INFO L290 TraceCheckUtils]: 58: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,277 INFO L290 TraceCheckUtils]: 57: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,277 INFO L290 TraceCheckUtils]: 56: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,277 INFO L272 TraceCheckUtils]: 55: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,277 INFO L290 TraceCheckUtils]: 54: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,279 INFO L290 TraceCheckUtils]: 53: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,280 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #108#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,280 INFO L290 TraceCheckUtils]: 51: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,280 INFO L290 TraceCheckUtils]: 50: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,280 INFO L290 TraceCheckUtils]: 49: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,280 INFO L272 TraceCheckUtils]: 48: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,281 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,281 INFO L290 TraceCheckUtils]: 46: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,281 INFO L290 TraceCheckUtils]: 45: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,281 INFO L290 TraceCheckUtils]: 44: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,281 INFO L272 TraceCheckUtils]: 43: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,281 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,281 INFO L290 TraceCheckUtils]: 41: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,281 INFO L290 TraceCheckUtils]: 40: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,282 INFO L290 TraceCheckUtils]: 39: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,282 INFO L272 TraceCheckUtils]: 38: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,282 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10231#true} {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,282 INFO L290 TraceCheckUtils]: 36: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,282 INFO L290 TraceCheckUtils]: 35: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,282 INFO L290 TraceCheckUtils]: 34: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,282 INFO L272 TraceCheckUtils]: 33: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 32: Hoare triple {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 31: Hoare triple {10231#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10468#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 30: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 29: Hoare triple {10231#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 28: Hoare triple {10231#true} assume !false; {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 27: Hoare triple {10231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10231#true} {10231#true} #100#return; {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 25: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 24: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,283 INFO L290 TraceCheckUtils]: 23: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L272 TraceCheckUtils]: 22: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10231#true} {10231#true} #98#return; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 20: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 19: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 18: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L272 TraceCheckUtils]: 17: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10231#true} {10231#true} #96#return; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 15: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 14: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 13: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L272 TraceCheckUtils]: 12: Hoare triple {10231#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 11: Hoare triple {10231#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10231#true} {10231#true} #94#return; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 9: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 8: Hoare triple {10231#true} assume !(0 == ~cond); {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 7: Hoare triple {10231#true} ~cond := #in~cond; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L272 TraceCheckUtils]: 6: Hoare triple {10231#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L290 TraceCheckUtils]: 5: Hoare triple {10231#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10231#true} is VALID [2022-04-15 15:07:46,284 INFO L272 TraceCheckUtils]: 4: Hoare triple {10231#true} call #t~ret6 := main(); {10231#true} is VALID [2022-04-15 15:07:46,285 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10231#true} {10231#true} #112#return; {10231#true} is VALID [2022-04-15 15:07:46,285 INFO L290 TraceCheckUtils]: 2: Hoare triple {10231#true} assume true; {10231#true} is VALID [2022-04-15 15:07:46,285 INFO L290 TraceCheckUtils]: 1: Hoare triple {10231#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); {10231#true} is VALID [2022-04-15 15:07:46,285 INFO L272 TraceCheckUtils]: 0: Hoare triple {10231#true} call ULTIMATE.init(); {10231#true} is VALID [2022-04-15 15:07:46,285 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 113 trivial. 0 not checked. [2022-04-15 15:07:46,285 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:07:46,285 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1937271458] [2022-04-15 15:07:46,285 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:07:46,285 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1001777600] [2022-04-15 15:07:46,285 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1001777600] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:07:46,285 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:07:46,285 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-15 15:07:46,285 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:07:46,286 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [58400878] [2022-04-15 15:07:46,286 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [58400878] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:46,286 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:46,286 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:07:46,286 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [975754020] [2022-04-15 15:07:46,286 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:07:46,286 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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 74 [2022-04-15 15:07:46,286 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:07:46,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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-15 15:07:46,318 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:46,318 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:07:46,318 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:46,318 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:07:46,318 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-15 15:07:46,318 INFO L87 Difference]: Start difference. First operand 208 states and 296 transitions. Second operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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-15 15:07:46,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:46,787 INFO L93 Difference]: Finished difference Result 214 states and 301 transitions. [2022-04-15 15:07:46,787 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:07:46,788 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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 74 [2022-04-15 15:07:46,788 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:07:46,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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-15 15:07:46,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 15:07:46,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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-15 15:07:46,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 15:07:46,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-15 15:07:46,835 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:46,838 INFO L225 Difference]: With dead ends: 214 [2022-04-15 15:07:46,839 INFO L226 Difference]: Without dead ends: 212 [2022-04-15 15:07:46,839 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 140 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-15 15:07:46,839 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 9 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:07:46,839 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 139 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:07:46,840 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-15 15:07:47,174 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-15 15:07:47,174 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:07:47,183 INFO L82 GeneralOperation]: Start isEquivalent. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:47,184 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:47,184 INFO L87 Difference]: Start difference. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:47,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:47,188 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-15 15:07:47,188 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-15 15:07:47,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:47,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:47,190 INFO L74 IsIncluded]: Start isIncluded. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-15 15:07:47,190 INFO L87 Difference]: Start difference. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-15 15:07:47,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:47,194 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-15 15:07:47,194 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-15 15:07:47,194 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:07:47,195 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:07:47,195 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:07:47,195 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:07:47,195 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:07:47,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 299 transitions. [2022-04-15 15:07:47,199 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 299 transitions. Word has length 74 [2022-04-15 15:07:47,199 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:07:47,199 INFO L478 AbstractCegarLoop]: Abstraction has 212 states and 299 transitions. [2022-04-15 15:07:47,200 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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-15 15:07:47,200 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 212 states and 299 transitions. [2022-04-15 15:07:47,637 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 299 edges. 299 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:47,643 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-15 15:07:47,643 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-04-15 15:07:47,643 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:07:47,644 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:07:47,660 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-15 15:07:47,860 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-15 15:07:47,860 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:07:47,860 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:07:47,860 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 1 times [2022-04-15 15:07:47,860 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:47,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2138024319] [2022-04-15 15:07:47,861 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:07:47,861 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 2 times [2022-04-15 15:07:47,861 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:07:47,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [73356999] [2022-04-15 15:07:47,861 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:07:47,861 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:07:47,894 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:07:47,895 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [251662973] [2022-04-15 15:07:47,895 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:07:47,895 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:07:47,895 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:07:47,896 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:07:47,896 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-15 15:07:47,959 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:07:47,960 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:07:47,960 INFO L263 TraceCheckSpWp]: Trace formula consists of 209 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 15:07:47,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:07:47,973 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:07:48,161 INFO L272 TraceCheckUtils]: 0: Hoare triple {11959#true} call ULTIMATE.init(); {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {11959#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); {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L290 TraceCheckUtils]: 2: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11959#true} {11959#true} #112#return; {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L272 TraceCheckUtils]: 4: Hoare triple {11959#true} call #t~ret6 := main(); {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L290 TraceCheckUtils]: 5: Hoare triple {11959#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L272 TraceCheckUtils]: 6: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L290 TraceCheckUtils]: 7: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:48,161 INFO L290 TraceCheckUtils]: 8: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 9: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11959#true} {11959#true} #94#return; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 11: Hoare triple {11959#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L272 TraceCheckUtils]: 12: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 13: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 14: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11959#true} {11959#true} #96#return; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L272 TraceCheckUtils]: 17: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 18: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 19: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 20: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11959#true} {11959#true} #98#return; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L272 TraceCheckUtils]: 22: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 23: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 24: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:48,162 INFO L290 TraceCheckUtils]: 25: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11959#true} {11959#true} #100#return; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 27: Hoare triple {11959#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 28: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 29: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 31: Hoare triple {11959#true} assume !(~c~0 >= ~b~0); {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 32: Hoare triple {11959#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; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 33: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 34: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 35: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 36: Hoare triple {11959#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 37: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L272 TraceCheckUtils]: 38: Hoare triple {11959#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 39: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 40: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L290 TraceCheckUtils]: 41: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,163 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11959#true} {11959#true} #102#return; {11959#true} is VALID [2022-04-15 15:07:48,164 INFO L272 TraceCheckUtils]: 43: Hoare triple {11959#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:48,164 INFO L290 TraceCheckUtils]: 44: Hoare triple {11959#true} ~cond := #in~cond; {12096#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:48,164 INFO L290 TraceCheckUtils]: 45: Hoare triple {12096#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:48,164 INFO L290 TraceCheckUtils]: 46: Hoare triple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:48,165 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} {11959#true} #104#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:48,165 INFO L272 TraceCheckUtils]: 48: Hoare triple {12107#(= 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)); {11959#true} is VALID [2022-04-15 15:07:48,165 INFO L290 TraceCheckUtils]: 49: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:48,165 INFO L290 TraceCheckUtils]: 50: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:48,165 INFO L290 TraceCheckUtils]: 51: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,166 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:48,166 INFO L272 TraceCheckUtils]: 53: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:48,166 INFO L290 TraceCheckUtils]: 54: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:48,166 INFO L290 TraceCheckUtils]: 55: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:48,166 INFO L290 TraceCheckUtils]: 56: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:48,167 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:48,167 INFO L290 TraceCheckUtils]: 58: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:48,167 INFO L290 TraceCheckUtils]: 59: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:48,168 INFO L290 TraceCheckUtils]: 60: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:48,168 INFO L290 TraceCheckUtils]: 61: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:48,168 INFO L290 TraceCheckUtils]: 62: Hoare triple {12107#(= 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; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:48,169 INFO L290 TraceCheckUtils]: 63: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:48,169 INFO L290 TraceCheckUtils]: 64: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:48,169 INFO L290 TraceCheckUtils]: 65: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:48,170 INFO L290 TraceCheckUtils]: 66: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:48,170 INFO L290 TraceCheckUtils]: 67: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:48,171 INFO L272 TraceCheckUtils]: 68: Hoare triple {12153#(= 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)); {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:48,171 INFO L290 TraceCheckUtils]: 69: Hoare triple {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12176#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:48,171 INFO L290 TraceCheckUtils]: 70: Hoare triple {12176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11960#false} is VALID [2022-04-15 15:07:48,171 INFO L290 TraceCheckUtils]: 71: Hoare triple {11960#false} assume !false; {11960#false} is VALID [2022-04-15 15:07:48,172 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-15 15:07:48,172 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:07:58,673 INFO L290 TraceCheckUtils]: 71: Hoare triple {11960#false} assume !false; {11960#false} is VALID [2022-04-15 15:07:58,674 INFO L290 TraceCheckUtils]: 70: Hoare triple {12176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11960#false} is VALID [2022-04-15 15:07:58,674 INFO L290 TraceCheckUtils]: 69: Hoare triple {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12176#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:07:58,675 INFO L272 TraceCheckUtils]: 68: Hoare triple {12153#(= 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)); {12172#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:07:58,675 INFO L290 TraceCheckUtils]: 67: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:58,676 INFO L290 TraceCheckUtils]: 66: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:58,676 INFO L290 TraceCheckUtils]: 65: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:58,676 INFO L290 TraceCheckUtils]: 64: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:58,677 INFO L290 TraceCheckUtils]: 63: Hoare triple {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:58,677 INFO L290 TraceCheckUtils]: 62: Hoare triple {12107#(= 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; {12153#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:07:58,677 INFO L290 TraceCheckUtils]: 61: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:58,678 INFO L290 TraceCheckUtils]: 60: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:58,678 INFO L290 TraceCheckUtils]: 59: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:58,678 INFO L290 TraceCheckUtils]: 58: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:58,679 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:58,679 INFO L290 TraceCheckUtils]: 56: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,679 INFO L290 TraceCheckUtils]: 55: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:58,679 INFO L290 TraceCheckUtils]: 54: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:58,679 INFO L272 TraceCheckUtils]: 53: Hoare triple {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:58,680 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11959#true} {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:58,680 INFO L290 TraceCheckUtils]: 51: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,680 INFO L290 TraceCheckUtils]: 50: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:58,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:58,680 INFO L272 TraceCheckUtils]: 48: Hoare triple {12107#(= 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)); {11959#true} is VALID [2022-04-15 15:07:58,681 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} {11959#true} #104#return; {12107#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:07:58,681 INFO L290 TraceCheckUtils]: 46: Hoare triple {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:58,681 INFO L290 TraceCheckUtils]: 45: Hoare triple {12264#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 44: Hoare triple {11959#true} ~cond := #in~cond; {12264#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:07:58,682 INFO L272 TraceCheckUtils]: 43: Hoare triple {11959#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11959#true} {11959#true} #102#return; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 41: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 40: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 39: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L272 TraceCheckUtils]: 38: Hoare triple {11959#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 37: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 36: Hoare triple {11959#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 35: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 34: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 33: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 32: Hoare triple {11959#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; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 31: Hoare triple {11959#true} assume !(~c~0 >= ~b~0); {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 30: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 29: Hoare triple {11959#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11959#true} is VALID [2022-04-15 15:07:58,682 INFO L290 TraceCheckUtils]: 28: Hoare triple {11959#true} assume !false; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 27: Hoare triple {11959#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11959#true} {11959#true} #100#return; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 25: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 24: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 23: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L272 TraceCheckUtils]: 22: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11959#true} {11959#true} #98#return; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 20: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 19: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 18: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L272 TraceCheckUtils]: 17: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11959#true} {11959#true} #96#return; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 15: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L272 TraceCheckUtils]: 12: Hoare triple {11959#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L290 TraceCheckUtils]: 11: Hoare triple {11959#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11959#true} is VALID [2022-04-15 15:07:58,683 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11959#true} {11959#true} #94#return; {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {11959#true} assume !(0 == ~cond); {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {11959#true} ~cond := #in~cond; {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {11959#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {11959#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L272 TraceCheckUtils]: 4: Hoare triple {11959#true} call #t~ret6 := main(); {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11959#true} {11959#true} #112#return; {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L290 TraceCheckUtils]: 2: Hoare triple {11959#true} assume true; {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {11959#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); {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L272 TraceCheckUtils]: 0: Hoare triple {11959#true} call ULTIMATE.init(); {11959#true} is VALID [2022-04-15 15:07:58,684 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-15 15:07:58,684 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:07:58,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [73356999] [2022-04-15 15:07:58,684 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:07:58,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [251662973] [2022-04-15 15:07:58,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [251662973] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:07:58,685 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:07:58,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-15 15:07:58,685 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:07:58,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2138024319] [2022-04-15 15:07:58,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2138024319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:07:58,685 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:07:58,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 15:07:58,685 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1254163757] [2022-04-15 15:07:58,685 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:07:58,685 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-15 15:07:58,686 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:07:58,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:58,722 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:58,722 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 15:07:58,722 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:07:58,722 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 15:07:58,722 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-15 15:07:58,722 INFO L87 Difference]: Start difference. First operand 212 states and 299 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:59,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:07:59,631 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-04-15 15:07:59,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 15:07:59,632 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-15 15:07:59,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:07:59,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:59,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-15 15:07:59,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:07:59,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-15 15:07:59,633 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 58 transitions. [2022-04-15 15:07:59,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:07:59,667 INFO L225 Difference]: With dead ends: 226 [2022-04-15 15:07:59,667 INFO L226 Difference]: Without dead ends: 224 [2022-04-15 15:07:59,667 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 136 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-15 15:07:59,668 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 21 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 122 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 15:07:59,669 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 173 Invalid, 122 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 15:07:59,670 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-15 15:08:00,028 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 224. [2022-04-15 15:08:00,028 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:08:00,029 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:08:00,029 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:08:00,029 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:08:00,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:00,034 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-15 15:08:00,034 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-15 15:08:00,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:08:00,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:08:00,035 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-15 15:08:00,035 INFO L87 Difference]: Start difference. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-15 15:08:00,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:00,039 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-15 15:08:00,039 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-15 15:08:00,040 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:08:00,040 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:08:00,040 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:08:00,040 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:08:00,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-15 15:08:00,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 308 transitions. [2022-04-15 15:08:00,045 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 308 transitions. Word has length 72 [2022-04-15 15:08:00,045 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:08:00,045 INFO L478 AbstractCegarLoop]: Abstraction has 224 states and 308 transitions. [2022-04-15 15:08:00,045 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 15:08:00,045 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 308 transitions. [2022-04-15 15:08:00,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 308 edges. 308 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:08:00,624 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-15 15:08:00,625 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-15 15:08:00,625 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:08:00,625 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 3, 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-15 15:08:00,643 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-15 15:08:00,825 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-15 15:08:00,826 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:08:00,826 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:08:00,826 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 3 times [2022-04-15 15:08:00,826 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:08:00,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1249488820] [2022-04-15 15:08:00,826 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:08:00,826 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 4 times [2022-04-15 15:08:00,826 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:08:00,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416157650] [2022-04-15 15:08:00,827 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:08:00,827 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:08:00,835 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:08:00,835 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [184148814] [2022-04-15 15:08:00,835 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:08:00,835 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:08:00,835 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:08:00,839 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:08:00,839 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-15 15:08:00,884 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:08:00,884 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:08:00,885 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-15 15:08:00,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:08:00,895 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:08:01,059 INFO L272 TraceCheckUtils]: 0: Hoare triple {13754#true} call ULTIMATE.init(); {13754#true} is VALID [2022-04-15 15:08:01,059 INFO L290 TraceCheckUtils]: 1: Hoare triple {13754#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); {13754#true} is VALID [2022-04-15 15:08:01,059 INFO L290 TraceCheckUtils]: 2: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,059 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13754#true} {13754#true} #112#return; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L272 TraceCheckUtils]: 4: Hoare triple {13754#true} call #t~ret6 := main(); {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 5: Hoare triple {13754#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L272 TraceCheckUtils]: 6: Hoare triple {13754#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 7: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 8: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 9: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13754#true} {13754#true} #94#return; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 11: Hoare triple {13754#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L272 TraceCheckUtils]: 12: Hoare triple {13754#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 13: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 14: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 15: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13754#true} {13754#true} #96#return; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L272 TraceCheckUtils]: 17: Hoare triple {13754#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 18: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 19: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13754#true} {13754#true} #98#return; {13754#true} is VALID [2022-04-15 15:08:01,060 INFO L272 TraceCheckUtils]: 22: Hoare triple {13754#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 23: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 24: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 25: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13754#true} {13754#true} #100#return; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 27: Hoare triple {13754#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 28: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 29: Hoare triple {13754#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 30: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 31: Hoare triple {13754#true} assume !(~c~0 >= ~b~0); {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 32: Hoare triple {13754#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; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 33: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 34: Hoare triple {13754#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13754#true} is VALID [2022-04-15 15:08:01,061 INFO L290 TraceCheckUtils]: 35: Hoare triple {13754#true} assume !false; {13754#true} is VALID [2022-04-15 15:08:01,066 INFO L290 TraceCheckUtils]: 36: Hoare triple {13754#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 15:08:01,066 INFO L290 TraceCheckUtils]: 37: Hoare triple {13867#(<= main_~v~0 main_~b~0)} assume !false; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 15:08:01,066 INFO L272 TraceCheckUtils]: 38: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,066 INFO L290 TraceCheckUtils]: 39: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,066 INFO L290 TraceCheckUtils]: 40: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,066 INFO L290 TraceCheckUtils]: 41: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,067 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #102#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 15:08:01,067 INFO L272 TraceCheckUtils]: 43: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,067 INFO L290 TraceCheckUtils]: 44: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,067 INFO L290 TraceCheckUtils]: 45: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,067 INFO L290 TraceCheckUtils]: 46: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #104#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 15:08:01,068 INFO L272 TraceCheckUtils]: 48: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L290 TraceCheckUtils]: 49: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L290 TraceCheckUtils]: 50: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L290 TraceCheckUtils]: 51: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #106#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 15:08:01,068 INFO L272 TraceCheckUtils]: 53: Hoare triple {13867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L290 TraceCheckUtils]: 54: Hoare triple {13754#true} ~cond := #in~cond; {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L290 TraceCheckUtils]: 55: Hoare triple {13754#true} assume !(0 == ~cond); {13754#true} is VALID [2022-04-15 15:08:01,068 INFO L290 TraceCheckUtils]: 56: Hoare triple {13754#true} assume true; {13754#true} is VALID [2022-04-15 15:08:01,069 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {13754#true} {13867#(<= main_~v~0 main_~b~0)} #108#return; {13867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 15:08:01,069 INFO L290 TraceCheckUtils]: 58: Hoare triple {13867#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {13934#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-15 15:08:01,070 INFO L290 TraceCheckUtils]: 59: Hoare triple {13934#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13938#(< main_~c~0 main_~b~0)} is VALID [2022-04-15 15:08:01,070 INFO L290 TraceCheckUtils]: 60: Hoare triple {13938#(< main_~c~0 main_~b~0)} assume !false; {13938#(< main_~c~0 main_~b~0)} is VALID [2022-04-15 15:08:01,070 INFO L290 TraceCheckUtils]: 61: Hoare triple {13938#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13755#false} is VALID [2022-04-15 15:08:01,070 INFO L290 TraceCheckUtils]: 62: Hoare triple {13755#false} assume !false; {13755#false} is VALID [2022-04-15 15:08:01,070 INFO L272 TraceCheckUtils]: 63: Hoare triple {13755#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13755#false} is VALID [2022-04-15 15:08:01,070 INFO L290 TraceCheckUtils]: 64: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-15 15:08:01,070 INFO L290 TraceCheckUtils]: 65: Hoare triple {13755#false} assume !(0 == ~cond); {13755#false} is VALID [2022-04-15 15:08:01,070 INFO L290 TraceCheckUtils]: 66: Hoare triple {13755#false} assume true; {13755#false} is VALID [2022-04-15 15:08:01,070 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13755#false} {13755#false} #102#return; {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L272 TraceCheckUtils]: 68: Hoare triple {13755#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L290 TraceCheckUtils]: 69: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L290 TraceCheckUtils]: 70: Hoare triple {13755#false} assume !(0 == ~cond); {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L290 TraceCheckUtils]: 71: Hoare triple {13755#false} assume true; {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13755#false} {13755#false} #104#return; {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L272 TraceCheckUtils]: 73: Hoare triple {13755#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L290 TraceCheckUtils]: 74: Hoare triple {13755#false} ~cond := #in~cond; {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L290 TraceCheckUtils]: 75: Hoare triple {13755#false} assume 0 == ~cond; {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L290 TraceCheckUtils]: 76: Hoare triple {13755#false} assume !false; {13755#false} is VALID [2022-04-15 15:08:01,071 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-15 15:08:01,071 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:08:01,071 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:08:01,071 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1416157650] [2022-04-15 15:08:01,071 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:08:01,071 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [184148814] [2022-04-15 15:08:01,072 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [184148814] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:08:01,072 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:08:01,072 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:08:01,072 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:08:01,072 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1249488820] [2022-04-15 15:08:01,072 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1249488820] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:08:01,072 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:08:01,072 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:08:01,072 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1880828375] [2022-04-15 15:08:01,072 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:08:01,072 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-15 15:08:01,073 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:08:01,073 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-15 15:08:01,104 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:08:01,104 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:08:01,104 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:08:01,104 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:08:01,104 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 15:08:01,105 INFO L87 Difference]: Start difference. First operand 224 states and 308 transitions. Second operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-15 15:08:01,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:01,873 INFO L93 Difference]: Finished difference Result 367 states and 500 transitions. [2022-04-15 15:08:01,873 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 15:08:01,873 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-15 15:08:01,873 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:08:01,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-15 15:08:01,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-15 15:08:01,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-15 15:08:01,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-15 15:08:01,875 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 85 transitions. [2022-04-15 15:08:01,933 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:08:01,937 INFO L225 Difference]: With dead ends: 367 [2022-04-15 15:08:01,937 INFO L226 Difference]: Without dead ends: 230 [2022-04-15 15:08:01,938 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 74 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:08:01,938 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 3 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:08:01,938 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 109 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:08:01,939 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-15 15:08:02,512 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 214. [2022-04-15 15:08:02,512 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:08:02,512 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-15 15:08:02,512 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-15 15:08:02,513 INFO L87 Difference]: Start difference. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-15 15:08:02,517 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:02,517 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-15 15:08:02,517 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-15 15:08:02,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:08:02,518 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:08:02,518 INFO L74 IsIncluded]: Start isIncluded. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-15 15:08:02,518 INFO L87 Difference]: Start difference. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-15 15:08:02,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:02,522 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-15 15:08:02,522 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-15 15:08:02,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:08:02,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:08:02,523 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:08:02,523 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:08:02,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-15 15:08:02,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 289 transitions. [2022-04-15 15:08:02,527 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 289 transitions. Word has length 77 [2022-04-15 15:08:02,527 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:08:02,527 INFO L478 AbstractCegarLoop]: Abstraction has 214 states and 289 transitions. [2022-04-15 15:08:02,527 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-15 15:08:02,527 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 214 states and 289 transitions. [2022-04-15 15:08:03,006 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 289 edges. 289 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:08:03,006 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 289 transitions. [2022-04-15 15:08:03,006 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-15 15:08:03,007 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:08:03,007 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 4, 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, 1, 1, 1] [2022-04-15 15:08:03,032 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-15 15:08:03,222 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-15 15:08:03,223 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:08:03,223 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:08:03,223 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 5 times [2022-04-15 15:08:03,223 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:08:03,223 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [594569488] [2022-04-15 15:08:03,223 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:08:03,223 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 6 times [2022-04-15 15:08:03,223 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:08:03,223 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [508549730] [2022-04-15 15:08:03,224 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:08:03,224 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:08:03,246 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:08:03,246 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1387020911] [2022-04-15 15:08:03,246 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 15:08:03,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:08:03,247 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:08:03,248 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:08:03,249 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-15 15:08:03,304 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-15 15:08:03,304 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:08:03,305 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-15 15:08:03,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:08:03,321 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:08:04,157 INFO L272 TraceCheckUtils]: 0: Hoare triple {15614#true} call ULTIMATE.init(); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 1: Hoare triple {15614#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); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 2: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15614#true} {15614#true} #112#return; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L272 TraceCheckUtils]: 4: Hoare triple {15614#true} call #t~ret6 := main(); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {15614#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L272 TraceCheckUtils]: 6: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 9: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15614#true} {15614#true} #94#return; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {15614#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L272 TraceCheckUtils]: 12: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 13: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 14: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 15: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15614#true} {15614#true} #96#return; {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L272 TraceCheckUtils]: 17: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,158 INFO L290 TraceCheckUtils]: 18: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L290 TraceCheckUtils]: 19: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L290 TraceCheckUtils]: 20: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15614#true} {15614#true} #98#return; {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L272 TraceCheckUtils]: 22: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L290 TraceCheckUtils]: 23: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L290 TraceCheckUtils]: 24: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L290 TraceCheckUtils]: 25: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,159 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15614#true} {15614#true} #100#return; {15614#true} is VALID [2022-04-15 15:08:04,163 INFO L290 TraceCheckUtils]: 27: Hoare triple {15614#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 15:08:04,163 INFO L290 TraceCheckUtils]: 28: Hoare triple {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 15:08:04,163 INFO L290 TraceCheckUtils]: 29: Hoare triple {15700#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 15:08:04,164 INFO L290 TraceCheckUtils]: 30: Hoare triple {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 15:08:04,164 INFO L290 TraceCheckUtils]: 31: Hoare triple {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 15:08:04,165 INFO L290 TraceCheckUtils]: 32: Hoare triple {15707#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:08:04,165 INFO L290 TraceCheckUtils]: 33: Hoare triple {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:08:04,165 INFO L290 TraceCheckUtils]: 34: Hoare triple {15717#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:08:04,166 INFO L290 TraceCheckUtils]: 35: Hoare triple {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !false; {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:08:04,166 INFO L290 TraceCheckUtils]: 36: Hoare triple {15724#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 15:08:04,166 INFO L290 TraceCheckUtils]: 37: Hoare triple {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 15:08:04,167 INFO L272 TraceCheckUtils]: 38: Hoare triple {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,167 INFO L290 TraceCheckUtils]: 39: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,167 INFO L290 TraceCheckUtils]: 40: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,167 INFO L290 TraceCheckUtils]: 41: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,167 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15614#true} {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 15:08:04,167 INFO L272 TraceCheckUtils]: 43: Hoare triple {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,167 INFO L290 TraceCheckUtils]: 44: Hoare triple {15614#true} ~cond := #in~cond; {15756#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:08:04,168 INFO L290 TraceCheckUtils]: 45: Hoare triple {15756#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:04,168 INFO L290 TraceCheckUtils]: 46: Hoare triple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:04,169 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} {15731#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 15:08:04,169 INFO L272 TraceCheckUtils]: 48: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,169 INFO L290 TraceCheckUtils]: 49: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,169 INFO L290 TraceCheckUtils]: 50: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,169 INFO L290 TraceCheckUtils]: 51: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,169 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15614#true} {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #106#return; {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 15:08:04,169 INFO L272 TraceCheckUtils]: 53: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,169 INFO L290 TraceCheckUtils]: 54: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,169 INFO L290 TraceCheckUtils]: 55: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,170 INFO L290 TraceCheckUtils]: 56: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,170 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15614#true} {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #108#return; {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 15:08:04,183 INFO L290 TraceCheckUtils]: 58: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-15 15:08:04,183 INFO L290 TraceCheckUtils]: 59: Hoare triple {15767#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 15:08:04,184 INFO L290 TraceCheckUtils]: 60: Hoare triple {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 15:08:04,184 INFO L290 TraceCheckUtils]: 61: Hoare triple {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 15:08:04,186 INFO L290 TraceCheckUtils]: 62: Hoare triple {15804#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 15:08:04,186 INFO L290 TraceCheckUtils]: 63: Hoare triple {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} assume !false; {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-15 15:08:04,186 INFO L290 TraceCheckUtils]: 64: Hoare triple {15814#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0 (* (- 1) main_~q~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-15 15:08:04,187 INFO L290 TraceCheckUtils]: 65: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} assume !false; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-15 15:08:04,187 INFO L290 TraceCheckUtils]: 66: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-15 15:08:04,187 INFO L290 TraceCheckUtils]: 67: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} assume !false; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-15 15:08:04,187 INFO L272 TraceCheckUtils]: 68: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:04,187 INFO L290 TraceCheckUtils]: 69: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:04,187 INFO L290 TraceCheckUtils]: 70: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:04,187 INFO L290 TraceCheckUtils]: 71: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:04,188 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15614#true} {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} #102#return; {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} is VALID [2022-04-15 15:08:04,188 INFO L272 TraceCheckUtils]: 73: Hoare triple {15821#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (<= (+ main_~q~0 1) 0) (= (+ (* main_~q~0 main_~x~0) main_~x~0) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:08:04,189 INFO L290 TraceCheckUtils]: 74: Hoare triple {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15853#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:08:04,189 INFO L290 TraceCheckUtils]: 75: Hoare triple {15853#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15615#false} is VALID [2022-04-15 15:08:04,189 INFO L290 TraceCheckUtils]: 76: Hoare triple {15615#false} assume !false; {15615#false} is VALID [2022-04-15 15:08:04,189 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 15:08:04,189 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:08:25,331 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:08:25,425 INFO L290 TraceCheckUtils]: 76: Hoare triple {15615#false} assume !false; {15615#false} is VALID [2022-04-15 15:08:25,426 INFO L290 TraceCheckUtils]: 75: Hoare triple {15853#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15615#false} is VALID [2022-04-15 15:08:25,426 INFO L290 TraceCheckUtils]: 74: Hoare triple {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15853#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:08:25,427 INFO L272 TraceCheckUtils]: 73: Hoare triple {15869#(= 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)); {15849#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:08:25,427 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15614#true} {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:08:25,427 INFO L290 TraceCheckUtils]: 71: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:25,428 INFO L290 TraceCheckUtils]: 70: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:25,428 INFO L290 TraceCheckUtils]: 69: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:25,428 INFO L272 TraceCheckUtils]: 68: Hoare triple {15869#(= 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)); {15614#true} is VALID [2022-04-15 15:08:25,428 INFO L290 TraceCheckUtils]: 67: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:08:25,428 INFO L290 TraceCheckUtils]: 66: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:08:25,429 INFO L290 TraceCheckUtils]: 65: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:08:25,429 INFO L290 TraceCheckUtils]: 64: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:08:25,429 INFO L290 TraceCheckUtils]: 63: Hoare triple {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:08:26,093 INFO L290 TraceCheckUtils]: 62: Hoare triple {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15869#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:08:26,093 INFO L290 TraceCheckUtils]: 61: Hoare triple {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-15 15:08:26,094 INFO L290 TraceCheckUtils]: 60: Hoare triple {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-15 15:08:26,701 INFO L290 TraceCheckUtils]: 59: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15903#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-15 15:08:26,702 INFO L290 TraceCheckUtils]: 58: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:08:26,703 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15614#true} {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:08:26,703 INFO L290 TraceCheckUtils]: 56: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:26,703 INFO L290 TraceCheckUtils]: 55: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:26,703 INFO L290 TraceCheckUtils]: 54: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:26,703 INFO L272 TraceCheckUtils]: 53: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:26,704 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15614#true} {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:08:26,704 INFO L290 TraceCheckUtils]: 51: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:26,704 INFO L290 TraceCheckUtils]: 50: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:26,704 INFO L290 TraceCheckUtils]: 49: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:26,704 INFO L272 TraceCheckUtils]: 48: Hoare triple {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:26,705 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {15913#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:08:26,705 INFO L290 TraceCheckUtils]: 46: Hoare triple {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:26,705 INFO L290 TraceCheckUtils]: 45: Hoare triple {15960#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15760#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:26,706 INFO L290 TraceCheckUtils]: 44: Hoare triple {15614#true} ~cond := #in~cond; {15960#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:08:26,706 INFO L272 TraceCheckUtils]: 43: Hoare triple {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:26,706 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15614#true} {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:08:26,707 INFO L290 TraceCheckUtils]: 41: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:26,707 INFO L290 TraceCheckUtils]: 40: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:26,707 INFO L290 TraceCheckUtils]: 39: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:26,707 INFO L272 TraceCheckUtils]: 38: Hoare triple {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:26,707 INFO L290 TraceCheckUtils]: 37: Hoare triple {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:08:26,708 INFO L290 TraceCheckUtils]: 36: Hoare triple {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15950#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:08:26,708 INFO L290 TraceCheckUtils]: 35: Hoare triple {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:08:26,709 INFO L290 TraceCheckUtils]: 34: Hoare triple {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15985#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:08:26,709 INFO L290 TraceCheckUtils]: 33: Hoare triple {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:08:27,267 INFO L290 TraceCheckUtils]: 32: Hoare triple {15999#(or (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)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~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; {15992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:08:27,268 INFO L290 TraceCheckUtils]: 31: Hoare triple {15999#(or (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)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {15999#(or (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)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:08:27,268 INFO L290 TraceCheckUtils]: 30: Hoare triple {15999#(or (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)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {15999#(or (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)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:08:27,269 INFO L290 TraceCheckUtils]: 29: Hoare triple {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15999#(or (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)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:08:27,269 INFO L290 TraceCheckUtils]: 28: Hoare triple {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 27: Hoare triple {15614#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16009#(or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:08:27,270 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15614#true} {15614#true} #100#return; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 25: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 24: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 23: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L272 TraceCheckUtils]: 22: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15614#true} {15614#true} #98#return; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 19: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 18: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L272 TraceCheckUtils]: 17: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15614#true} {15614#true} #96#return; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 15: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 14: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L290 TraceCheckUtils]: 13: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:27,270 INFO L272 TraceCheckUtils]: 12: Hoare triple {15614#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L290 TraceCheckUtils]: 11: Hoare triple {15614#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15614#true} {15614#true} #94#return; {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L290 TraceCheckUtils]: 9: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L290 TraceCheckUtils]: 8: Hoare triple {15614#true} assume !(0 == ~cond); {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L290 TraceCheckUtils]: 7: Hoare triple {15614#true} ~cond := #in~cond; {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L272 TraceCheckUtils]: 6: Hoare triple {15614#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L290 TraceCheckUtils]: 5: Hoare triple {15614#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L272 TraceCheckUtils]: 4: Hoare triple {15614#true} call #t~ret6 := main(); {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15614#true} {15614#true} #112#return; {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L290 TraceCheckUtils]: 2: Hoare triple {15614#true} assume true; {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L290 TraceCheckUtils]: 1: Hoare triple {15614#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); {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L272 TraceCheckUtils]: 0: Hoare triple {15614#true} call ULTIMATE.init(); {15614#true} is VALID [2022-04-15 15:08:27,271 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 18 proven. 26 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 15:08:27,272 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:08:27,272 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [508549730] [2022-04-15 15:08:27,272 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:08:27,272 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1387020911] [2022-04-15 15:08:27,272 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1387020911] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:08:27,281 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:08:27,281 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 24 [2022-04-15 15:08:27,281 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:08:27,281 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [594569488] [2022-04-15 15:08:27,281 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [594569488] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:08:27,281 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:08:27,281 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-15 15:08:27,282 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1122110935] [2022-04-15 15:08:27,282 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:08:27,282 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-15 15:08:27,282 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:08:27,282 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 15:08:27,331 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:08:27,331 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-15 15:08:27,331 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:08:27,332 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-15 15:08:27,332 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=465, Unknown=0, NotChecked=0, Total=552 [2022-04-15 15:08:27,332 INFO L87 Difference]: Start difference. First operand 214 states and 289 transitions. Second operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 15:08:29,963 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:29,963 INFO L93 Difference]: Finished difference Result 285 states and 377 transitions. [2022-04-15 15:08:29,964 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 15:08:29,964 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-15 15:08:29,970 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:08:29,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 15:08:29,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-15 15:08:29,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 15:08:29,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-15 15:08:29,974 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 148 transitions. [2022-04-15 15:08:30,085 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:08:30,090 INFO L225 Difference]: With dead ends: 285 [2022-04-15 15:08:30,090 INFO L226 Difference]: Without dead ends: 283 [2022-04-15 15:08:30,090 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 130 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=150, Invalid=780, Unknown=0, NotChecked=0, Total=930 [2022-04-15 15:08:30,090 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 64 mSDsluCounter, 291 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 341 SdHoareTripleChecker+Invalid, 725 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-15 15:08:30,090 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [76 Valid, 341 Invalid, 725 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 679 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-15 15:08:30,091 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-04-15 15:08:30,649 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 265. [2022-04-15 15:08:30,650 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:08:30,650 INFO L82 GeneralOperation]: Start isEquivalent. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-15 15:08:30,650 INFO L74 IsIncluded]: Start isIncluded. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-15 15:08:30,651 INFO L87 Difference]: Start difference. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-15 15:08:30,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:30,656 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-15 15:08:30,656 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-15 15:08:30,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:08:30,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:08:30,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-15 15:08:30,664 INFO L87 Difference]: Start difference. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-15 15:08:30,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:08:30,669 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-15 15:08:30,669 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-15 15:08:30,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:08:30,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:08:30,670 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:08:30,670 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:08:30,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-15 15:08:30,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 357 transitions. [2022-04-15 15:08:30,677 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 357 transitions. Word has length 77 [2022-04-15 15:08:30,677 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:08:30,677 INFO L478 AbstractCegarLoop]: Abstraction has 265 states and 357 transitions. [2022-04-15 15:08:30,677 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 15:08:30,678 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 265 states and 357 transitions. [2022-04-15 15:08:31,223 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 357 edges. 357 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:08:31,223 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 357 transitions. [2022-04-15 15:08:31,232 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-15 15:08:31,232 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:08:31,232 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:08:31,248 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-15 15:08:31,433 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-15 15:08:31,433 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:08:31,434 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:08:31,434 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 1 times [2022-04-15 15:08:31,434 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:08:31,434 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [747193869] [2022-04-15 15:08:31,434 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:08:31,434 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 2 times [2022-04-15 15:08:31,434 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:08:31,434 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1007534914] [2022-04-15 15:08:31,434 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:08:31,434 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:08:31,448 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:08:31,449 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [382615627] [2022-04-15 15:08:31,449 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:08:31,449 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:08:31,449 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:08:31,450 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:08:31,450 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-15 15:08:31,508 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:08:31,508 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:08:31,509 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 59 conjunts are in the unsatisfiable core [2022-04-15 15:08:31,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:08:31,518 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:08:32,145 INFO L272 TraceCheckUtils]: 0: Hoare triple {17779#true} call ULTIMATE.init(); {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 1: Hoare triple {17779#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); {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 2: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17779#true} {17779#true} #112#return; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {17779#true} call #t~ret6 := main(); {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 5: Hoare triple {17779#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L272 TraceCheckUtils]: 6: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 7: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 8: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 9: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17779#true} {17779#true} #94#return; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 11: Hoare triple {17779#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L272 TraceCheckUtils]: 12: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 13: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 14: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,146 INFO L290 TraceCheckUtils]: 15: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17779#true} {17779#true} #96#return; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L272 TraceCheckUtils]: 17: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L290 TraceCheckUtils]: 18: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L290 TraceCheckUtils]: 19: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L290 TraceCheckUtils]: 20: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17779#true} {17779#true} #98#return; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L272 TraceCheckUtils]: 22: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L290 TraceCheckUtils]: 23: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L290 TraceCheckUtils]: 24: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L290 TraceCheckUtils]: 25: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17779#true} {17779#true} #100#return; {17779#true} is VALID [2022-04-15 15:08:32,147 INFO L290 TraceCheckUtils]: 27: Hoare triple {17779#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17865#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,148 INFO L290 TraceCheckUtils]: 28: Hoare triple {17865#(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; {17865#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,148 INFO L290 TraceCheckUtils]: 29: Hoare triple {17865#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17872#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,148 INFO L290 TraceCheckUtils]: 30: Hoare triple {17872#(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; {17872#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,149 INFO L290 TraceCheckUtils]: 31: Hoare triple {17872#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,149 INFO L290 TraceCheckUtils]: 32: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,149 INFO L272 TraceCheckUtils]: 33: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,149 INFO L290 TraceCheckUtils]: 34: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,149 INFO L290 TraceCheckUtils]: 35: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,149 INFO L290 TraceCheckUtils]: 36: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,150 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,150 INFO L272 TraceCheckUtils]: 38: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,150 INFO L290 TraceCheckUtils]: 39: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,150 INFO L290 TraceCheckUtils]: 40: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,150 INFO L290 TraceCheckUtils]: 41: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,151 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,151 INFO L272 TraceCheckUtils]: 43: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,151 INFO L290 TraceCheckUtils]: 44: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,151 INFO L290 TraceCheckUtils]: 45: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,151 INFO L290 TraceCheckUtils]: 46: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,151 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,151 INFO L272 TraceCheckUtils]: 48: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,151 INFO L290 TraceCheckUtils]: 49: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,152 INFO L290 TraceCheckUtils]: 50: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,152 INFO L290 TraceCheckUtils]: 51: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,152 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17779#true} {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,153 INFO L290 TraceCheckUtils]: 53: Hoare triple {17879#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,153 INFO L290 TraceCheckUtils]: 54: Hoare triple {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,153 INFO L272 TraceCheckUtils]: 55: Hoare triple {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~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)); {17779#true} is VALID [2022-04-15 15:08:32,153 INFO L290 TraceCheckUtils]: 56: Hoare triple {17779#true} ~cond := #in~cond; {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:08:32,153 INFO L290 TraceCheckUtils]: 57: Hoare triple {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:32,154 INFO L290 TraceCheckUtils]: 58: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:32,154 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {17946#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,154 INFO L272 TraceCheckUtils]: 60: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,155 INFO L290 TraceCheckUtils]: 61: Hoare triple {17779#true} ~cond := #in~cond; {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:08:32,155 INFO L290 TraceCheckUtils]: 62: Hoare triple {17956#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:32,155 INFO L290 TraceCheckUtils]: 63: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:08:32,156 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,156 INFO L272 TraceCheckUtils]: 65: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,156 INFO L290 TraceCheckUtils]: 66: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,156 INFO L290 TraceCheckUtils]: 67: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,156 INFO L290 TraceCheckUtils]: 68: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,156 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17779#true} {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,156 INFO L272 TraceCheckUtils]: 70: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:08:32,157 INFO L290 TraceCheckUtils]: 71: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:08:32,157 INFO L290 TraceCheckUtils]: 72: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:08:32,157 INFO L290 TraceCheckUtils]: 73: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:08:32,157 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17779#true} {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,158 INFO L290 TraceCheckUtils]: 75: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,158 INFO L290 TraceCheckUtils]: 76: Hoare triple {17967#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,159 INFO L290 TraceCheckUtils]: 77: Hoare triple {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,159 INFO L290 TraceCheckUtils]: 78: Hoare triple {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-15 15:08:32,159 INFO L290 TraceCheckUtils]: 79: Hoare triple {18019#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 15:08:32,160 INFO L290 TraceCheckUtils]: 80: Hoare triple {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !false; {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 15:08:32,160 INFO L290 TraceCheckUtils]: 81: Hoare triple {18029#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {18036#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 15:08:32,161 INFO L272 TraceCheckUtils]: 82: Hoare triple {18036#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:08:32,161 INFO L290 TraceCheckUtils]: 83: Hoare triple {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18044#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:08:32,161 INFO L290 TraceCheckUtils]: 84: Hoare triple {18044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17780#false} is VALID [2022-04-15 15:08:32,161 INFO L290 TraceCheckUtils]: 85: Hoare triple {17780#false} assume !false; {17780#false} is VALID [2022-04-15 15:08:32,162 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 38 proven. 24 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-15 15:08:32,162 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:09:14,764 INFO L290 TraceCheckUtils]: 85: Hoare triple {17780#false} assume !false; {17780#false} is VALID [2022-04-15 15:09:14,764 INFO L290 TraceCheckUtils]: 84: Hoare triple {18044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17780#false} is VALID [2022-04-15 15:09:14,764 INFO L290 TraceCheckUtils]: 83: Hoare triple {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18044#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:09:14,765 INFO L272 TraceCheckUtils]: 82: Hoare triple {18060#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18040#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:09:14,766 INFO L290 TraceCheckUtils]: 81: Hoare triple {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {18060#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:09:14,766 INFO L290 TraceCheckUtils]: 80: Hoare triple {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 15:09:14,814 INFO L290 TraceCheckUtils]: 79: Hoare triple {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18064#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 15:09:14,815 INFO L290 TraceCheckUtils]: 78: Hoare triple {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,815 INFO L290 TraceCheckUtils]: 77: Hoare triple {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,873 INFO L290 TraceCheckUtils]: 76: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18071#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,874 INFO L290 TraceCheckUtils]: 75: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,875 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17779#true} {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,875 INFO L290 TraceCheckUtils]: 73: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,875 INFO L290 TraceCheckUtils]: 72: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,875 INFO L290 TraceCheckUtils]: 71: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,875 INFO L272 TraceCheckUtils]: 70: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,876 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17779#true} {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,876 INFO L290 TraceCheckUtils]: 68: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,876 INFO L290 TraceCheckUtils]: 67: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,876 INFO L290 TraceCheckUtils]: 66: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,876 INFO L272 TraceCheckUtils]: 65: Hoare triple {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,880 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {18118#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {18081#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,880 INFO L290 TraceCheckUtils]: 63: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:09:14,881 INFO L290 TraceCheckUtils]: 62: Hoare triple {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:09:14,881 INFO L290 TraceCheckUtils]: 61: Hoare triple {17779#true} ~cond := #in~cond; {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:09:14,881 INFO L272 TraceCheckUtils]: 60: Hoare triple {18118#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,882 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {18118#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,882 INFO L290 TraceCheckUtils]: 58: Hoare triple {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:09:14,883 INFO L290 TraceCheckUtils]: 57: Hoare triple {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17960#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:09:14,883 INFO L290 TraceCheckUtils]: 56: Hoare triple {17779#true} ~cond := #in~cond; {18128#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:09:14,883 INFO L272 TraceCheckUtils]: 55: Hoare triple {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,884 INFO L290 TraceCheckUtils]: 54: Hoare triple {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,944 INFO L290 TraceCheckUtils]: 53: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {18135#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:09:14,945 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #108#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 15:09:14,945 INFO L290 TraceCheckUtils]: 51: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,945 INFO L290 TraceCheckUtils]: 50: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,945 INFO L290 TraceCheckUtils]: 49: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,945 INFO L272 TraceCheckUtils]: 48: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,946 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #106#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 15:09:14,946 INFO L290 TraceCheckUtils]: 46: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,946 INFO L290 TraceCheckUtils]: 45: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,946 INFO L290 TraceCheckUtils]: 44: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,946 INFO L272 TraceCheckUtils]: 43: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,947 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 15:09:14,947 INFO L290 TraceCheckUtils]: 41: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,947 INFO L290 TraceCheckUtils]: 40: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,947 INFO L290 TraceCheckUtils]: 39: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,947 INFO L272 TraceCheckUtils]: 38: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,948 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17779#true} {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 15:09:14,948 INFO L290 TraceCheckUtils]: 36: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,948 INFO L290 TraceCheckUtils]: 35: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,948 INFO L290 TraceCheckUtils]: 34: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,948 INFO L272 TraceCheckUtils]: 33: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,949 INFO L290 TraceCheckUtils]: 32: Hoare triple {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !false; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 15:09:14,949 INFO L290 TraceCheckUtils]: 31: Hoare triple {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18154#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-15 15:09:14,950 INFO L290 TraceCheckUtils]: 30: Hoare triple {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-15 15:09:14,951 INFO L290 TraceCheckUtils]: 29: Hoare triple {17779#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18221#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-15 15:09:14,951 INFO L290 TraceCheckUtils]: 28: Hoare triple {17779#true} assume !false; {17779#true} is VALID [2022-04-15 15:09:14,951 INFO L290 TraceCheckUtils]: 27: Hoare triple {17779#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17779#true} is VALID [2022-04-15 15:09:14,951 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17779#true} {17779#true} #100#return; {17779#true} is VALID [2022-04-15 15:09:14,951 INFO L290 TraceCheckUtils]: 25: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,951 INFO L290 TraceCheckUtils]: 24: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,951 INFO L290 TraceCheckUtils]: 23: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,951 INFO L272 TraceCheckUtils]: 22: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,951 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17779#true} {17779#true} #98#return; {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L290 TraceCheckUtils]: 20: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L290 TraceCheckUtils]: 19: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L290 TraceCheckUtils]: 18: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L272 TraceCheckUtils]: 17: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17779#true} {17779#true} #96#return; {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L290 TraceCheckUtils]: 15: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L290 TraceCheckUtils]: 14: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L290 TraceCheckUtils]: 13: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L272 TraceCheckUtils]: 12: Hoare triple {17779#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L290 TraceCheckUtils]: 11: Hoare triple {17779#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17779#true} is VALID [2022-04-15 15:09:14,952 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17779#true} {17779#true} #94#return; {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L290 TraceCheckUtils]: 9: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L290 TraceCheckUtils]: 8: Hoare triple {17779#true} assume !(0 == ~cond); {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L290 TraceCheckUtils]: 7: Hoare triple {17779#true} ~cond := #in~cond; {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L272 TraceCheckUtils]: 6: Hoare triple {17779#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L290 TraceCheckUtils]: 5: Hoare triple {17779#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L272 TraceCheckUtils]: 4: Hoare triple {17779#true} call #t~ret6 := main(); {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17779#true} {17779#true} #112#return; {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L290 TraceCheckUtils]: 2: Hoare triple {17779#true} assume true; {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L290 TraceCheckUtils]: 1: Hoare triple {17779#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); {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L272 TraceCheckUtils]: 0: Hoare triple {17779#true} call ULTIMATE.init(); {17779#true} is VALID [2022-04-15 15:09:14,953 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 40 proven. 22 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-15 15:09:14,954 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:09:14,954 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1007534914] [2022-04-15 15:09:14,954 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:09:14,954 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [382615627] [2022-04-15 15:09:14,954 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [382615627] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:09:14,954 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:09:14,954 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 23 [2022-04-15 15:09:14,954 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:09:14,954 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [747193869] [2022-04-15 15:09:14,954 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [747193869] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:09:14,954 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:09:14,954 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 15:09:14,954 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1357518276] [2022-04-15 15:09:14,954 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:09:14,955 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 86 [2022-04-15 15:09:14,955 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:09:14,955 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 15:09:15,006 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:09:15,007 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 15:09:15,007 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:09:15,007 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 15:09:15,007 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=420, Unknown=0, NotChecked=0, Total=506 [2022-04-15 15:09:15,007 INFO L87 Difference]: Start difference. First operand 265 states and 357 transitions. Second operand has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 15:09:19,650 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:09:19,650 INFO L93 Difference]: Finished difference Result 348 states and 475 transitions. [2022-04-15 15:09:19,650 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 15:09:19,650 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 86 [2022-04-15 15:09:19,651 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:09:19,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 15:09:19,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-15 15:09:19,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 15:09:19,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-15 15:09:19,654 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 143 transitions. [2022-04-15 15:09:19,770 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:09:19,777 INFO L225 Difference]: With dead ends: 348 [2022-04-15 15:09:19,777 INFO L226 Difference]: Without dead ends: 345 [2022-04-15 15:09:19,779 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 149 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 128 ImplicationChecksByTransitivity, 3.1s TimeCoverageRelationStatistics Valid=112, Invalid=590, Unknown=0, NotChecked=0, Total=702 [2022-04-15 15:09:19,780 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 54 mSDsluCounter, 299 mSDsCounter, 0 mSdLazyCounter, 820 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 351 SdHoareTripleChecker+Invalid, 868 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 820 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:09:19,780 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [70 Valid, 351 Invalid, 868 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 820 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-15 15:09:19,780 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 345 states. [2022-04-15 15:09:20,614 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 345 to 330. [2022-04-15 15:09:20,614 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:09:20,615 INFO L82 GeneralOperation]: Start isEquivalent. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-15 15:09:20,615 INFO L74 IsIncluded]: Start isIncluded. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-15 15:09:20,615 INFO L87 Difference]: Start difference. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-15 15:09:20,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:09:20,622 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-15 15:09:20,622 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-15 15:09:20,623 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:09:20,623 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:09:20,624 INFO L74 IsIncluded]: Start isIncluded. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-15 15:09:20,624 INFO L87 Difference]: Start difference. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-15 15:09:20,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:09:20,630 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-15 15:09:20,630 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-15 15:09:20,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:09:20,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:09:20,631 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:09:20,631 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:09:20,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-15 15:09:20,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 330 states to 330 states and 456 transitions. [2022-04-15 15:09:20,639 INFO L78 Accepts]: Start accepts. Automaton has 330 states and 456 transitions. Word has length 86 [2022-04-15 15:09:20,639 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:09:20,639 INFO L478 AbstractCegarLoop]: Abstraction has 330 states and 456 transitions. [2022-04-15 15:09:20,639 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 13 states have internal predecessors, (31), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-15 15:09:20,639 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 330 states and 456 transitions. [2022-04-15 15:09:21,506 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 456 edges. 456 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:09:21,506 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 456 transitions. [2022-04-15 15:09:21,507 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-15 15:09:21,507 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:09:21,507 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:09:21,523 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-15 15:09:21,723 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:09:21,723 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:09:21,723 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:09:21,724 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 3 times [2022-04-15 15:09:21,724 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:09:21,724 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1833443912] [2022-04-15 15:09:21,724 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:09:21,724 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 4 times [2022-04-15 15:09:21,724 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:09:21,724 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [101951565] [2022-04-15 15:09:21,724 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:09:21,724 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:09:21,739 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:09:21,739 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2073739906] [2022-04-15 15:09:21,739 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:09:21,740 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:09:21,740 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:09:21,742 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:09:21,743 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-15 15:09:21,797 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:09:21,797 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:09:21,798 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 76 conjunts are in the unsatisfiable core [2022-04-15 15:09:21,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:09:21,814 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:10:08,997 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:10:15,717 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:10:19,783 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:10:25,652 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:10:28,753 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:10:30,102 INFO L272 TraceCheckUtils]: 0: Hoare triple {20371#true} call ULTIMATE.init(); {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L290 TraceCheckUtils]: 1: Hoare triple {20371#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); {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L290 TraceCheckUtils]: 2: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20371#true} {20371#true} #112#return; {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L272 TraceCheckUtils]: 4: Hoare triple {20371#true} call #t~ret6 := main(); {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L290 TraceCheckUtils]: 5: Hoare triple {20371#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L272 TraceCheckUtils]: 6: Hoare triple {20371#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L290 TraceCheckUtils]: 7: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L290 TraceCheckUtils]: 8: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L290 TraceCheckUtils]: 9: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20371#true} {20371#true} #94#return; {20371#true} is VALID [2022-04-15 15:10:30,102 INFO L290 TraceCheckUtils]: 11: Hoare triple {20371#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L272 TraceCheckUtils]: 12: Hoare triple {20371#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 13: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 14: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 15: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20371#true} {20371#true} #96#return; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L272 TraceCheckUtils]: 17: Hoare triple {20371#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 18: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 19: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 20: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20371#true} {20371#true} #98#return; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L272 TraceCheckUtils]: 22: Hoare triple {20371#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 23: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 24: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,103 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20371#true} {20371#true} #100#return; {20371#true} is VALID [2022-04-15 15:10:30,104 INFO L290 TraceCheckUtils]: 27: Hoare triple {20371#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 15:10:30,105 INFO L290 TraceCheckUtils]: 28: Hoare triple {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 15:10:30,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {20457#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 15:10:30,105 INFO L290 TraceCheckUtils]: 30: Hoare triple {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 15:10:30,106 INFO L290 TraceCheckUtils]: 31: Hoare triple {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 15:10:30,106 INFO L290 TraceCheckUtils]: 32: Hoare triple {20464#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,106 INFO L290 TraceCheckUtils]: 33: Hoare triple {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,107 INFO L290 TraceCheckUtils]: 34: Hoare triple {20474#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,107 INFO L290 TraceCheckUtils]: 35: Hoare triple {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,108 INFO L290 TraceCheckUtils]: 36: Hoare triple {20481#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,108 INFO L290 TraceCheckUtils]: 37: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,108 INFO L272 TraceCheckUtils]: 38: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,108 INFO L290 TraceCheckUtils]: 39: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,108 INFO L290 TraceCheckUtils]: 40: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,109 INFO L290 TraceCheckUtils]: 41: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,109 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #102#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,109 INFO L272 TraceCheckUtils]: 43: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,109 INFO L290 TraceCheckUtils]: 44: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,109 INFO L290 TraceCheckUtils]: 45: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,109 INFO L290 TraceCheckUtils]: 46: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,110 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #104#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,110 INFO L272 TraceCheckUtils]: 48: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,110 INFO L290 TraceCheckUtils]: 49: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,110 INFO L290 TraceCheckUtils]: 50: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,110 INFO L290 TraceCheckUtils]: 51: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,111 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #106#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,111 INFO L272 TraceCheckUtils]: 53: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,111 INFO L290 TraceCheckUtils]: 54: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,111 INFO L290 TraceCheckUtils]: 55: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,111 INFO L290 TraceCheckUtils]: 56: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,112 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20371#true} {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #108#return; {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-15 15:10:30,113 INFO L290 TraceCheckUtils]: 58: Hoare triple {20488#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} is VALID [2022-04-15 15:10:30,113 INFO L290 TraceCheckUtils]: 59: Hoare triple {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} assume !false; {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} is VALID [2022-04-15 15:10:30,113 INFO L272 TraceCheckUtils]: 60: Hoare triple {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,114 INFO L290 TraceCheckUtils]: 61: Hoare triple {20371#true} ~cond := #in~cond; {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:10:30,114 INFO L290 TraceCheckUtils]: 62: Hoare triple {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:10:30,115 INFO L290 TraceCheckUtils]: 63: Hoare triple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:10:30,116 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} {20555#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0))} #102#return; {20576#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:10:30,116 INFO L272 TraceCheckUtils]: 65: Hoare triple {20576#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,116 INFO L290 TraceCheckUtils]: 66: Hoare triple {20371#true} ~cond := #in~cond; {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:10:30,116 INFO L290 TraceCheckUtils]: 67: Hoare triple {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:10:30,117 INFO L290 TraceCheckUtils]: 68: Hoare triple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:10:30,118 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} {20576#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:10:30,118 INFO L272 TraceCheckUtils]: 70: Hoare triple {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,118 INFO L290 TraceCheckUtils]: 71: Hoare triple {20371#true} ~cond := #in~cond; {20371#true} is VALID [2022-04-15 15:10:30,118 INFO L290 TraceCheckUtils]: 72: Hoare triple {20371#true} assume !(0 == ~cond); {20371#true} is VALID [2022-04-15 15:10:30,118 INFO L290 TraceCheckUtils]: 73: Hoare triple {20371#true} assume true; {20371#true} is VALID [2022-04-15 15:10:30,118 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20371#true} {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:10:30,119 INFO L272 TraceCheckUtils]: 75: Hoare triple {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20371#true} is VALID [2022-04-15 15:10:30,119 INFO L290 TraceCheckUtils]: 76: Hoare triple {20371#true} ~cond := #in~cond; {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:10:30,119 INFO L290 TraceCheckUtils]: 77: Hoare triple {20565#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:10:30,119 INFO L290 TraceCheckUtils]: 78: Hoare triple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:10:30,120 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20569#(not (= |__VERIFIER_assert_#in~cond| 0))} {20592#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:10:30,121 INFO L290 TraceCheckUtils]: 80: Hoare triple {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:10:30,124 INFO L290 TraceCheckUtils]: 81: Hoare triple {20623#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (mod main_~d~0 2) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} is VALID [2022-04-15 15:10:30,124 INFO L290 TraceCheckUtils]: 82: Hoare triple {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} assume !false; {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} is VALID [2022-04-15 15:10:30,125 INFO L290 TraceCheckUtils]: 83: Hoare triple {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} assume !(~c~0 >= ~b~0); {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)))} is VALID [2022-04-15 15:10:32,127 WARN L290 TraceCheckUtils]: 84: Hoare triple {20630#(and (= main_~s~0 0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~x~0) (= (* main_~b~0 main_~k~0) (* main_~b~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; {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} is UNKNOWN [2022-04-15 15:10:32,129 INFO L290 TraceCheckUtils]: 85: Hoare triple {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} assume !false; {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} is VALID [2022-04-15 15:10:32,130 INFO L290 TraceCheckUtils]: 86: Hoare triple {20640#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~b~0 main_~y~0) 2) 0) (= main_~r~0 0) (= 0 (div (+ (* main_~q~0 main_~x~0) main_~y~0 (* (- 1) main_~b~0)) 2)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} assume !(0 != ~b~0); {20647#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (div (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} is VALID [2022-04-15 15:10:32,139 INFO L272 TraceCheckUtils]: 87: Hoare triple {20647#(and (= (div (+ (* (- 1) main_~s~0) 1) 2) 0) (= (mod (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (div (+ (* main_~q~0 main_~x~0) main_~y~0) 2) 0) (or (and (not (= main_~p~0 0)) (= (mod main_~q~0 2) 0) (= (mod (div (- main_~q~0) 2) main_~p~0) 0) (= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~p~0 main_~x~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0))) (* 2 (* main_~y~0 main_~r~0 (div (div (* (- 1) main_~q~0) 2) main_~p~0)))))) (and (= main_~p~0 0) (= (mod main_~q~0 2) 0) (= (div (- main_~q~0) 2) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (mod (+ main_~s~0 1) 2) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {20651#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:10:32,140 INFO L290 TraceCheckUtils]: 88: Hoare triple {20651#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20655#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:10:32,140 INFO L290 TraceCheckUtils]: 89: Hoare triple {20655#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20372#false} is VALID [2022-04-15 15:10:32,140 INFO L290 TraceCheckUtils]: 90: Hoare triple {20372#false} assume !false; {20372#false} is VALID [2022-04-15 15:10:32,141 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 52 proven. 28 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-04-15 15:10:32,141 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:11:34,704 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:11:41,280 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:11:41,280 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [101951565] [2022-04-15 15:11:41,280 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:11:41,280 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2073739906] [2022-04-15 15:11:41,280 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2073739906] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 15:11:41,280 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:11:41,280 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2022-04-15 15:11:41,280 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:11:41,280 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1833443912] [2022-04-15 15:11:41,280 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1833443912] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:11:41,280 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:11:41,280 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-15 15:11:41,280 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [19564352] [2022-04-15 15:11:41,280 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:11:41,281 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-15 15:11:41,281 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:11:41,281 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 15:11:43,350 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 63 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 15:11:43,350 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-15 15:11:43,350 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:11:43,350 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-15 15:11:43,350 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=107, Invalid=595, Unknown=0, NotChecked=0, Total=702 [2022-04-15 15:11:43,351 INFO L87 Difference]: Start difference. First operand 330 states and 456 transitions. Second operand has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 15:11:56,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:11:56,323 INFO L93 Difference]: Finished difference Result 418 states and 579 transitions. [2022-04-15 15:11:56,323 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-15 15:11:56,323 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-15 15:11:56,324 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:11:56,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 15:11:56,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-15 15:11:56,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 15:11:56,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-15 15:11:56,328 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 175 transitions. [2022-04-15 15:11:58,644 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 174 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 15:11:58,654 INFO L225 Difference]: With dead ends: 418 [2022-04-15 15:11:58,654 INFO L226 Difference]: Without dead ends: 415 [2022-04-15 15:11:58,655 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 98 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 210 ImplicationChecksByTransitivity, 9.2s TimeCoverageRelationStatistics Valid=172, Invalid=950, Unknown=0, NotChecked=0, Total=1122 [2022-04-15 15:11:58,656 INFO L913 BasicCegarLoop]: 59 mSDtfsCounter, 66 mSDsluCounter, 355 mSDsCounter, 0 mSdLazyCounter, 1126 mSolverCounterSat, 66 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 414 SdHoareTripleChecker+Invalid, 1192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 66 IncrementalHoareTripleChecker+Valid, 1126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.3s IncrementalHoareTripleChecker+Time [2022-04-15 15:11:58,656 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [84 Valid, 414 Invalid, 1192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [66 Valid, 1126 Invalid, 0 Unknown, 0 Unchecked, 4.3s Time] [2022-04-15 15:11:58,657 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 415 states. [2022-04-15 15:11:59,998 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 415 to 395. [2022-04-15 15:11:59,999 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:11:59,999 INFO L82 GeneralOperation]: Start isEquivalent. First operand 415 states. Second operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:12:00,001 INFO L74 IsIncluded]: Start isIncluded. First operand 415 states. Second operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:12:00,001 INFO L87 Difference]: Start difference. First operand 415 states. Second operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:12:00,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:12:00,029 INFO L93 Difference]: Finished difference Result 415 states and 575 transitions. [2022-04-15 15:12:00,029 INFO L276 IsEmpty]: Start isEmpty. Operand 415 states and 575 transitions. [2022-04-15 15:12:00,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:12:00,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:12:00,031 INFO L74 IsIncluded]: Start isIncluded. First operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 415 states. [2022-04-15 15:12:00,031 INFO L87 Difference]: Start difference. First operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 415 states. [2022-04-15 15:12:00,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:12:00,041 INFO L93 Difference]: Finished difference Result 415 states and 575 transitions. [2022-04-15 15:12:00,042 INFO L276 IsEmpty]: Start isEmpty. Operand 415 states and 575 transitions. [2022-04-15 15:12:00,043 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:12:00,043 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:12:00,043 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:12:00,043 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:12:00,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 395 states, 225 states have (on average 1.2044444444444444) internal successors, (271), 226 states have internal predecessors, (271), 143 states have call successors, (143), 27 states have call predecessors, (143), 26 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:12:00,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 395 states to 395 states and 555 transitions. [2022-04-15 15:12:00,054 INFO L78 Accepts]: Start accepts. Automaton has 395 states and 555 transitions. Word has length 91 [2022-04-15 15:12:00,055 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:12:00,055 INFO L478 AbstractCegarLoop]: Abstraction has 395 states and 555 transitions. [2022-04-15 15:12:00,055 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-15 15:12:00,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 395 states and 555 transitions. [2022-04-15 15:12:01,665 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 555 edges. 555 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:12:01,665 INFO L276 IsEmpty]: Start isEmpty. Operand 395 states and 555 transitions. [2022-04-15 15:12:01,666 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-15 15:12:01,666 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:12:01,666 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 5, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:12:01,684 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-15 15:12:01,867 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-15 15:12:01,867 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:12:01,867 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:12:01,867 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 7 times [2022-04-15 15:12:01,867 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:12:01,867 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1216122800] [2022-04-15 15:12:01,868 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:12:01,868 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 8 times [2022-04-15 15:12:01,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:12:01,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1313925150] [2022-04-15 15:12:01,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:12:01,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:12:01,878 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:12:01,878 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1413315975] [2022-04-15 15:12:01,878 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:12:01,878 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:12:01,878 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:12:01,887 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:12:01,891 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-15 15:12:01,944 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:12:01,944 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:12:01,945 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-15 15:12:01,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:12:01,962 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:12:18,687 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:12:36,115 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:12:36,360 INFO L272 TraceCheckUtils]: 0: Hoare triple {23242#true} call ULTIMATE.init(); {23242#true} is VALID [2022-04-15 15:12:36,360 INFO L290 TraceCheckUtils]: 1: Hoare triple {23242#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); {23242#true} is VALID [2022-04-15 15:12:36,360 INFO L290 TraceCheckUtils]: 2: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,360 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23242#true} {23242#true} #112#return; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L272 TraceCheckUtils]: 4: Hoare triple {23242#true} call #t~ret6 := main(); {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 5: Hoare triple {23242#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L272 TraceCheckUtils]: 6: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 7: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 8: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 9: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23242#true} {23242#true} #94#return; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 11: Hoare triple {23242#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L272 TraceCheckUtils]: 12: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 13: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 14: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 15: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23242#true} {23242#true} #96#return; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L272 TraceCheckUtils]: 17: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 18: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 19: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L290 TraceCheckUtils]: 20: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,361 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23242#true} {23242#true} #98#return; {23242#true} is VALID [2022-04-15 15:12:36,362 INFO L272 TraceCheckUtils]: 22: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,362 INFO L290 TraceCheckUtils]: 23: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,362 INFO L290 TraceCheckUtils]: 24: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,362 INFO L290 TraceCheckUtils]: 25: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,362 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23242#true} {23242#true} #100#return; {23242#true} is VALID [2022-04-15 15:12:36,362 INFO L290 TraceCheckUtils]: 27: Hoare triple {23242#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23328#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,362 INFO L290 TraceCheckUtils]: 28: Hoare triple {23328#(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; {23328#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,363 INFO L290 TraceCheckUtils]: 29: Hoare triple {23328#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23335#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,363 INFO L290 TraceCheckUtils]: 30: Hoare triple {23335#(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; {23335#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,364 INFO L290 TraceCheckUtils]: 31: Hoare triple {23335#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,364 INFO L290 TraceCheckUtils]: 32: Hoare triple {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,364 INFO L272 TraceCheckUtils]: 33: Hoare triple {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,364 INFO L290 TraceCheckUtils]: 34: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:12:36,365 INFO L290 TraceCheckUtils]: 35: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,365 INFO L290 TraceCheckUtils]: 36: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,366 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23342#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,366 INFO L272 TraceCheckUtils]: 38: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,366 INFO L290 TraceCheckUtils]: 39: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:12:36,367 INFO L290 TraceCheckUtils]: 40: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,367 INFO L290 TraceCheckUtils]: 41: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,368 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,368 INFO L272 TraceCheckUtils]: 43: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,368 INFO L290 TraceCheckUtils]: 44: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,368 INFO L290 TraceCheckUtils]: 45: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,368 INFO L290 TraceCheckUtils]: 46: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,368 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23242#true} {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,369 INFO L272 TraceCheckUtils]: 48: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,369 INFO L290 TraceCheckUtils]: 49: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,369 INFO L290 TraceCheckUtils]: 50: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,369 INFO L290 TraceCheckUtils]: 51: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,369 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23242#true} {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,370 INFO L290 TraceCheckUtils]: 53: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,370 INFO L290 TraceCheckUtils]: 54: Hoare triple {23363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,371 INFO L290 TraceCheckUtils]: 55: Hoare triple {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,371 INFO L290 TraceCheckUtils]: 56: Hoare triple {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:12:36,372 INFO L290 TraceCheckUtils]: 57: Hoare triple {23415#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 15:12:36,372 INFO L290 TraceCheckUtils]: 58: Hoare triple {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !false; {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 15:12:36,372 INFO L290 TraceCheckUtils]: 59: Hoare triple {23425#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 15:12:36,373 INFO L290 TraceCheckUtils]: 60: Hoare triple {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !false; {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 15:12:36,373 INFO L290 TraceCheckUtils]: 61: Hoare triple {23432#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 15:12:36,374 INFO L290 TraceCheckUtils]: 62: Hoare triple {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} assume !false; {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} is VALID [2022-04-15 15:12:36,374 INFO L272 TraceCheckUtils]: 63: Hoare triple {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,374 INFO L290 TraceCheckUtils]: 64: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:12:36,374 INFO L290 TraceCheckUtils]: 65: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,375 INFO L290 TraceCheckUtils]: 66: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,376 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23439#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 main_~a~0)))} #102#return; {23458#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,376 INFO L272 TraceCheckUtils]: 68: Hoare triple {23458#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,376 INFO L290 TraceCheckUtils]: 69: Hoare triple {23242#true} ~cond := #in~cond; {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:12:36,376 INFO L290 TraceCheckUtils]: 70: Hoare triple {23352#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,376 INFO L290 TraceCheckUtils]: 71: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:12:36,377 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23458#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,377 INFO L272 TraceCheckUtils]: 73: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,378 INFO L290 TraceCheckUtils]: 74: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,378 INFO L290 TraceCheckUtils]: 75: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,378 INFO L290 TraceCheckUtils]: 76: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,378 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23242#true} {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,378 INFO L272 TraceCheckUtils]: 78: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,378 INFO L290 TraceCheckUtils]: 79: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,379 INFO L290 TraceCheckUtils]: 80: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,379 INFO L290 TraceCheckUtils]: 81: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,379 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23242#true} {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,380 INFO L290 TraceCheckUtils]: 83: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,381 INFO L290 TraceCheckUtils]: 84: Hoare triple {23474#(and (= main_~b~0 main_~v~0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,381 INFO L290 TraceCheckUtils]: 85: Hoare triple {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,382 INFO L290 TraceCheckUtils]: 86: Hoare triple {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:12:36,385 INFO L290 TraceCheckUtils]: 87: Hoare triple {23511#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-15 15:12:36,385 INFO L290 TraceCheckUtils]: 88: Hoare triple {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !false; {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-15 15:12:36,386 INFO L290 TraceCheckUtils]: 89: Hoare triple {23521#(and (= (+ main_~a~0 main_~y~0) main_~x~0) (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-15 15:12:36,386 INFO L290 TraceCheckUtils]: 90: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !false; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-15 15:12:36,386 INFO L290 TraceCheckUtils]: 91: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-15 15:12:36,387 INFO L290 TraceCheckUtils]: 92: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} assume !false; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-15 15:12:36,387 INFO L272 TraceCheckUtils]: 93: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:12:36,387 INFO L290 TraceCheckUtils]: 94: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:12:36,387 INFO L290 TraceCheckUtils]: 95: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:12:36,387 INFO L290 TraceCheckUtils]: 96: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:12:36,388 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23242#true} {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} #102#return; {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} is VALID [2022-04-15 15:12:36,389 INFO L272 TraceCheckUtils]: 98: Hoare triple {23528#(and (= (+ (* main_~y~0 (div (+ (- 1) main_~s~0) main_~q~0)) main_~y~0) 0) (= (+ main_~q~0 1) 0) (= (* main_~y~0 2) (+ main_~b~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:12:36,389 INFO L290 TraceCheckUtils]: 99: Hoare triple {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23560#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:12:36,389 INFO L290 TraceCheckUtils]: 100: Hoare triple {23560#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23243#false} is VALID [2022-04-15 15:12:36,389 INFO L290 TraceCheckUtils]: 101: Hoare triple {23243#false} assume !false; {23243#false} is VALID [2022-04-15 15:12:36,390 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 26 proven. 92 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-15 15:12:36,390 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:13:38,687 INFO L290 TraceCheckUtils]: 101: Hoare triple {23243#false} assume !false; {23243#false} is VALID [2022-04-15 15:13:38,688 INFO L290 TraceCheckUtils]: 100: Hoare triple {23560#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23243#false} is VALID [2022-04-15 15:13:38,688 INFO L290 TraceCheckUtils]: 99: Hoare triple {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23560#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:13:38,689 INFO L272 TraceCheckUtils]: 98: Hoare triple {23576#(= 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)); {23556#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:13:38,689 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23242#true} {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:13:38,689 INFO L290 TraceCheckUtils]: 96: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:38,689 INFO L290 TraceCheckUtils]: 95: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:38,689 INFO L290 TraceCheckUtils]: 94: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:38,689 INFO L272 TraceCheckUtils]: 93: Hoare triple {23576#(= 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)); {23242#true} is VALID [2022-04-15 15:13:38,690 INFO L290 TraceCheckUtils]: 92: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:13:38,690 INFO L290 TraceCheckUtils]: 91: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:13:38,690 INFO L290 TraceCheckUtils]: 90: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:13:38,691 INFO L290 TraceCheckUtils]: 89: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:13:38,691 INFO L290 TraceCheckUtils]: 88: Hoare triple {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:13:40,693 WARN L290 TraceCheckUtils]: 87: Hoare triple {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23576#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-15 15:13:40,694 INFO L290 TraceCheckUtils]: 86: Hoare triple {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-15 15:13:40,694 INFO L290 TraceCheckUtils]: 85: Hoare triple {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-15 15:13:41,463 INFO L290 TraceCheckUtils]: 84: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23610#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-15 15:13:41,464 INFO L290 TraceCheckUtils]: 83: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:13:41,465 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23242#true} {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:13:41,465 INFO L290 TraceCheckUtils]: 81: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,465 INFO L290 TraceCheckUtils]: 80: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,465 INFO L290 TraceCheckUtils]: 79: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,465 INFO L272 TraceCheckUtils]: 78: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,466 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23242#true} {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:13:41,466 INFO L290 TraceCheckUtils]: 76: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,466 INFO L290 TraceCheckUtils]: 75: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,466 INFO L290 TraceCheckUtils]: 74: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,466 INFO L272 TraceCheckUtils]: 73: Hoare triple {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,467 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23657#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {23620#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:13:41,467 INFO L290 TraceCheckUtils]: 71: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:13:41,468 INFO L290 TraceCheckUtils]: 70: Hoare triple {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:13:41,468 INFO L290 TraceCheckUtils]: 69: Hoare triple {23242#true} ~cond := #in~cond; {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:13:41,468 INFO L272 TraceCheckUtils]: 68: Hoare triple {23657#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,469 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {23657#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:13:41,469 INFO L290 TraceCheckUtils]: 66: Hoare triple {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:13:41,469 INFO L290 TraceCheckUtils]: 65: Hoare triple {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:13:41,470 INFO L290 TraceCheckUtils]: 64: Hoare triple {23242#true} ~cond := #in~cond; {23667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:13:41,470 INFO L272 TraceCheckUtils]: 63: Hoare triple {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,470 INFO L290 TraceCheckUtils]: 62: Hoare triple {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:13:41,471 INFO L290 TraceCheckUtils]: 61: Hoare triple {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23674#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:13:41,471 INFO L290 TraceCheckUtils]: 60: Hoare triple {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 59: Hoare triple {23242#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23693#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 58: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 57: Hoare triple {23242#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; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 56: Hoare triple {23242#true} assume !(~c~0 >= ~b~0); {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 55: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 54: Hoare triple {23242#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 53: Hoare triple {23242#true} assume !(~c~0 >= 2 * ~v~0); {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23242#true} {23242#true} #108#return; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 51: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 50: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 49: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L272 TraceCheckUtils]: 48: Hoare triple {23242#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23242#true} {23242#true} #106#return; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 46: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 45: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,473 INFO L290 TraceCheckUtils]: 44: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L272 TraceCheckUtils]: 43: Hoare triple {23242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23242#true} {23242#true} #104#return; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 41: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 40: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 39: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L272 TraceCheckUtils]: 38: Hoare triple {23242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23242#true} {23242#true} #102#return; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 36: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 35: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 34: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L272 TraceCheckUtils]: 33: Hoare triple {23242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 32: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-15 15:13:41,474 INFO L290 TraceCheckUtils]: 31: Hoare triple {23242#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23242#true} is VALID [2022-04-15 15:13:41,475 INFO L290 TraceCheckUtils]: 30: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-15 15:13:41,475 INFO L290 TraceCheckUtils]: 29: Hoare triple {23242#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23242#true} is VALID [2022-04-15 15:13:41,475 INFO L290 TraceCheckUtils]: 28: Hoare triple {23242#true} assume !false; {23242#true} is VALID [2022-04-15 15:13:41,475 INFO L290 TraceCheckUtils]: 27: Hoare triple {23242#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23242#true} is VALID [2022-04-15 15:13:41,475 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23242#true} {23242#true} #100#return; {23242#true} is VALID [2022-04-15 15:13:41,475 INFO L290 TraceCheckUtils]: 25: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 24: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 23: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L272 TraceCheckUtils]: 22: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23242#true} {23242#true} #98#return; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 20: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 19: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 18: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L272 TraceCheckUtils]: 17: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23242#true} {23242#true} #96#return; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 15: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 14: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 13: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L272 TraceCheckUtils]: 12: Hoare triple {23242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 11: Hoare triple {23242#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23242#true} {23242#true} #94#return; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 9: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 8: Hoare triple {23242#true} assume !(0 == ~cond); {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L290 TraceCheckUtils]: 7: Hoare triple {23242#true} ~cond := #in~cond; {23242#true} is VALID [2022-04-15 15:13:41,476 INFO L272 TraceCheckUtils]: 6: Hoare triple {23242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {23242#true} is VALID [2022-04-15 15:13:41,477 INFO L290 TraceCheckUtils]: 5: Hoare triple {23242#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23242#true} is VALID [2022-04-15 15:13:41,477 INFO L272 TraceCheckUtils]: 4: Hoare triple {23242#true} call #t~ret6 := main(); {23242#true} is VALID [2022-04-15 15:13:41,477 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23242#true} {23242#true} #112#return; {23242#true} is VALID [2022-04-15 15:13:41,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {23242#true} assume true; {23242#true} is VALID [2022-04-15 15:13:41,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {23242#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); {23242#true} is VALID [2022-04-15 15:13:41,477 INFO L272 TraceCheckUtils]: 0: Hoare triple {23242#true} call ULTIMATE.init(); {23242#true} is VALID [2022-04-15 15:13:41,477 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 69 proven. 27 refuted. 0 times theorem prover too weak. 130 trivial. 0 not checked. [2022-04-15 15:13:41,477 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:13:41,477 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1313925150] [2022-04-15 15:13:41,477 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:13:41,477 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1413315975] [2022-04-15 15:13:41,477 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1413315975] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:13:41,477 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:13:41,478 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 12] total 26 [2022-04-15 15:13:41,478 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:13:41,478 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1216122800] [2022-04-15 15:13:41,478 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1216122800] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:13:41,478 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:13:41,478 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-15 15:13:41,478 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1986624603] [2022-04-15 15:13:41,478 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:13:41,478 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-15 15:13:41,479 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:13:41,479 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-15 15:13:41,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:13:41,547 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-15 15:13:41,547 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:13:41,547 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-15 15:13:41,548 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=99, Invalid=551, Unknown=0, NotChecked=0, Total=650 [2022-04-15 15:13:41,548 INFO L87 Difference]: Start difference. First operand 395 states and 555 transitions. Second operand has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-15 15:13:45,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:13:45,966 INFO L93 Difference]: Finished difference Result 470 states and 646 transitions. [2022-04-15 15:13:45,966 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 15:13:45,966 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-15 15:13:45,966 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:13:45,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-15 15:13:45,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-15 15:13:45,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-15 15:13:45,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-15 15:13:45,971 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 163 transitions. [2022-04-15 15:13:46,148 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:13:46,158 INFO L225 Difference]: With dead ends: 470 [2022-04-15 15:13:46,158 INFO L226 Difference]: Without dead ends: 468 [2022-04-15 15:13:46,159 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 178 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 191 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=137, Invalid=793, Unknown=0, NotChecked=0, Total=930 [2022-04-15 15:13:46,159 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 66 mSDsluCounter, 395 mSDsCounter, 0 mSdLazyCounter, 1055 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 92 SdHoareTripleChecker+Valid, 444 SdHoareTripleChecker+Invalid, 1098 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 1055 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-15 15:13:46,159 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [92 Valid, 444 Invalid, 1098 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 1055 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-15 15:13:46,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 468 states. [2022-04-15 15:13:47,231 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 468 to 407. [2022-04-15 15:13:47,231 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:13:47,232 INFO L82 GeneralOperation]: Start isEquivalent. First operand 468 states. Second operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:13:47,233 INFO L74 IsIncluded]: Start isIncluded. First operand 468 states. Second operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:13:47,233 INFO L87 Difference]: Start difference. First operand 468 states. Second operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:13:47,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:13:47,245 INFO L93 Difference]: Finished difference Result 468 states and 644 transitions. [2022-04-15 15:13:47,245 INFO L276 IsEmpty]: Start isEmpty. Operand 468 states and 644 transitions. [2022-04-15 15:13:47,246 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:13:47,246 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:13:47,246 INFO L74 IsIncluded]: Start isIncluded. First operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 468 states. [2022-04-15 15:13:47,247 INFO L87 Difference]: Start difference. First operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 468 states. [2022-04-15 15:13:47,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:13:47,258 INFO L93 Difference]: Finished difference Result 468 states and 644 transitions. [2022-04-15 15:13:47,258 INFO L276 IsEmpty]: Start isEmpty. Operand 468 states and 644 transitions. [2022-04-15 15:13:47,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:13:47,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:13:47,259 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:13:47,259 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:13:47,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 407 states, 234 states have (on average 1.1965811965811965) internal successors, (280), 235 states have internal predecessors, (280), 143 states have call successors, (143), 30 states have call predecessors, (143), 29 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-15 15:13:47,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 407 states to 407 states and 564 transitions. [2022-04-15 15:13:47,271 INFO L78 Accepts]: Start accepts. Automaton has 407 states and 564 transitions. Word has length 102 [2022-04-15 15:13:47,271 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:13:47,271 INFO L478 AbstractCegarLoop]: Abstraction has 407 states and 564 transitions. [2022-04-15 15:13:47,271 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 17 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-15 15:13:47,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 407 states and 564 transitions. [2022-04-15 15:13:49,075 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 564 edges. 564 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:13:49,075 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 564 transitions. [2022-04-15 15:13:49,077 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-15 15:13:49,077 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:13:49,077 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 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, 1] [2022-04-15 15:13:49,093 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Ended with exit code 0 [2022-04-15 15:13:49,292 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-15 15:13:49,293 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:13:49,293 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:13:49,293 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 5 times [2022-04-15 15:13:49,293 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:13:49,293 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1134410317] [2022-04-15 15:13:49,293 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:13:49,293 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 6 times [2022-04-15 15:13:49,293 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:13:49,294 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [635873664] [2022-04-15 15:13:49,294 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:13:49,294 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:13:49,312 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:13:49,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1274607299] [2022-04-15 15:13:49,312 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 15:13:49,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:13:49,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:13:49,313 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:13:49,313 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-15 15:13:49,455 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 15:13:49,456 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:13:49,457 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-15 15:13:49,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:13:49,476 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:17,030 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:14:24,045 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:14:24,302 INFO L272 TraceCheckUtils]: 0: Hoare triple {26579#true} call ULTIMATE.init(); {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 1: Hoare triple {26579#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); {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 2: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26579#true} {26579#true} #112#return; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L272 TraceCheckUtils]: 4: Hoare triple {26579#true} call #t~ret6 := main(); {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 5: Hoare triple {26579#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L272 TraceCheckUtils]: 6: Hoare triple {26579#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 7: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 8: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 9: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26579#true} {26579#true} #94#return; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 11: Hoare triple {26579#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L272 TraceCheckUtils]: 12: Hoare triple {26579#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 13: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 14: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L290 TraceCheckUtils]: 15: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,303 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26579#true} {26579#true} #96#return; {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L272 TraceCheckUtils]: 17: Hoare triple {26579#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L290 TraceCheckUtils]: 18: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L290 TraceCheckUtils]: 19: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L290 TraceCheckUtils]: 20: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26579#true} {26579#true} #98#return; {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L272 TraceCheckUtils]: 22: Hoare triple {26579#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L290 TraceCheckUtils]: 23: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L290 TraceCheckUtils]: 24: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L290 TraceCheckUtils]: 25: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26579#true} {26579#true} #100#return; {26579#true} is VALID [2022-04-15 15:14:24,304 INFO L290 TraceCheckUtils]: 27: Hoare triple {26579#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {26665#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,305 INFO L290 TraceCheckUtils]: 28: Hoare triple {26665#(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; {26665#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,305 INFO L290 TraceCheckUtils]: 29: Hoare triple {26665#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,305 INFO L290 TraceCheckUtils]: 30: Hoare triple {26672#(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; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,306 INFO L290 TraceCheckUtils]: 31: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,306 INFO L290 TraceCheckUtils]: 32: Hoare triple {26672#(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; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,306 INFO L272 TraceCheckUtils]: 33: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,306 INFO L290 TraceCheckUtils]: 34: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,306 INFO L290 TraceCheckUtils]: 35: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,306 INFO L290 TraceCheckUtils]: 36: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,307 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26579#true} {26672#(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))} #102#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,307 INFO L272 TraceCheckUtils]: 38: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,307 INFO L290 TraceCheckUtils]: 39: Hoare triple {26579#true} ~cond := #in~cond; {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:14:24,308 INFO L290 TraceCheckUtils]: 40: Hoare triple {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:24,308 INFO L290 TraceCheckUtils]: 41: Hoare triple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:24,309 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} {26672#(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))} #104#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,309 INFO L272 TraceCheckUtils]: 43: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,309 INFO L290 TraceCheckUtils]: 44: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,309 INFO L290 TraceCheckUtils]: 45: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,309 INFO L290 TraceCheckUtils]: 46: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,310 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26579#true} {26672#(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))} #106#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,310 INFO L272 TraceCheckUtils]: 48: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:14:24,310 INFO L290 TraceCheckUtils]: 49: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,310 INFO L290 TraceCheckUtils]: 50: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,310 INFO L290 TraceCheckUtils]: 51: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,310 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26579#true} {26672#(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))} #108#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,311 INFO L290 TraceCheckUtils]: 53: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,311 INFO L290 TraceCheckUtils]: 54: Hoare triple {26672#(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; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,311 INFO L272 TraceCheckUtils]: 55: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,311 INFO L290 TraceCheckUtils]: 56: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,311 INFO L290 TraceCheckUtils]: 57: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,311 INFO L290 TraceCheckUtils]: 58: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,312 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26579#true} {26672#(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))} #102#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,312 INFO L272 TraceCheckUtils]: 60: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,312 INFO L290 TraceCheckUtils]: 61: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,312 INFO L290 TraceCheckUtils]: 62: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,312 INFO L290 TraceCheckUtils]: 63: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,313 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26579#true} {26672#(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))} #104#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,313 INFO L272 TraceCheckUtils]: 65: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,313 INFO L290 TraceCheckUtils]: 66: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,313 INFO L290 TraceCheckUtils]: 67: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,313 INFO L290 TraceCheckUtils]: 68: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,314 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26579#true} {26672#(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))} #106#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,314 INFO L272 TraceCheckUtils]: 70: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:14:24,314 INFO L290 TraceCheckUtils]: 71: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,314 INFO L290 TraceCheckUtils]: 72: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,314 INFO L290 TraceCheckUtils]: 73: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,315 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26579#true} {26672#(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))} #108#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,315 INFO L290 TraceCheckUtils]: 75: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,316 INFO L290 TraceCheckUtils]: 76: Hoare triple {26672#(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; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,316 INFO L272 TraceCheckUtils]: 77: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,316 INFO L290 TraceCheckUtils]: 78: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,316 INFO L290 TraceCheckUtils]: 79: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,316 INFO L290 TraceCheckUtils]: 80: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,316 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26579#true} {26672#(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))} #102#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,316 INFO L272 TraceCheckUtils]: 82: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,317 INFO L290 TraceCheckUtils]: 83: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,317 INFO L290 TraceCheckUtils]: 84: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,317 INFO L290 TraceCheckUtils]: 85: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,317 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26579#true} {26672#(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))} #104#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,317 INFO L272 TraceCheckUtils]: 87: Hoare triple {26672#(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)); {26579#true} is VALID [2022-04-15 15:14:24,317 INFO L290 TraceCheckUtils]: 88: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:14:24,317 INFO L290 TraceCheckUtils]: 89: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:14:24,317 INFO L290 TraceCheckUtils]: 90: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:14:24,318 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26579#true} {26672#(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))} #106#return; {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,318 INFO L272 TraceCheckUtils]: 92: Hoare triple {26672#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:14:24,318 INFO L290 TraceCheckUtils]: 93: Hoare triple {26579#true} ~cond := #in~cond; {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:14:24,319 INFO L290 TraceCheckUtils]: 94: Hoare triple {26703#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:24,319 INFO L290 TraceCheckUtils]: 95: Hoare triple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:24,320 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} {26672#(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))} #108#return; {26876#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,320 INFO L290 TraceCheckUtils]: 97: Hoare triple {26876#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {26880#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,323 INFO L290 TraceCheckUtils]: 98: Hoare triple {26880#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,324 INFO L290 TraceCheckUtils]: 99: Hoare triple {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !false; {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,324 INFO L290 TraceCheckUtils]: 100: Hoare triple {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-15 15:14:24,326 INFO L290 TraceCheckUtils]: 101: Hoare triple {26884#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= 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; {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-15 15:14:24,327 INFO L290 TraceCheckUtils]: 102: Hoare triple {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !false; {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-15 15:14:24,327 INFO L290 TraceCheckUtils]: 103: Hoare triple {26894#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !(0 != ~b~0); {26901#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} is VALID [2022-04-15 15:14:24,330 INFO L272 TraceCheckUtils]: 104: Hoare triple {26901#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {26905#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:14:24,331 INFO L290 TraceCheckUtils]: 105: Hoare triple {26905#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26909#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:14:24,331 INFO L290 TraceCheckUtils]: 106: Hoare triple {26909#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26580#false} is VALID [2022-04-15 15:14:24,331 INFO L290 TraceCheckUtils]: 107: Hoare triple {26580#false} assume !false; {26580#false} is VALID [2022-04-15 15:14:24,332 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 244 trivial. 0 not checked. [2022-04-15 15:14:24,332 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:32,192 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:15:59,732 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:17:02,397 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:17:40,878 INFO L290 TraceCheckUtils]: 107: Hoare triple {26580#false} assume !false; {26580#false} is VALID [2022-04-15 15:17:40,878 INFO L290 TraceCheckUtils]: 106: Hoare triple {26909#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26580#false} is VALID [2022-04-15 15:17:40,878 INFO L290 TraceCheckUtils]: 105: Hoare triple {26905#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26909#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:17:40,879 INFO L272 TraceCheckUtils]: 104: Hoare triple {26925#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {26905#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:17:40,879 INFO L290 TraceCheckUtils]: 103: Hoare triple {26929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {26925#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 15:17:40,880 INFO L290 TraceCheckUtils]: 102: Hoare triple {26929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {26929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 15:17:40,947 INFO L290 TraceCheckUtils]: 101: Hoare triple {26936#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {26929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-15 15:17:40,948 INFO L290 TraceCheckUtils]: 100: Hoare triple {26936#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {26936#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:17:40,948 INFO L290 TraceCheckUtils]: 99: Hoare triple {26936#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {26936#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:17:41,250 INFO L290 TraceCheckUtils]: 98: Hoare triple {26946#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {26936#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:17:41,250 INFO L290 TraceCheckUtils]: 97: Hoare triple {26950#(or (<= (* main_~v~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {26946#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:17:43,253 WARN L284 TraceCheckUtils]: 96: Hoare quadruple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {26950#(or (<= (* main_~v~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is UNKNOWN [2022-04-15 15:17:43,254 INFO L290 TraceCheckUtils]: 95: Hoare triple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:43,254 INFO L290 TraceCheckUtils]: 94: Hoare triple {26964#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:43,254 INFO L290 TraceCheckUtils]: 93: Hoare triple {26579#true} ~cond := #in~cond; {26964#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:17:43,255 INFO L272 TraceCheckUtils]: 92: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,255 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,255 INFO L290 TraceCheckUtils]: 90: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,255 INFO L290 TraceCheckUtils]: 89: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,255 INFO L290 TraceCheckUtils]: 88: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,256 INFO L272 TraceCheckUtils]: 87: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,256 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,256 INFO L290 TraceCheckUtils]: 85: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,256 INFO L290 TraceCheckUtils]: 84: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,256 INFO L290 TraceCheckUtils]: 83: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,256 INFO L272 TraceCheckUtils]: 82: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,257 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,257 INFO L290 TraceCheckUtils]: 80: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,257 INFO L290 TraceCheckUtils]: 79: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,257 INFO L290 TraceCheckUtils]: 78: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,257 INFO L272 TraceCheckUtils]: 77: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,271 INFO L290 TraceCheckUtils]: 76: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,272 INFO L290 TraceCheckUtils]: 75: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,272 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,272 INFO L290 TraceCheckUtils]: 73: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,272 INFO L290 TraceCheckUtils]: 72: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,272 INFO L290 TraceCheckUtils]: 71: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,272 INFO L272 TraceCheckUtils]: 70: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,273 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,273 INFO L290 TraceCheckUtils]: 68: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,273 INFO L290 TraceCheckUtils]: 67: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,273 INFO L290 TraceCheckUtils]: 66: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,273 INFO L272 TraceCheckUtils]: 65: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,274 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,274 INFO L290 TraceCheckUtils]: 63: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,274 INFO L290 TraceCheckUtils]: 62: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,274 INFO L290 TraceCheckUtils]: 61: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,274 INFO L272 TraceCheckUtils]: 60: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,276 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,276 INFO L290 TraceCheckUtils]: 58: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,276 INFO L290 TraceCheckUtils]: 57: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,276 INFO L290 TraceCheckUtils]: 56: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,276 INFO L272 TraceCheckUtils]: 55: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,277 INFO L290 TraceCheckUtils]: 54: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,277 INFO L290 TraceCheckUtils]: 53: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,278 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,278 INFO L290 TraceCheckUtils]: 51: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,278 INFO L290 TraceCheckUtils]: 50: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,278 INFO L290 TraceCheckUtils]: 49: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,278 INFO L272 TraceCheckUtils]: 48: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,279 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26579#true} {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,279 INFO L290 TraceCheckUtils]: 46: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,279 INFO L290 TraceCheckUtils]: 45: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,279 INFO L290 TraceCheckUtils]: 44: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,279 INFO L272 TraceCheckUtils]: 43: Hoare triple {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,280 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {26954#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,280 INFO L290 TraceCheckUtils]: 41: Hoare triple {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:43,281 INFO L290 TraceCheckUtils]: 40: Hoare triple {26964#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {26707#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:43,281 INFO L290 TraceCheckUtils]: 39: Hoare triple {26579#true} ~cond := #in~cond; {26964#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:17:43,281 INFO L272 TraceCheckUtils]: 38: Hoare triple {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,282 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26579#true} {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,282 INFO L290 TraceCheckUtils]: 36: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,282 INFO L290 TraceCheckUtils]: 35: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,282 INFO L290 TraceCheckUtils]: 34: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,282 INFO L272 TraceCheckUtils]: 33: Hoare triple {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,282 INFO L290 TraceCheckUtils]: 32: Hoare triple {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,283 INFO L290 TraceCheckUtils]: 31: Hoare triple {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {27158#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27118#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-15 15:17:43,285 INFO L290 TraceCheckUtils]: 28: Hoare triple {27158#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {27158#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:17:43,286 INFO L290 TraceCheckUtils]: 27: Hoare triple {26579#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27158#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-15 15:17:43,286 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26579#true} {26579#true} #100#return; {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L290 TraceCheckUtils]: 25: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L290 TraceCheckUtils]: 24: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L290 TraceCheckUtils]: 23: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L272 TraceCheckUtils]: 22: Hoare triple {26579#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26579#true} {26579#true} #98#return; {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L290 TraceCheckUtils]: 20: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L290 TraceCheckUtils]: 19: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L290 TraceCheckUtils]: 18: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L272 TraceCheckUtils]: 17: Hoare triple {26579#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,286 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26579#true} {26579#true} #96#return; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 15: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 14: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L272 TraceCheckUtils]: 12: Hoare triple {26579#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 11: Hoare triple {26579#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26579#true} {26579#true} #94#return; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 9: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 8: Hoare triple {26579#true} assume !(0 == ~cond); {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 7: Hoare triple {26579#true} ~cond := #in~cond; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L272 TraceCheckUtils]: 6: Hoare triple {26579#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 5: Hoare triple {26579#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L272 TraceCheckUtils]: 4: Hoare triple {26579#true} call #t~ret6 := main(); {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26579#true} {26579#true} #112#return; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 2: Hoare triple {26579#true} assume true; {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L290 TraceCheckUtils]: 1: Hoare triple {26579#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); {26579#true} is VALID [2022-04-15 15:17:43,287 INFO L272 TraceCheckUtils]: 0: Hoare triple {26579#true} call ULTIMATE.init(); {26579#true} is VALID [2022-04-15 15:17:43,288 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 61 proven. 35 refuted. 0 times theorem prover too weak. 238 trivial. 0 not checked. [2022-04-15 15:17:43,288 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:17:43,288 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [635873664] [2022-04-15 15:17:43,288 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:17:43,288 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1274607299] [2022-04-15 15:17:43,288 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1274607299] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:17:43,288 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:17:43,288 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-15 15:17:43,288 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:17:43,288 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1134410317] [2022-04-15 15:17:43,288 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1134410317] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:17:43,289 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:17:43,289 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 15:17:43,289 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2083950307] [2022-04-15 15:17:43,289 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:17:43,289 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) Word has length 108 [2022-04-15 15:17:43,289 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:17:43,289 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-15 15:17:43,342 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:17:43,342 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 15:17:43,342 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:17:43,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 15:17:43,342 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=387, Unknown=0, NotChecked=0, Total=462 [2022-04-15 15:17:43,343 INFO L87 Difference]: Start difference. First operand 407 states and 564 transitions. Second operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-15 15:17:46,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:17:46,164 INFO L93 Difference]: Finished difference Result 487 states and 674 transitions. [2022-04-15 15:17:46,164 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 15:17:46,164 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) Word has length 108 [2022-04-15 15:17:46,164 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:17:46,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-15 15:17:46,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-15 15:17:46,166 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-15 15:17:46,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-15 15:17:46,168 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 119 transitions. [2022-04-15 15:17:46,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:17:46,323 INFO L225 Difference]: With dead ends: 487 [2022-04-15 15:17:46,324 INFO L226 Difference]: Without dead ends: 484 [2022-04-15 15:17:46,324 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 222 GetRequests, 194 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 109 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=143, Invalid=669, Unknown=0, NotChecked=0, Total=812 [2022-04-15 15:17:46,324 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 48 mSDsluCounter, 214 mSDsCounter, 0 mSdLazyCounter, 483 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 261 SdHoareTripleChecker+Invalid, 526 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 483 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-15 15:17:46,324 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [56 Valid, 261 Invalid, 526 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 483 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-15 15:17:46,325 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 484 states. [2022-04-15 15:17:47,750 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 484 to 401. [2022-04-15 15:17:47,750 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:17:47,751 INFO L82 GeneralOperation]: Start isEquivalent. First operand 484 states. Second operand has 401 states, 232 states have (on average 1.1939655172413792) internal successors, (277), 233 states have internal predecessors, (277), 139 states have call successors, (139), 30 states have call predecessors, (139), 29 states have return successors, (137), 137 states have call predecessors, (137), 137 states have call successors, (137) [2022-04-15 15:17:47,751 INFO L74 IsIncluded]: Start isIncluded. First operand 484 states. Second operand has 401 states, 232 states have (on average 1.1939655172413792) internal successors, (277), 233 states have internal predecessors, (277), 139 states have call successors, (139), 30 states have call predecessors, (139), 29 states have return successors, (137), 137 states have call predecessors, (137), 137 states have call successors, (137) [2022-04-15 15:17:47,752 INFO L87 Difference]: Start difference. First operand 484 states. Second operand has 401 states, 232 states have (on average 1.1939655172413792) internal successors, (277), 233 states have internal predecessors, (277), 139 states have call successors, (139), 30 states have call predecessors, (139), 29 states have return successors, (137), 137 states have call predecessors, (137), 137 states have call successors, (137) [2022-04-15 15:17:47,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:17:47,763 INFO L93 Difference]: Finished difference Result 484 states and 670 transitions. [2022-04-15 15:17:47,763 INFO L276 IsEmpty]: Start isEmpty. Operand 484 states and 670 transitions. [2022-04-15 15:17:47,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:17:47,764 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:17:47,765 INFO L74 IsIncluded]: Start isIncluded. First operand has 401 states, 232 states have (on average 1.1939655172413792) internal successors, (277), 233 states have internal predecessors, (277), 139 states have call successors, (139), 30 states have call predecessors, (139), 29 states have return successors, (137), 137 states have call predecessors, (137), 137 states have call successors, (137) Second operand 484 states. [2022-04-15 15:17:47,765 INFO L87 Difference]: Start difference. First operand has 401 states, 232 states have (on average 1.1939655172413792) internal successors, (277), 233 states have internal predecessors, (277), 139 states have call successors, (139), 30 states have call predecessors, (139), 29 states have return successors, (137), 137 states have call predecessors, (137), 137 states have call successors, (137) Second operand 484 states. [2022-04-15 15:17:47,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:17:47,776 INFO L93 Difference]: Finished difference Result 484 states and 670 transitions. [2022-04-15 15:17:47,776 INFO L276 IsEmpty]: Start isEmpty. Operand 484 states and 670 transitions. [2022-04-15 15:17:47,777 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:17:47,777 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:17:47,777 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:17:47,777 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:17:47,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 401 states, 232 states have (on average 1.1939655172413792) internal successors, (277), 233 states have internal predecessors, (277), 139 states have call successors, (139), 30 states have call predecessors, (139), 29 states have return successors, (137), 137 states have call predecessors, (137), 137 states have call successors, (137) [2022-04-15 15:17:47,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 401 states to 401 states and 553 transitions. [2022-04-15 15:17:47,788 INFO L78 Accepts]: Start accepts. Automaton has 401 states and 553 transitions. Word has length 108 [2022-04-15 15:17:47,788 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:17:47,788 INFO L478 AbstractCegarLoop]: Abstraction has 401 states and 553 transitions. [2022-04-15 15:17:47,788 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-15 15:17:47,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 401 states and 553 transitions. [2022-04-15 15:17:49,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 553 edges. 553 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:17:49,666 INFO L276 IsEmpty]: Start isEmpty. Operand 401 states and 553 transitions. [2022-04-15 15:17:49,667 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-15 15:17:49,667 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:17:49,667 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:17:49,684 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2022-04-15 15:17:49,868 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-15 15:17:49,868 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:17:49,868 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:17:49,868 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 9 times [2022-04-15 15:17:49,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:17:49,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [20132319] [2022-04-15 15:17:49,869 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:17:49,869 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 10 times [2022-04-15 15:17:49,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:17:49,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1263116161] [2022-04-15 15:17:49,869 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:17:49,869 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:17:49,881 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:17:49,881 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1666892943] [2022-04-15 15:17:49,881 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:17:49,881 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:17:49,881 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:17:49,882 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:17:49,883 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-15 15:17:49,944 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:17:49,945 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:17:49,947 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 99 conjunts are in the unsatisfiable core [2022-04-15 15:17:49,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:17:49,959 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:17:52,197 INFO L272 TraceCheckUtils]: 0: Hoare triple {30006#true} call ULTIMATE.init(); {30006#true} is VALID [2022-04-15 15:17:52,197 INFO L290 TraceCheckUtils]: 1: Hoare triple {30006#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); {30006#true} is VALID [2022-04-15 15:17:52,198 INFO L290 TraceCheckUtils]: 2: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,198 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30006#true} {30006#true} #112#return; {30006#true} is VALID [2022-04-15 15:17:52,198 INFO L272 TraceCheckUtils]: 4: Hoare triple {30006#true} call #t~ret6 := main(); {30006#true} is VALID [2022-04-15 15:17:52,198 INFO L290 TraceCheckUtils]: 5: Hoare triple {30006#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {30006#true} is VALID [2022-04-15 15:17:52,198 INFO L272 TraceCheckUtils]: 6: Hoare triple {30006#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,200 INFO L290 TraceCheckUtils]: 7: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 8: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 9: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30006#true} {30006#true} #94#return; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 11: Hoare triple {30006#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L272 TraceCheckUtils]: 12: Hoare triple {30006#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 13: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 14: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 15: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {30006#true} {30006#true} #96#return; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L272 TraceCheckUtils]: 17: Hoare triple {30006#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 18: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 19: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30006#true} {30006#true} #98#return; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L272 TraceCheckUtils]: 22: Hoare triple {30006#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 23: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 24: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,201 INFO L290 TraceCheckUtils]: 25: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,202 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30006#true} {30006#true} #100#return; {30006#true} is VALID [2022-04-15 15:17:52,202 INFO L290 TraceCheckUtils]: 27: Hoare triple {30006#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30092#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,202 INFO L290 TraceCheckUtils]: 28: Hoare triple {30092#(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; {30092#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,202 INFO L290 TraceCheckUtils]: 29: Hoare triple {30092#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30099#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,203 INFO L290 TraceCheckUtils]: 30: Hoare triple {30099#(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; {30099#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,203 INFO L290 TraceCheckUtils]: 31: Hoare triple {30099#(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); {30099#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,203 INFO L290 TraceCheckUtils]: 32: Hoare triple {30099#(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))} ~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; {30109#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,204 INFO L290 TraceCheckUtils]: 33: Hoare triple {30109#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {30109#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,204 INFO L290 TraceCheckUtils]: 34: Hoare triple {30109#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30116#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,204 INFO L290 TraceCheckUtils]: 35: Hoare triple {30116#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {30116#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,204 INFO L290 TraceCheckUtils]: 36: Hoare triple {30116#(and (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,205 INFO L290 TraceCheckUtils]: 37: Hoare triple {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !false; {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,205 INFO L272 TraceCheckUtils]: 38: Hoare triple {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,205 INFO L290 TraceCheckUtils]: 39: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,205 INFO L290 TraceCheckUtils]: 40: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,205 INFO L290 TraceCheckUtils]: 41: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,205 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {30006#true} {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #102#return; {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,205 INFO L272 TraceCheckUtils]: 43: Hoare triple {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,205 INFO L290 TraceCheckUtils]: 44: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,206 INFO L290 TraceCheckUtils]: 45: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,206 INFO L290 TraceCheckUtils]: 46: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,206 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30006#true} {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #104#return; {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,206 INFO L272 TraceCheckUtils]: 48: Hoare triple {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,206 INFO L290 TraceCheckUtils]: 49: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,206 INFO L290 TraceCheckUtils]: 50: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,206 INFO L290 TraceCheckUtils]: 51: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,207 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {30006#true} {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #106#return; {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,207 INFO L272 TraceCheckUtils]: 53: Hoare triple {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,207 INFO L290 TraceCheckUtils]: 54: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,207 INFO L290 TraceCheckUtils]: 55: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,207 INFO L290 TraceCheckUtils]: 56: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,207 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {30006#true} {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #108#return; {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,208 INFO L290 TraceCheckUtils]: 58: Hoare triple {30123#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !(~c~0 >= 2 * ~v~0); {30190#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,208 INFO L290 TraceCheckUtils]: 59: Hoare triple {30190#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30194#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (not (<= (* main_~b~0 2) main_~y~0)) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,208 INFO L290 TraceCheckUtils]: 60: Hoare triple {30194#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (not (<= (* main_~b~0 2) main_~y~0)) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} assume !false; {30194#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (not (<= (* main_~b~0 2) main_~y~0)) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,209 INFO L290 TraceCheckUtils]: 61: Hoare triple {30194#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (not (<= (* main_~b~0 2) main_~y~0)) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {30194#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (not (<= (* main_~b~0 2) main_~y~0)) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-15 15:17:52,210 INFO L290 TraceCheckUtils]: 62: Hoare triple {30194#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (<= main_~r~0 1) (= main_~p~0 0) (not (<= (* main_~b~0 2) main_~y~0)) (= main_~b~0 main_~x~0) (= 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; {30204#(and (= main_~r~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,210 INFO L290 TraceCheckUtils]: 63: Hoare triple {30204#(and (= main_~r~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {30204#(and (= main_~r~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,211 INFO L290 TraceCheckUtils]: 64: Hoare triple {30204#(and (= main_~r~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30211#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,211 INFO L290 TraceCheckUtils]: 65: Hoare triple {30211#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {30211#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,211 INFO L290 TraceCheckUtils]: 66: Hoare triple {30211#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30218#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,212 INFO L290 TraceCheckUtils]: 67: Hoare triple {30218#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {30218#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,212 INFO L272 TraceCheckUtils]: 68: Hoare triple {30218#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,212 INFO L290 TraceCheckUtils]: 69: Hoare triple {30006#true} ~cond := #in~cond; {30228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:17:52,212 INFO L290 TraceCheckUtils]: 70: Hoare triple {30228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:52,212 INFO L290 TraceCheckUtils]: 71: Hoare triple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:52,213 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} {30218#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (<= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #102#return; {30239#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,213 INFO L272 TraceCheckUtils]: 73: Hoare triple {30239#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~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)); {30006#true} is VALID [2022-04-15 15:17:52,213 INFO L290 TraceCheckUtils]: 74: Hoare triple {30006#true} ~cond := #in~cond; {30228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:17:52,214 INFO L290 TraceCheckUtils]: 75: Hoare triple {30228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:52,214 INFO L290 TraceCheckUtils]: 76: Hoare triple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:52,214 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} {30239#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,215 INFO L272 TraceCheckUtils]: 78: Hoare triple {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~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)); {30006#true} is VALID [2022-04-15 15:17:52,215 INFO L290 TraceCheckUtils]: 79: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,215 INFO L290 TraceCheckUtils]: 80: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,215 INFO L290 TraceCheckUtils]: 81: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,215 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30006#true} {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,215 INFO L272 TraceCheckUtils]: 83: Hoare triple {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,215 INFO L290 TraceCheckUtils]: 84: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:17:52,215 INFO L290 TraceCheckUtils]: 85: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:17:52,215 INFO L290 TraceCheckUtils]: 86: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:17:52,216 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {30006#true} {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,216 INFO L290 TraceCheckUtils]: 88: Hoare triple {30255#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (<= (+ main_~s~0 main_~r~0) 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {30289#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (< main_~c~0 (* main_~v~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,217 INFO L290 TraceCheckUtils]: 89: Hoare triple {30289#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (< main_~c~0 (* main_~v~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30293#(and (< main_~x~0 (* main_~b~0 2)) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,217 INFO L290 TraceCheckUtils]: 90: Hoare triple {30293#(and (< main_~x~0 (* main_~b~0 2)) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {30293#(and (< main_~x~0 (* main_~b~0 2)) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,217 INFO L290 TraceCheckUtils]: 91: Hoare triple {30293#(and (< main_~x~0 (* main_~b~0 2)) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {30293#(and (< main_~x~0 (* main_~b~0 2)) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 15:17:52,218 INFO L290 TraceCheckUtils]: 92: Hoare triple {30293#(and (< main_~x~0 (* main_~b~0 2)) (= main_~r~0 0) (= main_~y~0 (+ main_~b~0 main_~x~0)) (< main_~y~0 (* main_~x~0 2)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1) (= (+ main_~q~0 main_~p~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; {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} is VALID [2022-04-15 15:17:52,218 INFO L290 TraceCheckUtils]: 93: Hoare triple {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} assume !false; {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} is VALID [2022-04-15 15:17:52,219 INFO L290 TraceCheckUtils]: 94: Hoare triple {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} is VALID [2022-04-15 15:17:52,219 INFO L290 TraceCheckUtils]: 95: Hoare triple {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} assume !false; {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} is VALID [2022-04-15 15:17:52,220 INFO L290 TraceCheckUtils]: 96: Hoare triple {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} is VALID [2022-04-15 15:17:52,220 INFO L290 TraceCheckUtils]: 97: Hoare triple {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} assume !false; {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} is VALID [2022-04-15 15:17:52,220 INFO L272 TraceCheckUtils]: 98: Hoare triple {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:17:52,220 INFO L290 TraceCheckUtils]: 99: Hoare triple {30006#true} ~cond := #in~cond; {30228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:17:52,220 INFO L290 TraceCheckUtils]: 100: Hoare triple {30228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:52,221 INFO L290 TraceCheckUtils]: 101: Hoare triple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:17:52,223 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} {30303#(and (= (+ main_~a~0 main_~x~0) main_~y~0) (= (+ main_~s~0 main_~r~0) 0) (< main_~y~0 (* main_~x~0 2)) (= (+ main_~p~0 1) 0) (< main_~x~0 (* main_~a~0 2)) (= (+ main_~q~0 main_~p~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)))} #102#return; {30334#(and (< main_~y~0 (* main_~x~0 2)) (= (+ main_~b~0 main_~y~0 (* (- 1) main_~x~0)) main_~x~0) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= (+ main_~y~0 (* (- 1) main_~x~0)) (+ (* main_~y~0 (* (- 1) main_~s~0)) (* (- 1) main_~x~0))))} is VALID [2022-04-15 15:17:52,223 INFO L272 TraceCheckUtils]: 103: Hoare triple {30334#(and (< main_~y~0 (* main_~x~0 2)) (= (+ main_~b~0 main_~y~0 (* (- 1) main_~x~0)) main_~x~0) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= (+ main_~y~0 (* (- 1) main_~x~0)) (+ (* main_~y~0 (* (- 1) main_~s~0)) (* (- 1) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30338#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:17:52,224 INFO L290 TraceCheckUtils]: 104: Hoare triple {30338#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30342#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:17:52,224 INFO L290 TraceCheckUtils]: 105: Hoare triple {30342#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30007#false} is VALID [2022-04-15 15:17:52,224 INFO L290 TraceCheckUtils]: 106: Hoare triple {30007#false} assume !false; {30007#false} is VALID [2022-04-15 15:17:52,224 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 57 proven. 73 refuted. 0 times theorem prover too weak. 114 trivial. 0 not checked. [2022-04-15 15:17:52,224 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:18:48,257 INFO L290 TraceCheckUtils]: 106: Hoare triple {30007#false} assume !false; {30007#false} is VALID [2022-04-15 15:18:48,258 INFO L290 TraceCheckUtils]: 105: Hoare triple {30342#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30007#false} is VALID [2022-04-15 15:18:48,258 INFO L290 TraceCheckUtils]: 104: Hoare triple {30338#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30342#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:18:48,259 INFO L272 TraceCheckUtils]: 103: Hoare triple {30358#(= 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)); {30338#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:18:48,259 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} {30362#(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)))))} #102#return; {30358#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 15:18:48,259 INFO L290 TraceCheckUtils]: 101: Hoare triple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:18:48,260 INFO L290 TraceCheckUtils]: 100: Hoare triple {30372#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:18:48,260 INFO L290 TraceCheckUtils]: 99: Hoare triple {30006#true} ~cond := #in~cond; {30372#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:18:48,260 INFO L272 TraceCheckUtils]: 98: Hoare triple {30362#(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)); {30006#true} is VALID [2022-04-15 15:18:48,260 INFO L290 TraceCheckUtils]: 97: Hoare triple {30362#(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; {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:18:48,261 INFO L290 TraceCheckUtils]: 96: Hoare triple {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:18:48,261 INFO L290 TraceCheckUtils]: 95: Hoare triple {30362#(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; {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:18:48,261 INFO L290 TraceCheckUtils]: 94: Hoare triple {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:18:48,262 INFO L290 TraceCheckUtils]: 93: Hoare triple {30362#(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; {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:18:48,273 INFO L290 TraceCheckUtils]: 92: Hoare triple {30394#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30362#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 15:18:48,274 INFO L290 TraceCheckUtils]: 91: Hoare triple {30394#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {30394#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,274 INFO L290 TraceCheckUtils]: 90: Hoare triple {30394#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {30394#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,279 INFO L290 TraceCheckUtils]: 89: Hoare triple {30404#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30394#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,280 INFO L290 TraceCheckUtils]: 88: Hoare triple {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {30404#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,280 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {30006#true} {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #108#return; {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,280 INFO L290 TraceCheckUtils]: 86: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,280 INFO L290 TraceCheckUtils]: 85: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,280 INFO L290 TraceCheckUtils]: 84: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,280 INFO L272 TraceCheckUtils]: 83: Hoare triple {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,281 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30006#true} {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #106#return; {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,281 INFO L290 TraceCheckUtils]: 81: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,281 INFO L290 TraceCheckUtils]: 80: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,281 INFO L290 TraceCheckUtils]: 79: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,281 INFO L272 TraceCheckUtils]: 78: Hoare triple {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,282 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {30006#true} {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,282 INFO L290 TraceCheckUtils]: 76: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,282 INFO L290 TraceCheckUtils]: 75: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,282 INFO L290 TraceCheckUtils]: 74: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,282 INFO L272 TraceCheckUtils]: 73: Hoare triple {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,283 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} {30457#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {30408#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,283 INFO L290 TraceCheckUtils]: 71: Hoare triple {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:18:48,283 INFO L290 TraceCheckUtils]: 70: Hoare triple {30372#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:18:48,284 INFO L290 TraceCheckUtils]: 69: Hoare triple {30006#true} ~cond := #in~cond; {30372#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:18:48,285 INFO L272 TraceCheckUtils]: 68: Hoare triple {30457#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,286 INFO L290 TraceCheckUtils]: 67: Hoare triple {30457#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {30457#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,286 INFO L290 TraceCheckUtils]: 66: Hoare triple {30476#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30457#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,287 INFO L290 TraceCheckUtils]: 65: Hoare triple {30476#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {30476#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,288 INFO L290 TraceCheckUtils]: 64: Hoare triple {30006#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30476#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 15:18:48,288 INFO L290 TraceCheckUtils]: 63: Hoare triple {30006#true} assume !false; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 62: Hoare triple {30006#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; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 61: Hoare triple {30006#true} assume !(~c~0 >= ~b~0); {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 60: Hoare triple {30006#true} assume !false; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 59: Hoare triple {30006#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 58: Hoare triple {30006#true} assume !(~c~0 >= 2 * ~v~0); {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {30006#true} {30006#true} #108#return; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 56: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 55: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 54: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L272 TraceCheckUtils]: 53: Hoare triple {30006#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {30006#true} {30006#true} #106#return; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 51: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 50: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 49: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L272 TraceCheckUtils]: 48: Hoare triple {30006#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30006#true} {30006#true} #104#return; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 46: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 45: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L290 TraceCheckUtils]: 44: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,289 INFO L272 TraceCheckUtils]: 43: Hoare triple {30006#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {30006#true} {30006#true} #102#return; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 41: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 40: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 39: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L272 TraceCheckUtils]: 38: Hoare triple {30006#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 37: Hoare triple {30006#true} assume !false; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 36: Hoare triple {30006#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 35: Hoare triple {30006#true} assume !false; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 34: Hoare triple {30006#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 33: Hoare triple {30006#true} assume !false; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 32: Hoare triple {30006#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; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 31: Hoare triple {30006#true} assume !(~c~0 >= ~b~0); {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 30: Hoare triple {30006#true} assume !false; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 29: Hoare triple {30006#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 28: Hoare triple {30006#true} assume !false; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 27: Hoare triple {30006#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30006#true} {30006#true} #100#return; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 25: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 24: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,290 INFO L290 TraceCheckUtils]: 23: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L272 TraceCheckUtils]: 22: Hoare triple {30006#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30006#true} {30006#true} #98#return; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 20: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 19: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 18: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L272 TraceCheckUtils]: 17: Hoare triple {30006#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {30006#true} {30006#true} #96#return; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 15: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 14: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 13: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L272 TraceCheckUtils]: 12: Hoare triple {30006#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 11: Hoare triple {30006#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30006#true} {30006#true} #94#return; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 9: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 8: Hoare triple {30006#true} assume !(0 == ~cond); {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 7: Hoare triple {30006#true} ~cond := #in~cond; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L272 TraceCheckUtils]: 6: Hoare triple {30006#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L290 TraceCheckUtils]: 5: Hoare triple {30006#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {30006#true} is VALID [2022-04-15 15:18:48,291 INFO L272 TraceCheckUtils]: 4: Hoare triple {30006#true} call #t~ret6 := main(); {30006#true} is VALID [2022-04-15 15:18:48,292 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30006#true} {30006#true} #112#return; {30006#true} is VALID [2022-04-15 15:18:48,292 INFO L290 TraceCheckUtils]: 2: Hoare triple {30006#true} assume true; {30006#true} is VALID [2022-04-15 15:18:48,292 INFO L290 TraceCheckUtils]: 1: Hoare triple {30006#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); {30006#true} is VALID [2022-04-15 15:18:48,292 INFO L272 TraceCheckUtils]: 0: Hoare triple {30006#true} call ULTIMATE.init(); {30006#true} is VALID [2022-04-15 15:18:48,292 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 87 proven. 18 refuted. 0 times theorem prover too weak. 139 trivial. 0 not checked. [2022-04-15 15:18:48,292 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:18:48,292 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1263116161] [2022-04-15 15:18:48,293 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:18:48,293 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1666892943] [2022-04-15 15:18:48,293 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1666892943] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:18:48,293 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:18:48,293 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 13] total 30 [2022-04-15 15:18:48,293 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:18:48,293 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [20132319] [2022-04-15 15:18:48,293 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [20132319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:18:48,293 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:18:48,294 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-15 15:18:48,294 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1980746909] [2022-04-15 15:18:48,294 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:18:48,294 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 20 states have (on average 2.35) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) Word has length 107 [2022-04-15 15:18:48,294 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:18:48,294 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 20 states have (on average 2.35) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-15 15:18:48,367 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-15 15:18:48,367 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-15 15:18:48,367 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:18:48,368 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-15 15:18:48,368 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=127, Invalid=743, Unknown=0, NotChecked=0, Total=870 [2022-04-15 15:18:48,368 INFO L87 Difference]: Start difference. First operand 401 states and 553 transitions. Second operand has 22 states, 20 states have (on average 2.35) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-15 15:18:54,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:18:54,670 INFO L93 Difference]: Finished difference Result 511 states and 701 transitions. [2022-04-15 15:18:54,670 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-15 15:18:54,670 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 20 states have (on average 2.35) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) Word has length 107 [2022-04-15 15:18:54,670 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:18:54,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 20 states have (on average 2.35) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-15 15:18:54,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 195 transitions. [2022-04-15 15:18:54,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 20 states have (on average 2.35) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-15 15:18:54,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 195 transitions. [2022-04-15 15:18:54,704 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 195 transitions. [2022-04-15 15:18:54,953 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:18:54,965 INFO L225 Difference]: With dead ends: 511 [2022-04-15 15:18:54,967 INFO L226 Difference]: Without dead ends: 509 [2022-04-15 15:18:54,967 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 223 GetRequests, 183 SyntacticMatches, 2 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 292 ImplicationChecksByTransitivity, 2.2s TimeCoverageRelationStatistics Valid=222, Invalid=1338, Unknown=0, NotChecked=0, Total=1560 [2022-04-15 15:18:54,967 INFO L913 BasicCegarLoop]: 56 mSDtfsCounter, 88 mSDsluCounter, 450 mSDsCounter, 0 mSdLazyCounter, 1401 mSolverCounterSat, 82 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 110 SdHoareTripleChecker+Valid, 506 SdHoareTripleChecker+Invalid, 1483 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 82 IncrementalHoareTripleChecker+Valid, 1401 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-15 15:18:54,968 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [110 Valid, 506 Invalid, 1483 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [82 Valid, 1401 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-15 15:18:54,968 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 509 states. [2022-04-15 15:18:56,909 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 509 to 487. [2022-04-15 15:18:56,910 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:18:56,910 INFO L82 GeneralOperation]: Start isEquivalent. First operand 509 states. Second operand has 487 states, 282 states have (on average 1.1950354609929077) internal successors, (337), 283 states have internal predecessors, (337), 171 states have call successors, (171), 34 states have call predecessors, (171), 33 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-15 15:18:56,911 INFO L74 IsIncluded]: Start isIncluded. First operand 509 states. Second operand has 487 states, 282 states have (on average 1.1950354609929077) internal successors, (337), 283 states have internal predecessors, (337), 171 states have call successors, (171), 34 states have call predecessors, (171), 33 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-15 15:18:56,911 INFO L87 Difference]: Start difference. First operand 509 states. Second operand has 487 states, 282 states have (on average 1.1950354609929077) internal successors, (337), 283 states have internal predecessors, (337), 171 states have call successors, (171), 34 states have call predecessors, (171), 33 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-15 15:18:56,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:18:56,922 INFO L93 Difference]: Finished difference Result 509 states and 699 transitions. [2022-04-15 15:18:56,922 INFO L276 IsEmpty]: Start isEmpty. Operand 509 states and 699 transitions. [2022-04-15 15:18:56,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:18:56,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:18:56,924 INFO L74 IsIncluded]: Start isIncluded. First operand has 487 states, 282 states have (on average 1.1950354609929077) internal successors, (337), 283 states have internal predecessors, (337), 171 states have call successors, (171), 34 states have call predecessors, (171), 33 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) Second operand 509 states. [2022-04-15 15:18:56,924 INFO L87 Difference]: Start difference. First operand has 487 states, 282 states have (on average 1.1950354609929077) internal successors, (337), 283 states have internal predecessors, (337), 171 states have call successors, (171), 34 states have call predecessors, (171), 33 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) Second operand 509 states. [2022-04-15 15:18:56,934 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:18:56,935 INFO L93 Difference]: Finished difference Result 509 states and 699 transitions. [2022-04-15 15:18:56,935 INFO L276 IsEmpty]: Start isEmpty. Operand 509 states and 699 transitions. [2022-04-15 15:18:56,935 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:18:56,935 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:18:56,936 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:18:56,936 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:18:56,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 487 states, 282 states have (on average 1.1950354609929077) internal successors, (337), 283 states have internal predecessors, (337), 171 states have call successors, (171), 34 states have call predecessors, (171), 33 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-15 15:18:56,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 487 states to 487 states and 677 transitions. [2022-04-15 15:18:56,949 INFO L78 Accepts]: Start accepts. Automaton has 487 states and 677 transitions. Word has length 107 [2022-04-15 15:18:56,949 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:18:56,949 INFO L478 AbstractCegarLoop]: Abstraction has 487 states and 677 transitions. [2022-04-15 15:18:56,949 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 20 states have (on average 2.35) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-15 15:18:56,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 487 states and 677 transitions. [2022-04-15 15:18:59,233 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 677 edges. 677 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:18:59,233 INFO L276 IsEmpty]: Start isEmpty. Operand 487 states and 677 transitions. [2022-04-15 15:18:59,234 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-15 15:18:59,234 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:18:59,234 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:18:59,250 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Ended with exit code 0 [2022-04-15 15:18:59,441 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:18:59,442 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:18:59,442 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:18:59,442 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 7 times [2022-04-15 15:18:59,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:18:59,442 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [51234972] [2022-04-15 15:18:59,442 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:18:59,443 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 8 times [2022-04-15 15:18:59,443 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:18:59,443 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1897212202] [2022-04-15 15:18:59,443 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:18:59,443 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:18:59,470 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:18:59,470 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [739240019] [2022-04-15 15:18:59,470 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:18:59,470 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:18:59,470 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:18:59,471 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:18:59,494 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-15 15:18:59,527 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:18:59,527 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:18:59,529 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-15 15:18:59,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:18:59,543 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:19:21,357 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:19:21,992 INFO L272 TraceCheckUtils]: 0: Hoare triple {33711#true} call ULTIMATE.init(); {33711#true} is VALID [2022-04-15 15:19:21,992 INFO L290 TraceCheckUtils]: 1: Hoare triple {33711#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); {33711#true} is VALID [2022-04-15 15:19:21,992 INFO L290 TraceCheckUtils]: 2: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,992 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33711#true} {33711#true} #112#return; {33711#true} is VALID [2022-04-15 15:19:21,992 INFO L272 TraceCheckUtils]: 4: Hoare triple {33711#true} call #t~ret6 := main(); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 5: Hoare triple {33711#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L272 TraceCheckUtils]: 6: Hoare triple {33711#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 7: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 8: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 9: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33711#true} {33711#true} #94#return; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 11: Hoare triple {33711#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L272 TraceCheckUtils]: 12: Hoare triple {33711#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 15: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {33711#true} {33711#true} #96#return; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L272 TraceCheckUtils]: 17: Hoare triple {33711#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 18: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 19: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 20: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {33711#true} {33711#true} #98#return; {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L272 TraceCheckUtils]: 22: Hoare triple {33711#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {33711#true} is VALID [2022-04-15 15:19:21,993 INFO L290 TraceCheckUtils]: 23: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,994 INFO L290 TraceCheckUtils]: 24: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,994 INFO L290 TraceCheckUtils]: 25: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,994 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {33711#true} {33711#true} #100#return; {33711#true} is VALID [2022-04-15 15:19:21,994 INFO L290 TraceCheckUtils]: 27: Hoare triple {33711#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {33797#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,994 INFO L290 TraceCheckUtils]: 28: Hoare triple {33797#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33797#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,995 INFO L290 TraceCheckUtils]: 29: Hoare triple {33797#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {33804#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,995 INFO L290 TraceCheckUtils]: 30: Hoare triple {33804#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33804#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,995 INFO L290 TraceCheckUtils]: 31: Hoare triple {33804#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,996 INFO L290 TraceCheckUtils]: 32: Hoare triple {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,996 INFO L272 TraceCheckUtils]: 33: Hoare triple {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~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)); {33711#true} is VALID [2022-04-15 15:19:21,996 INFO L290 TraceCheckUtils]: 34: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,996 INFO L290 TraceCheckUtils]: 35: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,996 INFO L290 TraceCheckUtils]: 36: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,997 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {33711#true} {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,997 INFO L272 TraceCheckUtils]: 38: Hoare triple {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~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)); {33711#true} is VALID [2022-04-15 15:19:21,997 INFO L290 TraceCheckUtils]: 39: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,997 INFO L290 TraceCheckUtils]: 40: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,997 INFO L290 TraceCheckUtils]: 41: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,998 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {33711#true} {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,998 INFO L272 TraceCheckUtils]: 43: Hoare triple {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~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)); {33711#true} is VALID [2022-04-15 15:19:21,998 INFO L290 TraceCheckUtils]: 44: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,998 INFO L290 TraceCheckUtils]: 45: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,998 INFO L290 TraceCheckUtils]: 46: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:21,999 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {33711#true} {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:21,999 INFO L272 TraceCheckUtils]: 48: Hoare triple {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {33711#true} is VALID [2022-04-15 15:19:21,999 INFO L290 TraceCheckUtils]: 49: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:21,999 INFO L290 TraceCheckUtils]: 50: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:21,999 INFO L290 TraceCheckUtils]: 51: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:22,000 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {33711#true} {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,001 INFO L290 TraceCheckUtils]: 53: Hoare triple {33811#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,001 INFO L290 TraceCheckUtils]: 54: Hoare triple {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,001 INFO L272 TraceCheckUtils]: 55: Hoare triple {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 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)); {33711#true} is VALID [2022-04-15 15:19:22,001 INFO L290 TraceCheckUtils]: 56: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:22,002 INFO L290 TraceCheckUtils]: 57: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:22,002 INFO L290 TraceCheckUtils]: 58: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:22,002 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {33711#true} {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,002 INFO L272 TraceCheckUtils]: 60: Hoare triple {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 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)); {33711#true} is VALID [2022-04-15 15:19:22,002 INFO L290 TraceCheckUtils]: 61: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:22,003 INFO L290 TraceCheckUtils]: 62: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:22,003 INFO L290 TraceCheckUtils]: 63: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:22,003 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {33711#true} {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,003 INFO L272 TraceCheckUtils]: 65: Hoare triple {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 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)); {33711#true} is VALID [2022-04-15 15:19:22,003 INFO L290 TraceCheckUtils]: 66: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:22,003 INFO L290 TraceCheckUtils]: 67: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:22,004 INFO L290 TraceCheckUtils]: 68: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:22,004 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {33711#true} {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,004 INFO L272 TraceCheckUtils]: 70: Hoare triple {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {33711#true} is VALID [2022-04-15 15:19:22,005 INFO L290 TraceCheckUtils]: 71: Hoare triple {33711#true} ~cond := #in~cond; {33933#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:19:22,005 INFO L290 TraceCheckUtils]: 72: Hoare triple {33933#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:19:22,005 INFO L290 TraceCheckUtils]: 73: Hoare triple {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:19:22,006 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} {33878#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {33944#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,007 INFO L290 TraceCheckUtils]: 75: Hoare triple {33944#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {33944#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,009 INFO L290 TraceCheckUtils]: 76: Hoare triple {33944#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {33951#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,009 INFO L290 TraceCheckUtils]: 77: Hoare triple {33951#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33951#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,010 INFO L290 TraceCheckUtils]: 78: Hoare triple {33951#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,010 INFO L290 TraceCheckUtils]: 79: Hoare triple {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,010 INFO L272 TraceCheckUtils]: 80: Hoare triple {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~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)); {33711#true} is VALID [2022-04-15 15:19:22,010 INFO L290 TraceCheckUtils]: 81: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:22,010 INFO L290 TraceCheckUtils]: 82: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:22,010 INFO L290 TraceCheckUtils]: 83: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:22,011 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {33711#true} {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,011 INFO L272 TraceCheckUtils]: 85: Hoare triple {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~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)); {33711#true} is VALID [2022-04-15 15:19:22,012 INFO L290 TraceCheckUtils]: 86: Hoare triple {33711#true} ~cond := #in~cond; {33933#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:19:22,012 INFO L290 TraceCheckUtils]: 87: Hoare triple {33933#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:19:22,012 INFO L290 TraceCheckUtils]: 88: Hoare triple {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:19:22,013 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} {33958#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {33992#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,013 INFO L272 TraceCheckUtils]: 90: Hoare triple {33992#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~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)); {33711#true} is VALID [2022-04-15 15:19:22,014 INFO L290 TraceCheckUtils]: 91: Hoare triple {33711#true} ~cond := #in~cond; {33933#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:19:22,014 INFO L290 TraceCheckUtils]: 92: Hoare triple {33933#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:19:22,014 INFO L290 TraceCheckUtils]: 93: Hoare triple {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:19:22,015 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {33937#(not (= |__VERIFIER_assert_#in~cond| 0))} {33992#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34008#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,015 INFO L272 TraceCheckUtils]: 95: Hoare triple {34008#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {33711#true} is VALID [2022-04-15 15:19:22,015 INFO L290 TraceCheckUtils]: 96: Hoare triple {33711#true} ~cond := #in~cond; {33711#true} is VALID [2022-04-15 15:19:22,015 INFO L290 TraceCheckUtils]: 97: Hoare triple {33711#true} assume !(0 == ~cond); {33711#true} is VALID [2022-04-15 15:19:22,015 INFO L290 TraceCheckUtils]: 98: Hoare triple {33711#true} assume true; {33711#true} is VALID [2022-04-15 15:19:22,016 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {33711#true} {34008#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} #108#return; {34008#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,017 INFO L290 TraceCheckUtils]: 100: Hoare triple {34008#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {34008#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,019 INFO L290 TraceCheckUtils]: 101: Hoare triple {34008#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {34030#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,020 INFO L290 TraceCheckUtils]: 102: Hoare triple {34030#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {34030#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,020 INFO L290 TraceCheckUtils]: 103: Hoare triple {34030#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {34030#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 15:19:22,023 INFO L290 TraceCheckUtils]: 104: Hoare triple {34030#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {34040#(and (= main_~p~0 0) (= (* main_~a~0 4) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= (+ main_~a~0 main_~x~0) (+ (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2) main_~b~0)) (= (* main_~y~0 main_~r~0) main_~a~0) (= main_~q~0 1))} is VALID [2022-04-15 15:19:22,024 INFO L290 TraceCheckUtils]: 105: Hoare triple {34040#(and (= main_~p~0 0) (= (* main_~a~0 4) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= (+ main_~a~0 main_~x~0) (+ (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2) main_~b~0)) (= (* main_~y~0 main_~r~0) main_~a~0) (= main_~q~0 1))} assume !false; {34040#(and (= main_~p~0 0) (= (* main_~a~0 4) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= (+ main_~a~0 main_~x~0) (+ (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2) main_~b~0)) (= (* main_~y~0 main_~r~0) main_~a~0) (= main_~q~0 1))} is VALID [2022-04-15 15:19:22,024 INFO L290 TraceCheckUtils]: 106: Hoare triple {34040#(and (= main_~p~0 0) (= (* main_~a~0 4) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= (+ main_~a~0 main_~x~0) (+ (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2) main_~b~0)) (= (* main_~y~0 main_~r~0) main_~a~0) (= main_~q~0 1))} assume !(0 != ~b~0); {34047#(and (= main_~p~0 0) (= (+ main_~a~0 main_~x~0) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= (* main_~a~0 4) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= (* main_~y~0 main_~r~0) main_~a~0) (= main_~q~0 1))} is VALID [2022-04-15 15:19:22,028 INFO L272 TraceCheckUtils]: 107: Hoare triple {34047#(and (= main_~p~0 0) (= (+ main_~a~0 main_~x~0) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= (* main_~a~0 4) (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~a~0) 2)) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= (* main_~y~0 main_~r~0) main_~a~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {34051#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:19:22,028 INFO L290 TraceCheckUtils]: 108: Hoare triple {34051#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {34055#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:19:22,029 INFO L290 TraceCheckUtils]: 109: Hoare triple {34055#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {33712#false} is VALID [2022-04-15 15:19:22,029 INFO L290 TraceCheckUtils]: 110: Hoare triple {33712#false} assume !false; {33712#false} is VALID [2022-04-15 15:19:22,029 INFO L134 CoverageAnalysis]: Checked inductivity of 339 backedges. 90 proven. 42 refuted. 0 times theorem prover too weak. 207 trivial. 0 not checked. [2022-04-15 15:19:22,029 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:19:49,783 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 15:19:50,395 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:19:50,396 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1897212202] [2022-04-15 15:19:50,396 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:19:50,396 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [739240019] [2022-04-15 15:19:50,396 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [739240019] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 15:19:50,396 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:19:50,396 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2022-04-15 15:19:50,396 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:19:50,396 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [51234972] [2022-04-15 15:19:50,396 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [51234972] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:19:50,396 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:19:50,396 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-15 15:19:50,396 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2105370825] [2022-04-15 15:19:50,396 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:19:50,397 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) Word has length 111 [2022-04-15 15:19:50,397 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:19:50,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-15 15:19:50,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:19:50,532 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-15 15:19:50,532 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:19:50,532 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-15 15:19:50,532 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=517, Unknown=0, NotChecked=0, Total=600 [2022-04-15 15:19:50,532 INFO L87 Difference]: Start difference. First operand 487 states and 677 transitions. Second operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-15 15:19:58,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:19:58,713 INFO L93 Difference]: Finished difference Result 576 states and 800 transitions. [2022-04-15 15:19:58,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-15 15:19:58,714 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) Word has length 111 [2022-04-15 15:19:58,714 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:19:58,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-15 15:19:58,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 158 transitions. [2022-04-15 15:19:58,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-15 15:19:58,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 158 transitions. [2022-04-15 15:19:58,722 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 158 transitions. [2022-04-15 15:19:59,069 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:19:59,084 INFO L225 Difference]: With dead ends: 576 [2022-04-15 15:19:59,084 INFO L226 Difference]: Without dead ends: 573 [2022-04-15 15:19:59,085 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 108 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 184 ImplicationChecksByTransitivity, 2.1s TimeCoverageRelationStatistics Valid=108, Invalid=704, Unknown=0, NotChecked=0, Total=812 [2022-04-15 15:19:59,085 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 53 mSDsluCounter, 323 mSDsCounter, 0 mSdLazyCounter, 946 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 376 SdHoareTripleChecker+Invalid, 999 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 946 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:19:59,085 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 376 Invalid, 999 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 946 Invalid, 0 Unknown, 0 Unchecked, 3.0s Time] [2022-04-15 15:19:59,086 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 573 states. [2022-04-15 15:20:00,646 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 573 to 559. [2022-04-15 15:20:00,646 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:20:00,647 INFO L82 GeneralOperation]: Start isEquivalent. First operand 573 states. Second operand has 559 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 323 states have internal predecessors, (386), 199 states have call successors, (199), 38 states have call predecessors, (199), 37 states have return successors, (197), 197 states have call predecessors, (197), 197 states have call successors, (197) [2022-04-15 15:20:00,648 INFO L74 IsIncluded]: Start isIncluded. First operand 573 states. Second operand has 559 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 323 states have internal predecessors, (386), 199 states have call successors, (199), 38 states have call predecessors, (199), 37 states have return successors, (197), 197 states have call predecessors, (197), 197 states have call successors, (197) [2022-04-15 15:20:00,648 INFO L87 Difference]: Start difference. First operand 573 states. Second operand has 559 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 323 states have internal predecessors, (386), 199 states have call successors, (199), 38 states have call predecessors, (199), 37 states have return successors, (197), 197 states have call predecessors, (197), 197 states have call successors, (197) [2022-04-15 15:20:00,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:20:00,661 INFO L93 Difference]: Finished difference Result 573 states and 796 transitions. [2022-04-15 15:20:00,661 INFO L276 IsEmpty]: Start isEmpty. Operand 573 states and 796 transitions. [2022-04-15 15:20:00,662 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:20:00,662 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:20:00,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 559 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 323 states have internal predecessors, (386), 199 states have call successors, (199), 38 states have call predecessors, (199), 37 states have return successors, (197), 197 states have call predecessors, (197), 197 states have call successors, (197) Second operand 573 states. [2022-04-15 15:20:00,663 INFO L87 Difference]: Start difference. First operand has 559 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 323 states have internal predecessors, (386), 199 states have call successors, (199), 38 states have call predecessors, (199), 37 states have return successors, (197), 197 states have call predecessors, (197), 197 states have call successors, (197) Second operand 573 states. [2022-04-15 15:20:00,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:20:00,676 INFO L93 Difference]: Finished difference Result 573 states and 796 transitions. [2022-04-15 15:20:00,677 INFO L276 IsEmpty]: Start isEmpty. Operand 573 states and 796 transitions. [2022-04-15 15:20:00,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:20:00,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:20:00,678 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:20:00,678 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:20:00,678 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 559 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 323 states have internal predecessors, (386), 199 states have call successors, (199), 38 states have call predecessors, (199), 37 states have return successors, (197), 197 states have call predecessors, (197), 197 states have call successors, (197) [2022-04-15 15:20:00,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 559 states to 559 states and 782 transitions. [2022-04-15 15:20:00,695 INFO L78 Accepts]: Start accepts. Automaton has 559 states and 782 transitions. Word has length 111 [2022-04-15 15:20:00,695 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:20:00,695 INFO L478 AbstractCegarLoop]: Abstraction has 559 states and 782 transitions. [2022-04-15 15:20:00,695 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-15 15:20:00,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 559 states and 782 transitions. [2022-04-15 15:20:03,664 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 782 edges. 782 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:20:03,664 INFO L276 IsEmpty]: Start isEmpty. Operand 559 states and 782 transitions. [2022-04-15 15:20:03,678 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-15 15:20:03,678 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:20:03,678 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:20:03,696 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-15 15:20:03,878 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:20:03,879 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:20:03,879 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:20:03,880 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 9 times [2022-04-15 15:20:03,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:20:03,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [251344124] [2022-04-15 15:20:03,880 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:20:03,880 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 10 times [2022-04-15 15:20:03,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:20:03,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [554944911] [2022-04-15 15:20:03,880 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:20:03,880 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:20:03,890 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:20:03,890 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1172596521] [2022-04-15 15:20:03,891 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:20:03,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:20:03,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:20:03,891 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:20:03,892 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-15 15:20:03,944 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:20:03,945 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:20:03,946 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 80 conjunts are in the unsatisfiable core [2022-04-15 15:20:03,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:20:03,965 INFO L286 TraceCheckSpWp]: Computing forward predicates...