/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:50:45,563 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:50:45,565 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:50:45,589 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:50:45,589 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:50:45,590 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:50:45,591 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:50:45,592 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:50:45,593 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:50:45,594 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:50:45,594 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:50:45,595 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:50:45,595 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:50:45,596 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:50:45,597 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:50:45,597 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:50:45,598 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:50:45,598 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:50:45,603 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:50:45,604 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:50:45,605 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:50:45,608 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:50:45,609 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:50:45,609 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:50:45,610 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:50:45,611 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:50:45,612 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:50:45,612 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:50:45,612 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:50:45,612 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:50:45,613 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:50:45,613 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:50:45,614 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:50:45,614 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:50:45,615 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:50:45,615 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:50:45,615 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:50:45,616 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:50:45,616 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:50:45,616 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:50:45,617 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:50:45,621 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:50:45,622 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 05:50:45,627 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:50:45,628 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:50:45,628 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:50:45,628 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:50:45,629 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:50:45,629 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:50:45,629 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:50:45,629 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:50:45,629 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:50:45,629 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:50:45,629 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:50:45,630 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:50:45,630 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:50:45,630 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:50:45,630 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:50:45,630 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:50:45,630 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:50:45,630 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:50:45,630 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:50:45,631 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:50:45,631 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:50:45,631 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:50:45,631 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:50:45,631 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:50:45,631 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:50:45,631 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-28 05:50:45,757 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:50:45,777 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:50:45,778 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:50:45,779 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:50:45,783 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:50:45,784 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound20.c [2022-04-28 05:50:45,831 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca10657d5/f18ec20b0d18437792195a83d7ed8020/FLAG742de2633 [2022-04-28 05:50:46,196 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:50:46,197 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound20.c [2022-04-28 05:50:46,201 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca10657d5/f18ec20b0d18437792195a83d7ed8020/FLAG742de2633 [2022-04-28 05:50:46,215 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca10657d5/f18ec20b0d18437792195a83d7ed8020 [2022-04-28 05:50:46,216 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:50:46,219 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:50:46,220 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:50:46,220 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:50:46,224 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:50:46,224 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,225 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@47fe0ef3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46, skipping insertion in model container [2022-04-28 05:50:46,225 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,229 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:50:46,240 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:50:46,341 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_unwindbound20.c[490,503] [2022-04-28 05:50:46,362 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:50:46,367 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:50:46,375 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_unwindbound20.c[490,503] [2022-04-28 05:50:46,381 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:50:46,390 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:50:46,390 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46 WrapperNode [2022-04-28 05:50:46,390 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:50:46,391 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:50:46,391 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:50:46,391 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:50:46,411 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,412 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,416 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,417 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,428 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,432 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,432 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,433 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:50:46,434 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:50:46,434 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:50:46,434 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:50:46,435 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (1/1) ... [2022-04-28 05:50:46,443 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:50:46,449 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:46,457 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-28 05:50:46,458 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-28 05:50:46,483 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:50:46,483 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:50:46,483 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:50:46,483 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:50:46,483 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:50:46,483 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:50:46,483 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:50:46,483 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:50:46,483 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:50:46,483 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:50:46,483 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:50:46,484 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:50:46,536 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:50:46,537 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:50:46,684 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:50:46,689 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:50:46,689 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 05:50:46,690 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:50:46 BoogieIcfgContainer [2022-04-28 05:50:46,690 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:50:46,691 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:50:46,691 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:50:46,710 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:50:46,710 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:50:46" (1/3) ... [2022-04-28 05:50:46,711 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@41b1ba12 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:50:46, skipping insertion in model container [2022-04-28 05:50:46,711 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:46" (2/3) ... [2022-04-28 05:50:46,711 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@41b1ba12 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:50:46, skipping insertion in model container [2022-04-28 05:50:46,711 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:50:46" (3/3) ... [2022-04-28 05:50:46,712 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound20.c [2022-04-28 05:50:46,721 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:50:46,721 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:50:46,747 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:50:46,751 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@13286b79, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@2c147eff [2022-04-28 05:50:46,751 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:50:46,756 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:50:46,761 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 05:50:46,761 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:46,761 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:46,761 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:46,764 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:46,764 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-28 05:50:46,769 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:46,770 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [91713702] [2022-04-28 05:50:46,776 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:46,776 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 2 times [2022-04-28 05:50:46,778 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:46,778 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1638806970] [2022-04-28 05:50:46,778 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:46,779 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:46,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:46,916 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:50:46,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:46,940 INFO L290 TraceCheckUtils]: 0: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-28 05:50:46,940 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:50:46,940 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 05:50:46,941 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:50:46,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:46,953 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:46,954 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:46,954 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:46,954 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:50:46,954 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-28 05:50:46,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:46,968 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:46,969 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:46,969 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:46,969 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:50:46,971 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:50:46,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-28 05:50:46,972 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:50:46,972 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 05:50:46,972 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-28 05:50:46,972 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#true} is VALID [2022-04-28 05:50:46,972 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:50:46,973 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:46,974 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:46,974 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:46,974 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:50:46,974 INFO L272 TraceCheckUtils]: 11: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:50:46,974 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:46,975 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:46,975 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:46,975 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:50:46,976 INFO L290 TraceCheckUtils]: 16: 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-28 05:50:46,976 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-28 05:50:46,976 INFO L272 TraceCheckUtils]: 18: 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-28 05:50:46,976 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:50:46,976 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:50:46,977 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:50:46,978 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:46,978 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:46,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1638806970] [2022-04-28 05:50:46,979 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1638806970] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:46,979 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:46,979 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:50:46,982 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:46,982 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [91713702] [2022-04-28 05:50:46,983 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [91713702] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:46,983 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:46,983 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:50:46,983 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [532853227] [2022-04-28 05:50:46,984 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:46,988 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 05:50:46,989 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:46,992 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,016 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:47,016 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:50:47,017 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:47,036 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:50:47,036 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:50:47,038 INFO L87 Difference]: Start difference. First operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:47,203 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-28 05:50:47,204 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:50:47,204 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 05:50:47,204 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:47,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 05:50:47,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 05:50:47,224 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-28 05:50:47,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:47,350 INFO L225 Difference]: With dead ends: 74 [2022-04-28 05:50:47,350 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 05:50:47,353 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:50:47,356 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:47,357 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 51 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:47,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 05:50:47,378 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-28 05:50:47,378 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:47,379 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,380 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,380 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:47,383 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 05:50:47,383 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 05:50:47,384 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:47,384 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:47,384 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-28 05:50:47,385 INFO L87 Difference]: Start difference. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-28 05:50:47,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:47,387 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 05:50:47,387 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 05:50:47,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:47,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:47,388 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:47,388 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:47,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-28 05:50:47,392 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-28 05:50:47,392 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:47,393 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-28 05:50:47,393 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,393 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 45 transitions. [2022-04-28 05:50:47,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:47,452 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-28 05:50:47,452 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 05:50:47,453 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:47,453 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:47,453 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:50:47,453 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:47,454 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:47,454 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-28 05:50:47,455 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:47,455 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1815164698] [2022-04-28 05:50:47,455 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:47,455 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 2 times [2022-04-28 05:50:47,455 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:47,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [457436300] [2022-04-28 05:50:47,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:47,459 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:47,490 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:47,490 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1049639022] [2022-04-28 05:50:47,491 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:47,491 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:47,491 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:47,492 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-28 05:50:47,511 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-28 05:50:47,540 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:50:47,541 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:47,542 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:50:47,561 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:47,564 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:47,722 INFO L272 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2022-04-28 05:50:47,723 INFO L290 TraceCheckUtils]: 1: Hoare triple {349#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,723 INFO L290 TraceCheckUtils]: 2: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,724 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {357#(<= ~counter~0 0)} {349#true} #108#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,724 INFO L272 TraceCheckUtils]: 4: Hoare triple {357#(<= ~counter~0 0)} call #t~ret9 := main(); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,725 INFO L290 TraceCheckUtils]: 5: Hoare triple {357#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,725 INFO L272 TraceCheckUtils]: 6: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,726 INFO L290 TraceCheckUtils]: 7: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,726 INFO L290 TraceCheckUtils]: 8: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,726 INFO L290 TraceCheckUtils]: 9: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,728 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #94#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,728 INFO L272 TraceCheckUtils]: 11: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,729 INFO L290 TraceCheckUtils]: 12: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,729 INFO L290 TraceCheckUtils]: 13: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,730 INFO L290 TraceCheckUtils]: 14: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,733 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #96#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,734 INFO L290 TraceCheckUtils]: 16: Hoare triple {357#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:47,734 INFO L290 TraceCheckUtils]: 17: Hoare triple {357#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {406#(<= |main_#t~post6| 0)} is VALID [2022-04-28 05:50:47,735 INFO L290 TraceCheckUtils]: 18: Hoare triple {406#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {350#false} is VALID [2022-04-28 05:50:47,735 INFO L272 TraceCheckUtils]: 19: Hoare triple {350#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)); {350#false} is VALID [2022-04-28 05:50:47,736 INFO L290 TraceCheckUtils]: 20: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2022-04-28 05:50:47,736 INFO L290 TraceCheckUtils]: 21: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2022-04-28 05:50:47,737 INFO L290 TraceCheckUtils]: 22: Hoare triple {350#false} assume !false; {350#false} is VALID [2022-04-28 05:50:47,737 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:47,738 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:47,738 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:47,738 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [457436300] [2022-04-28 05:50:47,738 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:47,738 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1049639022] [2022-04-28 05:50:47,739 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1049639022] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:47,739 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:47,739 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:50:47,740 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:47,740 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1815164698] [2022-04-28 05:50:47,740 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1815164698] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:47,740 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:47,740 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:50:47,740 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1574678648] [2022-04-28 05:50:47,740 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:47,741 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:50:47,741 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:47,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:47,756 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 05:50:47,756 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:47,756 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 05:50:47,757 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:50:47,757 INFO L87 Difference]: Start difference. First operand 35 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:47,833 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-28 05:50:47,833 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 05:50:47,834 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:50:47,834 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:47,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 05:50:47,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 05:50:47,838 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-28 05:50:47,876 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-28 05:50:47,878 INFO L225 Difference]: With dead ends: 44 [2022-04-28 05:50:47,878 INFO L226 Difference]: Without dead ends: 37 [2022-04-28 05:50:47,879 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:50:47,880 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:47,883 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 113 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:47,884 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-28 05:50:47,904 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-28 05:50:47,904 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:47,904 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,906 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,906 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:47,911 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 05:50:47,911 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:50:47,913 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:47,913 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:47,914 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-28 05:50:47,916 INFO L87 Difference]: Start difference. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-28 05:50:47,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:47,922 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 05:50:47,922 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:50:47,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:47,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:47,923 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:47,923 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:47,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:47,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-28 05:50:47,925 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-28 05:50:47,925 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:47,925 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-28 05:50:47,925 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,925 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 47 transitions. [2022-04-28 05:50:47,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:47,958 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:50:47,958 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 05:50:47,959 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:47,959 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:47,980 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-28 05:50:48,167 WARN L477 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-28 05:50:48,167 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:48,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:48,168 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-28 05:50:48,168 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:48,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [733152943] [2022-04-28 05:50:48,168 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:48,168 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 2 times [2022-04-28 05:50:48,169 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:48,169 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1876482511] [2022-04-28 05:50:48,169 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:48,169 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:48,184 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:48,184 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1744255133] [2022-04-28 05:50:48,184 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:48,184 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:48,184 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:48,185 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-28 05:50:48,186 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-28 05:50:48,221 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:50:48,221 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:48,222 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:50:48,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:48,229 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:48,408 INFO L272 TraceCheckUtils]: 0: Hoare triple {657#true} call ULTIMATE.init(); {657#true} is VALID [2022-04-28 05:50:48,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {657#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {657#true} is VALID [2022-04-28 05:50:48,409 INFO L290 TraceCheckUtils]: 2: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:50:48,409 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {657#true} {657#true} #108#return; {657#true} is VALID [2022-04-28 05:50:48,409 INFO L272 TraceCheckUtils]: 4: Hoare triple {657#true} call #t~ret9 := main(); {657#true} is VALID [2022-04-28 05:50:48,409 INFO L290 TraceCheckUtils]: 5: Hoare triple {657#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {657#true} is VALID [2022-04-28 05:50:48,409 INFO L272 TraceCheckUtils]: 6: Hoare triple {657#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 05:50:48,409 INFO L290 TraceCheckUtils]: 7: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 05:50:48,409 INFO L290 TraceCheckUtils]: 8: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 05:50:48,409 INFO L290 TraceCheckUtils]: 9: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:50:48,409 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {657#true} {657#true} #94#return; {657#true} is VALID [2022-04-28 05:50:48,410 INFO L272 TraceCheckUtils]: 11: Hoare triple {657#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 05:50:48,410 INFO L290 TraceCheckUtils]: 12: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 05:50:48,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 05:50:48,410 INFO L290 TraceCheckUtils]: 14: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:50:48,410 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {657#true} {657#true} #96#return; {657#true} is VALID [2022-04-28 05:50:48,411 INFO L290 TraceCheckUtils]: 16: Hoare triple {657#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {710#(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-28 05:50:48,411 INFO L290 TraceCheckUtils]: 17: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {710#(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-28 05:50:48,411 INFO L290 TraceCheckUtils]: 18: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {710#(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-28 05:50:48,412 INFO L290 TraceCheckUtils]: 19: Hoare triple {710#(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); {720#(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-28 05:50:48,413 INFO L272 TraceCheckUtils]: 20: Hoare triple {720#(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)); {724#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:48,413 INFO L290 TraceCheckUtils]: 21: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:48,414 INFO L290 TraceCheckUtils]: 22: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {658#false} is VALID [2022-04-28 05:50:48,414 INFO L290 TraceCheckUtils]: 23: Hoare triple {658#false} assume !false; {658#false} is VALID [2022-04-28 05:50:48,414 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:48,414 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:48,414 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:48,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1876482511] [2022-04-28 05:50:48,414 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:48,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1744255133] [2022-04-28 05:50:48,414 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1744255133] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:48,415 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:48,415 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:48,415 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:48,415 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [733152943] [2022-04-28 05:50:48,415 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [733152943] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:48,415 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:48,415 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:48,415 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1385541585] [2022-04-28 05:50:48,415 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:48,416 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-28 05:50:48,416 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:48,416 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:48,429 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:48,429 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:50:48,430 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:48,430 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:50:48,430 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:50:48,430 INFO L87 Difference]: Start difference. First operand 37 states and 47 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:48,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:48,723 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-28 05:50:48,723 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:50:48,723 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-28 05:50:48,723 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:48,723 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:48,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:50:48,725 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:48,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:50:48,726 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-28 05:50:48,781 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:48,782 INFO L225 Difference]: With dead ends: 57 [2022-04-28 05:50:48,782 INFO L226 Difference]: Without dead ends: 54 [2022-04-28 05:50:48,783 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 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-28 05:50:48,783 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 18 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:48,783 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 169 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:48,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-28 05:50:48,804 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-28 05:50:48,804 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:48,805 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:48,805 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:48,805 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:48,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:48,807 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 05:50:48,808 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 05:50:48,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:48,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:48,808 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-28 05:50:48,809 INFO L87 Difference]: Start difference. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-28 05:50:48,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:48,811 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 05:50:48,811 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 05:50:48,811 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:48,811 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:48,811 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:48,811 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:48,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:48,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 70 transitions. [2022-04-28 05:50:48,814 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 70 transitions. Word has length 24 [2022-04-28 05:50:48,814 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:48,814 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 70 transitions. [2022-04-28 05:50:48,814 INFO L496 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:48,814 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 70 transitions. [2022-04-28 05:50:48,895 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:48,896 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-28 05:50:48,896 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 05:50:48,896 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:48,896 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:48,912 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-28 05:50:49,112 WARN L477 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-28 05:50:49,112 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:49,113 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:49,113 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-28 05:50:49,113 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:49,113 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [819056593] [2022-04-28 05:50:49,113 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:49,113 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 2 times [2022-04-28 05:50:49,114 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:49,114 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1285802135] [2022-04-28 05:50:49,114 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:49,114 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:49,130 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:49,131 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1485003023] [2022-04-28 05:50:49,131 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:49,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:49,131 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:49,132 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-28 05:50:49,132 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-28 05:50:49,168 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:49,169 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:49,169 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:50:49,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:49,177 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:49,289 INFO L272 TraceCheckUtils]: 0: Hoare triple {1066#true} call ULTIMATE.init(); {1066#true} is VALID [2022-04-28 05:50:49,290 INFO L290 TraceCheckUtils]: 1: Hoare triple {1066#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,290 INFO L290 TraceCheckUtils]: 2: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,291 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1074#(<= ~counter~0 0)} {1066#true} #108#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,291 INFO L272 TraceCheckUtils]: 4: Hoare triple {1074#(<= ~counter~0 0)} call #t~ret9 := main(); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,291 INFO L290 TraceCheckUtils]: 5: Hoare triple {1074#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,292 INFO L272 TraceCheckUtils]: 6: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,292 INFO L290 TraceCheckUtils]: 7: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,292 INFO L290 TraceCheckUtils]: 8: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,293 INFO L290 TraceCheckUtils]: 9: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,293 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #94#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,293 INFO L272 TraceCheckUtils]: 11: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,294 INFO L290 TraceCheckUtils]: 12: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,294 INFO L290 TraceCheckUtils]: 13: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,294 INFO L290 TraceCheckUtils]: 14: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,295 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #96#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,295 INFO L290 TraceCheckUtils]: 16: Hoare triple {1074#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,295 INFO L290 TraceCheckUtils]: 17: Hoare triple {1074#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:49,296 INFO L290 TraceCheckUtils]: 18: Hoare triple {1123#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:49,296 INFO L290 TraceCheckUtils]: 19: Hoare triple {1123#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:49,296 INFO L290 TraceCheckUtils]: 20: Hoare triple {1123#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1133#(<= |main_#t~post7| 1)} is VALID [2022-04-28 05:50:49,297 INFO L290 TraceCheckUtils]: 21: Hoare triple {1133#(<= |main_#t~post7| 1)} assume !(#t~post7 < 20);havoc #t~post7; {1067#false} is VALID [2022-04-28 05:50:49,297 INFO L290 TraceCheckUtils]: 22: Hoare triple {1067#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; {1067#false} is VALID [2022-04-28 05:50:49,297 INFO L290 TraceCheckUtils]: 23: Hoare triple {1067#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1067#false} is VALID [2022-04-28 05:50:49,297 INFO L290 TraceCheckUtils]: 24: Hoare triple {1067#false} assume !(#t~post6 < 20);havoc #t~post6; {1067#false} is VALID [2022-04-28 05:50:49,297 INFO L272 TraceCheckUtils]: 25: Hoare triple {1067#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)); {1067#false} is VALID [2022-04-28 05:50:49,297 INFO L290 TraceCheckUtils]: 26: Hoare triple {1067#false} ~cond := #in~cond; {1067#false} is VALID [2022-04-28 05:50:49,297 INFO L290 TraceCheckUtils]: 27: Hoare triple {1067#false} assume 0 == ~cond; {1067#false} is VALID [2022-04-28 05:50:49,297 INFO L290 TraceCheckUtils]: 28: Hoare triple {1067#false} assume !false; {1067#false} is VALID [2022-04-28 05:50:49,298 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:49,298 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:49,298 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:49,298 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1285802135] [2022-04-28 05:50:49,298 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:49,298 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1485003023] [2022-04-28 05:50:49,298 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1485003023] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:49,298 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:49,298 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:49,299 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:49,299 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [819056593] [2022-04-28 05:50:49,299 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [819056593] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:49,299 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:49,299 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:49,299 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1148037191] [2022-04-28 05:50:49,299 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:49,299 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 05:50:49,299 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:49,300 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:49,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:49,313 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:50:49,313 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:49,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:50:49,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:50:49,314 INFO L87 Difference]: Start difference. First operand 53 states and 70 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:49,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:49,411 INFO L93 Difference]: Finished difference Result 77 states and 104 transitions. [2022-04-28 05:50:49,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:50:49,411 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 05:50:49,411 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:49,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:49,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 05:50:49,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:49,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 05:50:49,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-28 05:50:49,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:49,467 INFO L225 Difference]: With dead ends: 77 [2022-04-28 05:50:49,467 INFO L226 Difference]: Without dead ends: 55 [2022-04-28 05:50:49,467 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:50:49,469 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:49,470 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 139 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:49,471 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-28 05:50:49,490 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-28 05:50:49,490 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:49,492 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:49,492 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:49,492 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:49,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:49,494 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 05:50:49,494 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:50:49,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:49,495 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:49,495 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-28 05:50:49,496 INFO L87 Difference]: Start difference. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-28 05:50:49,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:49,500 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 05:50:49,500 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:50:49,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:49,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:49,502 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:49,502 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:49,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:49,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-28 05:50:49,506 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-28 05:50:49,507 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:49,507 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-28 05:50:49,507 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:49,507 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 72 transitions. [2022-04-28 05:50:49,557 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-28 05:50:49,557 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:50:49,557 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-28 05:50:49,557 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:49,558 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:49,573 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 05:50:49,765 WARN L477 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-28 05:50:49,765 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:49,766 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:49,766 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-28 05:50:49,766 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:49,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2030424889] [2022-04-28 05:50:49,766 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:49,766 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 2 times [2022-04-28 05:50:49,766 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:49,767 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1151065020] [2022-04-28 05:50:49,767 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:49,767 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:49,787 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:49,787 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1437900625] [2022-04-28 05:50:49,787 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:49,787 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:49,788 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:49,788 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-28 05:50:49,789 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-28 05:50:49,834 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:49,834 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:49,835 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:50:49,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:49,846 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:49,972 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 05:50:49,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,973 INFO L290 TraceCheckUtils]: 2: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,973 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1539#(<= ~counter~0 0)} {1531#true} #108#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,974 INFO L272 TraceCheckUtils]: 4: Hoare triple {1539#(<= ~counter~0 0)} call #t~ret9 := main(); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,974 INFO L290 TraceCheckUtils]: 5: Hoare triple {1539#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,975 INFO L272 TraceCheckUtils]: 6: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,976 INFO L290 TraceCheckUtils]: 8: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,977 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #94#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,987 INFO L272 TraceCheckUtils]: 11: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,988 INFO L290 TraceCheckUtils]: 12: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,988 INFO L290 TraceCheckUtils]: 13: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,988 INFO L290 TraceCheckUtils]: 14: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,989 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #96#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,989 INFO L290 TraceCheckUtils]: 16: Hoare triple {1539#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:49,990 INFO L290 TraceCheckUtils]: 17: Hoare triple {1539#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:49,990 INFO L290 TraceCheckUtils]: 18: Hoare triple {1588#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:49,990 INFO L290 TraceCheckUtils]: 19: Hoare triple {1588#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:49,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {1588#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:49,991 INFO L290 TraceCheckUtils]: 21: Hoare triple {1598#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:49,991 INFO L290 TraceCheckUtils]: 22: Hoare triple {1598#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:49,992 INFO L290 TraceCheckUtils]: 23: Hoare triple {1598#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:49,992 INFO L290 TraceCheckUtils]: 24: Hoare triple {1598#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1611#(<= |main_#t~post6| 2)} is VALID [2022-04-28 05:50:49,992 INFO L290 TraceCheckUtils]: 25: Hoare triple {1611#(<= |main_#t~post6| 2)} assume !(#t~post6 < 20);havoc #t~post6; {1532#false} is VALID [2022-04-28 05:50:49,992 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#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)); {1532#false} is VALID [2022-04-28 05:50:49,993 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 05:50:49,993 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 05:50:49,993 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 05:50:49,993 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:49,993 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:50,154 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 05:50:50,154 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 05:50:50,154 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 05:50:50,154 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#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)); {1532#false} is VALID [2022-04-28 05:50:50,155 INFO L290 TraceCheckUtils]: 25: Hoare triple {1639#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1532#false} is VALID [2022-04-28 05:50:50,155 INFO L290 TraceCheckUtils]: 24: Hoare triple {1643#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1639#(< |main_#t~post6| 20)} is VALID [2022-04-28 05:50:50,155 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~counter~0 20)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1643#(< ~counter~0 20)} is VALID [2022-04-28 05:50:50,156 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {1643#(< ~counter~0 20)} is VALID [2022-04-28 05:50:50,156 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {1643#(< ~counter~0 20)} is VALID [2022-04-28 05:50:50,156 INFO L290 TraceCheckUtils]: 20: Hoare triple {1656#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1643#(< ~counter~0 20)} is VALID [2022-04-28 05:50:50,157 INFO L290 TraceCheckUtils]: 19: Hoare triple {1656#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1656#(< ~counter~0 19)} is VALID [2022-04-28 05:50:50,157 INFO L290 TraceCheckUtils]: 18: Hoare triple {1656#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {1656#(< ~counter~0 19)} is VALID [2022-04-28 05:50:50,157 INFO L290 TraceCheckUtils]: 17: Hoare triple {1666#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1656#(< ~counter~0 19)} is VALID [2022-04-28 05:50:50,158 INFO L290 TraceCheckUtils]: 16: Hoare triple {1666#(< ~counter~0 18)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,158 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1531#true} {1666#(< ~counter~0 18)} #96#return; {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,158 INFO L290 TraceCheckUtils]: 14: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 05:50:50,158 INFO L290 TraceCheckUtils]: 13: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 05:50:50,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 05:50:50,159 INFO L272 TraceCheckUtils]: 11: Hoare triple {1666#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 05:50:50,159 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1531#true} {1666#(< ~counter~0 18)} #94#return; {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,159 INFO L290 TraceCheckUtils]: 9: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 05:50:50,159 INFO L290 TraceCheckUtils]: 8: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 05:50:50,159 INFO L290 TraceCheckUtils]: 7: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 05:50:50,159 INFO L272 TraceCheckUtils]: 6: Hoare triple {1666#(< ~counter~0 18)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 05:50:50,160 INFO L290 TraceCheckUtils]: 5: Hoare triple {1666#(< ~counter~0 18)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,160 INFO L272 TraceCheckUtils]: 4: Hoare triple {1666#(< ~counter~0 18)} call #t~ret9 := main(); {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,160 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1666#(< ~counter~0 18)} {1531#true} #108#return; {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,161 INFO L290 TraceCheckUtils]: 2: Hoare triple {1666#(< ~counter~0 18)} assume true; {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1666#(< ~counter~0 18)} is VALID [2022-04-28 05:50:50,161 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 05:50:50,162 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:50,162 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:50,162 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1151065020] [2022-04-28 05:50:50,162 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:50,162 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1437900625] [2022-04-28 05:50:50,162 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1437900625] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:50,162 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:50,162 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 05:50:50,162 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:50,162 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2030424889] [2022-04-28 05:50:50,163 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2030424889] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:50,163 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:50,163 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:50,163 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [252752953] [2022-04-28 05:50:50,163 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:50,163 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-28 05:50:50,163 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:50,163 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:50,185 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:50,185 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:50:50,185 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:50,185 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:50:50,186 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:50:50,186 INFO L87 Difference]: Start difference. First operand 55 states and 72 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:50,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:50,332 INFO L93 Difference]: Finished difference Result 67 states and 85 transitions. [2022-04-28 05:50:50,333 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 05:50:50,333 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-28 05:50:50,333 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:50,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:50,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 05:50:50,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:50,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 05:50:50,335 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 63 transitions. [2022-04-28 05:50:50,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:50,377 INFO L225 Difference]: With dead ends: 67 [2022-04-28 05:50:50,377 INFO L226 Difference]: Without dead ends: 60 [2022-04-28 05:50:50,377 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:50:50,378 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:50,378 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 165 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:50,378 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-28 05:50:50,395 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-28 05:50:50,395 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:50,396 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:50,396 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:50,396 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:50,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:50,398 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 05:50:50,398 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 05:50:50,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:50,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:50,398 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-28 05:50:50,399 INFO L87 Difference]: Start difference. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-28 05:50:50,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:50,400 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 05:50:50,400 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 05:50:50,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:50,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:50,401 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:50,401 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:50,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:50,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 77 transitions. [2022-04-28 05:50:50,402 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 77 transitions. Word has length 30 [2022-04-28 05:50:50,403 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:50,403 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 77 transitions. [2022-04-28 05:50:50,403 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:50,403 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 77 transitions. [2022-04-28 05:50:50,464 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-28 05:50:50,464 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-28 05:50:50,465 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 05:50:50,465 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:50,465 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:50,483 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-28 05:50:50,679 WARN L477 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-28 05:50:50,679 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:50,680 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:50,680 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-28 05:50:50,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:50,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1641741476] [2022-04-28 05:50:50,680 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:50,680 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 2 times [2022-04-28 05:50:50,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:50,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1402954258] [2022-04-28 05:50:50,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:50,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:50,700 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:50,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1524000829] [2022-04-28 05:50:50,700 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:50,700 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:50,700 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:50,701 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-28 05:50:50,704 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-28 05:50:50,749 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:50,749 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:50,750 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:50:50,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:50,758 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:50,870 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 05:50:50,871 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2094#true} is VALID [2022-04-28 05:50:50,871 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:50,871 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 05:50:50,871 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 05:50:50,871 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-28 05:50:50,871 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:50,872 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:50,872 INFO L290 TraceCheckUtils]: 8: Hoare triple {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:50,872 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:50,873 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:50,873 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:50,873 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 05:50:50,873 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 05:50:50,873 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:50,874 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:50,874 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:50,874 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:50,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:50,875 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:50,875 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:50,875 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:50,876 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:50,876 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 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; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:50,876 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:50,877 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:50,877 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 05:50:50,877 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#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)); {2095#false} is VALID [2022-04-28 05:50:50,877 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 05:50:50,877 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 05:50:50,877 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 05:50:50,878 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:50:50,878 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:51,092 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 05:50:51,093 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 05:50:51,093 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 05:50:51,093 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#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)); {2095#false} is VALID [2022-04-28 05:50:51,093 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 05:50:51,093 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:51,094 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:51,094 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 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; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:51,094 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:51,095 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:51,095 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:51,095 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:51,096 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:51,096 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:51,096 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:51,097 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:51,097 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:51,097 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 05:50:51,097 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 05:50:51,097 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:51,097 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:51,098 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:51,098 INFO L290 TraceCheckUtils]: 8: Hoare triple {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:51,098 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:50:51,098 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:51,098 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-28 05:50:51,099 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 05:50:51,099 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 05:50:51,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:51,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2094#true} is VALID [2022-04-28 05:50:51,099 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 05:50:51,099 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:50:51,099 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:51,099 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1402954258] [2022-04-28 05:50:51,099 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:51,099 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1524000829] [2022-04-28 05:50:51,099 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1524000829] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:51,100 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:51,100 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:50:51,100 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:51,100 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1641741476] [2022-04-28 05:50:51,100 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1641741476] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:51,100 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:51,100 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:50:51,100 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [392965803] [2022-04-28 05:50:51,100 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:51,100 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 05:50:51,101 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:51,101 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:51,117 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:51,117 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:50:51,117 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:51,117 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:50:51,117 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:50:51,117 INFO L87 Difference]: Start difference. First operand 59 states and 77 transitions. Second operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:51,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:51,794 INFO L93 Difference]: Finished difference Result 138 states and 201 transitions. [2022-04-28 05:50:51,794 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:50:51,794 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 05:50:51,794 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:51,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:51,796 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 05:50:51,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:51,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 05:50:51,798 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-28 05:50:51,915 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:51,920 INFO L225 Difference]: With dead ends: 138 [2022-04-28 05:50:51,920 INFO L226 Difference]: Without dead ends: 131 [2022-04-28 05:50:51,920 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 53 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:50:51,921 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 115 mSDsluCounter, 234 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 119 SdHoareTripleChecker+Valid, 298 SdHoareTripleChecker+Invalid, 217 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:51,921 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [119 Valid, 298 Invalid, 217 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:50:51,921 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-28 05:50:52,048 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 88. [2022-04-28 05:50:52,048 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:52,048 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,049 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,049 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,053 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,053 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 05:50:52,053 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 05:50:52,054 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,054 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,054 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 05:50:52,054 INFO L87 Difference]: Start difference. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 05:50:52,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,058 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 05:50:52,058 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 05:50:52,059 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,059 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,059 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:52,059 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:52,059 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 122 transitions. [2022-04-28 05:50:52,061 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 122 transitions. Word has length 31 [2022-04-28 05:50:52,061 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:52,061 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 122 transitions. [2022-04-28 05:50:52,062 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:52,062 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 88 states and 122 transitions. [2022-04-28 05:50:52,179 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-28 05:50:52,179 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 122 transitions. [2022-04-28 05:50:52,180 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 05:50:52,180 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:52,180 INFO L195 NwaCegarLoop]: trace histogram [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-28 05:50:52,205 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 05:50:52,388 WARN L477 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-28 05:50:52,389 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:52,389 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:52,389 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 1 times [2022-04-28 05:50:52,389 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:52,389 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [349649976] [2022-04-28 05:50:52,390 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:52,390 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 2 times [2022-04-28 05:50:52,390 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:52,390 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [161983984] [2022-04-28 05:50:52,390 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:52,390 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:52,403 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:52,403 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1813781075] [2022-04-28 05:50:52,403 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:52,403 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:52,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:52,404 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-28 05:50:52,405 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-28 05:50:52,441 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:52,441 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:52,442 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:50:52,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:52,450 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:52,579 INFO L272 TraceCheckUtils]: 0: Hoare triple {3016#true} call ULTIMATE.init(); {3016#true} is VALID [2022-04-28 05:50:52,580 INFO L290 TraceCheckUtils]: 1: Hoare triple {3016#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,580 INFO L290 TraceCheckUtils]: 2: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,581 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3024#(<= ~counter~0 0)} {3016#true} #108#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,581 INFO L272 TraceCheckUtils]: 4: Hoare triple {3024#(<= ~counter~0 0)} call #t~ret9 := main(); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,581 INFO L290 TraceCheckUtils]: 5: Hoare triple {3024#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,582 INFO L272 TraceCheckUtils]: 6: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,582 INFO L290 TraceCheckUtils]: 7: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,582 INFO L290 TraceCheckUtils]: 8: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,583 INFO L290 TraceCheckUtils]: 9: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,583 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #94#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,584 INFO L272 TraceCheckUtils]: 11: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,588 INFO L290 TraceCheckUtils]: 12: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,590 INFO L290 TraceCheckUtils]: 14: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,590 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #96#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,591 INFO L290 TraceCheckUtils]: 16: Hoare triple {3024#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:52,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {3024#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:52,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {3073#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:52,592 INFO L290 TraceCheckUtils]: 19: Hoare triple {3073#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:52,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:52,593 INFO L290 TraceCheckUtils]: 21: Hoare triple {3083#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:52,593 INFO L290 TraceCheckUtils]: 22: Hoare triple {3083#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:52,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {3083#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3093#(<= |main_#t~post8| 2)} is VALID [2022-04-28 05:50:52,594 INFO L290 TraceCheckUtils]: 24: Hoare triple {3093#(<= |main_#t~post8| 2)} assume !(#t~post8 < 20);havoc #t~post8; {3017#false} is VALID [2022-04-28 05:50:52,594 INFO L290 TraceCheckUtils]: 25: Hoare triple {3017#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {3017#false} is VALID [2022-04-28 05:50:52,594 INFO L290 TraceCheckUtils]: 26: Hoare triple {3017#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3017#false} is VALID [2022-04-28 05:50:52,594 INFO L290 TraceCheckUtils]: 27: Hoare triple {3017#false} assume !(#t~post7 < 20);havoc #t~post7; {3017#false} is VALID [2022-04-28 05:50:52,594 INFO L290 TraceCheckUtils]: 28: Hoare triple {3017#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; {3017#false} is VALID [2022-04-28 05:50:52,594 INFO L290 TraceCheckUtils]: 29: Hoare triple {3017#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3017#false} is VALID [2022-04-28 05:50:52,595 INFO L290 TraceCheckUtils]: 30: Hoare triple {3017#false} assume !(#t~post6 < 20);havoc #t~post6; {3017#false} is VALID [2022-04-28 05:50:52,595 INFO L272 TraceCheckUtils]: 31: Hoare triple {3017#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)); {3017#false} is VALID [2022-04-28 05:50:52,595 INFO L290 TraceCheckUtils]: 32: Hoare triple {3017#false} ~cond := #in~cond; {3017#false} is VALID [2022-04-28 05:50:52,595 INFO L290 TraceCheckUtils]: 33: Hoare triple {3017#false} assume 0 == ~cond; {3017#false} is VALID [2022-04-28 05:50:52,595 INFO L290 TraceCheckUtils]: 34: Hoare triple {3017#false} assume !false; {3017#false} is VALID [2022-04-28 05:50:52,595 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:52,595 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:52,595 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:52,595 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [161983984] [2022-04-28 05:50:52,595 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:52,595 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1813781075] [2022-04-28 05:50:52,596 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1813781075] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:52,596 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:52,596 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:52,596 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:52,596 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [349649976] [2022-04-28 05:50:52,596 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [349649976] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:52,596 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:52,596 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:52,596 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1623299666] [2022-04-28 05:50:52,596 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:52,596 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-28 05:50:52,597 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:52,597 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:52,617 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:52,618 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:50:52,618 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:52,618 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:50:52,618 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:50:52,618 INFO L87 Difference]: Start difference. First operand 88 states and 122 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:52,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,814 INFO L93 Difference]: Finished difference Result 127 states and 178 transitions. [2022-04-28 05:50:52,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:50:52,815 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-28 05:50:52,815 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:52,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:52,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 05:50:52,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:52,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 05:50:52,817 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-28 05:50:52,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:52,873 INFO L225 Difference]: With dead ends: 127 [2022-04-28 05:50:52,873 INFO L226 Difference]: Without dead ends: 90 [2022-04-28 05:50:52,873 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:50:52,874 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:52,874 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 139 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:52,874 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-28 05:50:52,984 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2022-04-28 05:50:52,984 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:52,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,984 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,985 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,987 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 05:50:52,987 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:50:52,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,988 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 05:50:52,988 INFO L87 Difference]: Start difference. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 05:50:52,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,990 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 05:50:52,990 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:50:52,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,991 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:52,991 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:52,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:52,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 124 transitions. [2022-04-28 05:50:52,993 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 124 transitions. Word has length 35 [2022-04-28 05:50:52,994 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:52,994 INFO L495 AbstractCegarLoop]: Abstraction has 90 states and 124 transitions. [2022-04-28 05:50:52,994 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:52,994 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 90 states and 124 transitions. [2022-04-28 05:50:53,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:53,087 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:50:53,087 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 05:50:53,088 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:53,088 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:53,106 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 05:50:53,298 WARN L477 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-28 05:50:53,298 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:53,298 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:53,298 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 1 times [2022-04-28 05:50:53,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:53,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1327000211] [2022-04-28 05:50:53,299 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:53,299 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 2 times [2022-04-28 05:50:53,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:53,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [380507226] [2022-04-28 05:50:53,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:53,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:53,319 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:53,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [843910035] [2022-04-28 05:50:53,320 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:53,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:53,320 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:53,331 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-28 05:50:53,331 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-28 05:50:53,377 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:53,377 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:53,378 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:50:53,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:53,392 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:53,570 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 05:50:53,570 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,571 INFO L290 TraceCheckUtils]: 2: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,571 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3748#(<= ~counter~0 0)} {3740#true} #108#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,571 INFO L272 TraceCheckUtils]: 4: Hoare triple {3748#(<= ~counter~0 0)} call #t~ret9 := main(); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,572 INFO L290 TraceCheckUtils]: 5: Hoare triple {3748#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,572 INFO L272 TraceCheckUtils]: 6: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,572 INFO L290 TraceCheckUtils]: 7: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,573 INFO L290 TraceCheckUtils]: 8: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,573 INFO L290 TraceCheckUtils]: 9: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,573 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #94#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,574 INFO L272 TraceCheckUtils]: 11: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,574 INFO L290 TraceCheckUtils]: 12: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,574 INFO L290 TraceCheckUtils]: 13: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,574 INFO L290 TraceCheckUtils]: 14: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,575 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #96#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,575 INFO L290 TraceCheckUtils]: 16: Hoare triple {3748#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:53,575 INFO L290 TraceCheckUtils]: 17: Hoare triple {3748#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:53,576 INFO L290 TraceCheckUtils]: 18: Hoare triple {3797#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:53,576 INFO L290 TraceCheckUtils]: 19: Hoare triple {3797#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:53,576 INFO L290 TraceCheckUtils]: 20: Hoare triple {3797#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:53,577 INFO L290 TraceCheckUtils]: 21: Hoare triple {3807#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:53,577 INFO L290 TraceCheckUtils]: 22: Hoare triple {3807#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:53,578 INFO L290 TraceCheckUtils]: 23: Hoare triple {3807#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:53,578 INFO L290 TraceCheckUtils]: 24: Hoare triple {3807#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:50:53,578 INFO L290 TraceCheckUtils]: 25: Hoare triple {3820#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:50:53,578 INFO L290 TraceCheckUtils]: 26: Hoare triple {3820#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:50:53,579 INFO L290 TraceCheckUtils]: 27: Hoare triple {3820#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3830#(<= |main_#t~post7| 3)} is VALID [2022-04-28 05:50:53,579 INFO L290 TraceCheckUtils]: 28: Hoare triple {3830#(<= |main_#t~post7| 3)} assume !(#t~post7 < 20);havoc #t~post7; {3741#false} is VALID [2022-04-28 05:50:53,579 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#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; {3741#false} is VALID [2022-04-28 05:50:53,579 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 05:50:53,579 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 20);havoc #t~post6; {3741#false} is VALID [2022-04-28 05:50:53,580 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#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)); {3741#false} is VALID [2022-04-28 05:50:53,580 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 05:50:53,580 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 05:50:53,580 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 05:50:53,580 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:53,580 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:53,780 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 05:50:53,780 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 05:50:53,780 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 05:50:53,780 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#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)); {3741#false} is VALID [2022-04-28 05:50:53,780 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 20);havoc #t~post6; {3741#false} is VALID [2022-04-28 05:50:53,781 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 05:50:53,781 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#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; {3741#false} is VALID [2022-04-28 05:50:53,782 INFO L290 TraceCheckUtils]: 28: Hoare triple {3876#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {3741#false} is VALID [2022-04-28 05:50:53,783 INFO L290 TraceCheckUtils]: 27: Hoare triple {3880#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3876#(< |main_#t~post7| 20)} is VALID [2022-04-28 05:50:53,783 INFO L290 TraceCheckUtils]: 26: Hoare triple {3880#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3880#(< ~counter~0 20)} is VALID [2022-04-28 05:50:53,783 INFO L290 TraceCheckUtils]: 25: Hoare triple {3880#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {3880#(< ~counter~0 20)} is VALID [2022-04-28 05:50:53,784 INFO L290 TraceCheckUtils]: 24: Hoare triple {3890#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3880#(< ~counter~0 20)} is VALID [2022-04-28 05:50:53,784 INFO L290 TraceCheckUtils]: 23: Hoare triple {3890#(< ~counter~0 19)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3890#(< ~counter~0 19)} is VALID [2022-04-28 05:50:53,784 INFO L290 TraceCheckUtils]: 22: Hoare triple {3890#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {3890#(< ~counter~0 19)} is VALID [2022-04-28 05:50:53,784 INFO L290 TraceCheckUtils]: 21: Hoare triple {3890#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {3890#(< ~counter~0 19)} is VALID [2022-04-28 05:50:53,785 INFO L290 TraceCheckUtils]: 20: Hoare triple {3903#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3890#(< ~counter~0 19)} is VALID [2022-04-28 05:50:53,785 INFO L290 TraceCheckUtils]: 19: Hoare triple {3903#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3903#(< ~counter~0 18)} is VALID [2022-04-28 05:50:53,785 INFO L290 TraceCheckUtils]: 18: Hoare triple {3903#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {3903#(< ~counter~0 18)} is VALID [2022-04-28 05:50:53,786 INFO L290 TraceCheckUtils]: 17: Hoare triple {3913#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3903#(< ~counter~0 18)} is VALID [2022-04-28 05:50:53,786 INFO L290 TraceCheckUtils]: 16: Hoare triple {3913#(< ~counter~0 17)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,786 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3740#true} {3913#(< ~counter~0 17)} #96#return; {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,787 INFO L290 TraceCheckUtils]: 14: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 05:50:53,787 INFO L290 TraceCheckUtils]: 13: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 05:50:53,787 INFO L290 TraceCheckUtils]: 12: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 05:50:53,787 INFO L272 TraceCheckUtils]: 11: Hoare triple {3913#(< ~counter~0 17)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 05:50:53,787 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3740#true} {3913#(< ~counter~0 17)} #94#return; {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,787 INFO L290 TraceCheckUtils]: 9: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 05:50:53,787 INFO L290 TraceCheckUtils]: 8: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 05:50:53,787 INFO L290 TraceCheckUtils]: 7: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 05:50:53,788 INFO L272 TraceCheckUtils]: 6: Hoare triple {3913#(< ~counter~0 17)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 05:50:53,788 INFO L290 TraceCheckUtils]: 5: Hoare triple {3913#(< ~counter~0 17)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,788 INFO L272 TraceCheckUtils]: 4: Hoare triple {3913#(< ~counter~0 17)} call #t~ret9 := main(); {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,788 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3913#(< ~counter~0 17)} {3740#true} #108#return; {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {3913#(< ~counter~0 17)} assume true; {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3913#(< ~counter~0 17)} is VALID [2022-04-28 05:50:53,789 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 05:50:53,790 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:53,790 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:53,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [380507226] [2022-04-28 05:50:53,790 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:53,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [843910035] [2022-04-28 05:50:53,790 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [843910035] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:53,790 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:53,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 05:50:53,790 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:53,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1327000211] [2022-04-28 05:50:53,790 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1327000211] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:53,791 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:53,791 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 05:50:53,791 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [251394747] [2022-04-28 05:50:53,791 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:53,791 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:53,791 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:53,791 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:53,825 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-28 05:50:53,825 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 05:50:53,825 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:53,826 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 05:50:53,826 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:50:53,826 INFO L87 Difference]: Start difference. First operand 90 states and 124 transitions. Second operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:54,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:54,131 INFO L93 Difference]: Finished difference Result 163 states and 227 transitions. [2022-04-28 05:50:54,131 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:50:54,131 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:54,131 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:54,131 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:54,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 05:50:54,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:54,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 05:50:54,134 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 109 transitions. [2022-04-28 05:50:54,202 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:54,203 INFO L225 Difference]: With dead ends: 163 [2022-04-28 05:50:54,203 INFO L226 Difference]: Without dead ends: 112 [2022-04-28 05:50:54,204 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=60, Invalid=96, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:50:54,204 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 34 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:54,205 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [34 Valid, 180 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:54,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-28 05:50:54,339 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 109. [2022-04-28 05:50:54,339 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:54,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:54,340 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:54,340 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:54,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:54,343 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 05:50:54,343 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 05:50:54,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:54,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:54,343 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 05:50:54,344 INFO L87 Difference]: Start difference. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 05:50:54,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:54,346 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 05:50:54,346 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 05:50:54,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:54,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:54,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:54,347 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:54,347 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:54,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 147 transitions. [2022-04-28 05:50:54,350 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 147 transitions. Word has length 36 [2022-04-28 05:50:54,350 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:54,350 INFO L495 AbstractCegarLoop]: Abstraction has 109 states and 147 transitions. [2022-04-28 05:50:54,350 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:54,350 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 109 states and 147 transitions. [2022-04-28 05:50:54,479 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:54,479 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 147 transitions. [2022-04-28 05:50:54,479 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 05:50:54,480 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:54,480 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:54,495 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-28 05:50:54,684 WARN L477 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-28 05:50:54,684 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:54,684 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:54,684 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-28 05:50:54,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:54,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1447136338] [2022-04-28 05:50:54,691 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:54,692 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 2 times [2022-04-28 05:50:54,692 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:54,692 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [946482055] [2022-04-28 05:50:54,692 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:54,692 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:54,707 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:54,707 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [168520387] [2022-04-28 05:50:54,707 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:54,708 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:54,708 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:54,708 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-28 05:50:54,709 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-28 05:50:54,741 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:54,741 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:54,742 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 05:50:54,749 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:54,750 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:55,023 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 05:50:55,023 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4737#true} is VALID [2022-04-28 05:50:55,024 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:55,024 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 05:50:55,024 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 05:50:55,024 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-28 05:50:55,024 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:55,024 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:55,024 INFO L290 TraceCheckUtils]: 8: Hoare triple {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:55,025 INFO L290 TraceCheckUtils]: 9: Hoare triple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:55,025 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} {4737#true} #94#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:55,025 INFO L272 TraceCheckUtils]: 11: Hoare triple {4774#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:55,025 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:50:55,026 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:50:55,026 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:55,026 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4774#(<= 1 main_~x~0)} #96#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:55,027 INFO L290 TraceCheckUtils]: 16: Hoare triple {4774#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:55,027 INFO L290 TraceCheckUtils]: 17: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:55,027 INFO L290 TraceCheckUtils]: 18: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:55,028 INFO L290 TraceCheckUtils]: 19: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:55,028 INFO L290 TraceCheckUtils]: 20: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:55,029 INFO L290 TraceCheckUtils]: 21: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:55,029 INFO L290 TraceCheckUtils]: 22: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:55,030 INFO L290 TraceCheckUtils]: 23: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,030 INFO L290 TraceCheckUtils]: 24: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,030 INFO L290 TraceCheckUtils]: 25: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,037 INFO L290 TraceCheckUtils]: 26: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,037 INFO L290 TraceCheckUtils]: 27: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,038 INFO L290 TraceCheckUtils]: 28: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 20);havoc #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,038 INFO L290 TraceCheckUtils]: 29: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,038 INFO L290 TraceCheckUtils]: 30: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,039 INFO L290 TraceCheckUtils]: 31: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post8 < 20);havoc #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:55,039 INFO L272 TraceCheckUtils]: 32: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:55,040 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:55,041 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 05:50:55,041 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 05:50:55,041 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:50:55,041 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:55,245 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 05:50:55,249 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 05:50:55,251 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:55,251 INFO L272 TraceCheckUtils]: 32: Hoare triple {4863#(= 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)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:55,252 INFO L290 TraceCheckUtils]: 31: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,252 INFO L290 TraceCheckUtils]: 30: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,252 INFO L290 TraceCheckUtils]: 29: Hoare triple {4863#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,253 INFO L290 TraceCheckUtils]: 28: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,253 INFO L290 TraceCheckUtils]: 27: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,255 INFO L290 TraceCheckUtils]: 26: Hoare triple {4863#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,256 INFO L290 TraceCheckUtils]: 25: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,256 INFO L290 TraceCheckUtils]: 24: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,256 INFO L290 TraceCheckUtils]: 23: Hoare triple {4891#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,257 INFO L290 TraceCheckUtils]: 22: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,257 INFO L290 TraceCheckUtils]: 21: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,257 INFO L290 TraceCheckUtils]: 20: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,258 INFO L290 TraceCheckUtils]: 19: Hoare triple {4891#(= 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; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,258 INFO L290 TraceCheckUtils]: 18: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {4737#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,259 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4737#true} #96#return; {4737#true} is VALID [2022-04-28 05:50:55,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:55,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:50:55,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:50:55,259 INFO L272 TraceCheckUtils]: 11: Hoare triple {4737#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:55,259 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4737#true} {4737#true} #94#return; {4737#true} is VALID [2022-04-28 05:50:55,259 INFO L290 TraceCheckUtils]: 9: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L290 TraceCheckUtils]: 8: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 05:50:55,260 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:55,260 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:55,261 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [946482055] [2022-04-28 05:50:55,261 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:55,261 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [168520387] [2022-04-28 05:50:55,261 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [168520387] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:55,261 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:55,261 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-28 05:50:55,261 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:55,261 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1447136338] [2022-04-28 05:50:55,261 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1447136338] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:55,261 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:55,261 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:50:55,261 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1764025782] [2022-04-28 05:50:55,261 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:55,262 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:55,262 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:55,262 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:55,283 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-28 05:50:55,283 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:50:55,283 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:55,284 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:50:55,284 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:50:55,284 INFO L87 Difference]: Start difference. First operand 109 states and 147 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:55,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:55,892 INFO L93 Difference]: Finished difference Result 154 states and 208 transitions. [2022-04-28 05:50:55,892 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:50:55,892 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:55,892 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:55,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:55,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 05:50:55,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:55,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 05:50:55,895 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-28 05:50:55,968 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:55,970 INFO L225 Difference]: With dead ends: 154 [2022-04-28 05:50:55,971 INFO L226 Difference]: Without dead ends: 152 [2022-04-28 05:50:55,971 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:50:55,972 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 61 mSDsluCounter, 262 mSDsCounter, 0 mSdLazyCounter, 170 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 170 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:55,973 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 326 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:55,973 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-04-28 05:50:56,139 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 148. [2022-04-28 05:50:56,139 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:56,140 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:56,140 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:56,140 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:56,144 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:56,144 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 05:50:56,144 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 05:50:56,144 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:56,145 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:56,145 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 05:50:56,145 INFO L87 Difference]: Start difference. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 05:50:56,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:56,149 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 05:50:56,149 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 05:50:56,149 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:56,149 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:56,149 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:56,149 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:56,150 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:56,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 202 transitions. [2022-04-28 05:50:56,159 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 202 transitions. Word has length 36 [2022-04-28 05:50:56,159 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:56,159 INFO L495 AbstractCegarLoop]: Abstraction has 148 states and 202 transitions. [2022-04-28 05:50:56,159 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:56,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 148 states and 202 transitions. [2022-04-28 05:50:56,315 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:56,316 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 202 transitions. [2022-04-28 05:50:56,316 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 05:50:56,316 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:56,316 INFO L195 NwaCegarLoop]: trace histogram [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] [2022-04-28 05:50:56,332 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-28 05:50:56,531 WARN L477 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-28 05:50:56,531 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:56,532 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:56,532 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 3 times [2022-04-28 05:50:56,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:56,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [179332417] [2022-04-28 05:50:56,532 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:56,532 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 4 times [2022-04-28 05:50:56,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:56,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1211985138] [2022-04-28 05:50:56,533 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:56,533 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:56,543 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:56,543 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [648711542] [2022-04-28 05:50:56,543 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:50:56,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:56,543 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:56,546 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-28 05:50:56,547 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-28 05:50:56,580 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:50:56,580 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:56,580 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:50:56,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:56,588 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:56,691 INFO L272 TraceCheckUtils]: 0: Hoare triple {5875#true} call ULTIMATE.init(); {5875#true} is VALID [2022-04-28 05:50:56,691 INFO L290 TraceCheckUtils]: 1: Hoare triple {5875#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 2: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5875#true} {5875#true} #108#return; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L272 TraceCheckUtils]: 4: Hoare triple {5875#true} call #t~ret9 := main(); {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 5: Hoare triple {5875#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L272 TraceCheckUtils]: 6: Hoare triple {5875#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 7: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 8: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 9: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5875#true} {5875#true} #94#return; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L272 TraceCheckUtils]: 11: Hoare triple {5875#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 12: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 13: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L290 TraceCheckUtils]: 14: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:50:56,692 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5875#true} {5875#true} #96#return; {5875#true} is VALID [2022-04-28 05:50:56,693 INFO L290 TraceCheckUtils]: 16: Hoare triple {5875#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5875#true} is VALID [2022-04-28 05:50:56,693 INFO L290 TraceCheckUtils]: 17: Hoare triple {5875#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5875#true} is VALID [2022-04-28 05:50:56,693 INFO L290 TraceCheckUtils]: 18: Hoare triple {5875#true} assume !!(#t~post6 < 20);havoc #t~post6; {5875#true} is VALID [2022-04-28 05:50:56,693 INFO L290 TraceCheckUtils]: 19: Hoare triple {5875#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5875#true} is VALID [2022-04-28 05:50:56,693 INFO L290 TraceCheckUtils]: 20: Hoare triple {5875#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5875#true} is VALID [2022-04-28 05:50:56,693 INFO L290 TraceCheckUtils]: 21: Hoare triple {5875#true} assume !!(#t~post7 < 20);havoc #t~post7; {5875#true} is VALID [2022-04-28 05:50:56,696 INFO L290 TraceCheckUtils]: 22: Hoare triple {5875#true} assume !(~c~0 >= ~b~0); {5946#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:50:56,697 INFO L290 TraceCheckUtils]: 23: Hoare triple {5946#(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; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:56,697 INFO L290 TraceCheckUtils]: 24: Hoare triple {5950#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:56,697 INFO L290 TraceCheckUtils]: 25: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:56,697 INFO L290 TraceCheckUtils]: 26: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:56,698 INFO L290 TraceCheckUtils]: 27: Hoare triple {5960#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:56,698 INFO L290 TraceCheckUtils]: 28: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:56,698 INFO L290 TraceCheckUtils]: 29: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {5876#false} is VALID [2022-04-28 05:50:56,698 INFO L290 TraceCheckUtils]: 30: Hoare triple {5876#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; {5876#false} is VALID [2022-04-28 05:50:56,698 INFO L290 TraceCheckUtils]: 31: Hoare triple {5876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5876#false} is VALID [2022-04-28 05:50:56,699 INFO L290 TraceCheckUtils]: 32: Hoare triple {5876#false} assume !(#t~post6 < 20);havoc #t~post6; {5876#false} is VALID [2022-04-28 05:50:56,699 INFO L272 TraceCheckUtils]: 33: Hoare triple {5876#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)); {5876#false} is VALID [2022-04-28 05:50:56,699 INFO L290 TraceCheckUtils]: 34: Hoare triple {5876#false} ~cond := #in~cond; {5876#false} is VALID [2022-04-28 05:50:56,699 INFO L290 TraceCheckUtils]: 35: Hoare triple {5876#false} assume 0 == ~cond; {5876#false} is VALID [2022-04-28 05:50:56,699 INFO L290 TraceCheckUtils]: 36: Hoare triple {5876#false} assume !false; {5876#false} is VALID [2022-04-28 05:50:56,699 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:56,699 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:56,699 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:56,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1211985138] [2022-04-28 05:50:56,699 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:56,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [648711542] [2022-04-28 05:50:56,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [648711542] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:56,699 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:56,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:56,700 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:56,700 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [179332417] [2022-04-28 05:50:56,700 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [179332417] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:56,700 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:56,700 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:56,700 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [898807481] [2022-04-28 05:50:56,700 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:56,700 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-28 05:50:56,700 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:56,701 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:56,719 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:56,719 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:50:56,719 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:56,719 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:50:56,719 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:50:56,719 INFO L87 Difference]: Start difference. First operand 148 states and 202 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:57,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:57,324 INFO L93 Difference]: Finished difference Result 300 states and 442 transitions. [2022-04-28 05:50:57,325 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:50:57,325 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-28 05:50:57,325 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:57,325 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:57,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 05:50:57,326 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:57,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 05:50:57,328 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-28 05:50:57,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:57,414 INFO L225 Difference]: With dead ends: 300 [2022-04-28 05:50:57,414 INFO L226 Difference]: Without dead ends: 249 [2022-04-28 05:50:57,415 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 34 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-28 05:50:57,415 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 29 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:57,415 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 176 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:57,416 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2022-04-28 05:50:57,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 175. [2022-04-28 05:50:57,657 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:57,657 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:57,658 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:57,658 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:57,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:57,663 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 05:50:57,663 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 05:50:57,664 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:57,664 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:57,664 INFO L74 IsIncluded]: Start isIncluded. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 05:50:57,665 INFO L87 Difference]: Start difference. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 05:50:57,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:57,673 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 05:50:57,674 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 05:50:57,674 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:57,674 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:57,674 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:57,674 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:57,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:57,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 239 transitions. [2022-04-28 05:50:57,678 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 239 transitions. Word has length 37 [2022-04-28 05:50:57,678 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:57,678 INFO L495 AbstractCegarLoop]: Abstraction has 175 states and 239 transitions. [2022-04-28 05:50:57,678 INFO L496 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:57,678 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 175 states and 239 transitions. [2022-04-28 05:50:57,874 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:57,874 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 239 transitions. [2022-04-28 05:50:57,874 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 05:50:57,874 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:57,875 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:57,891 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-28 05:50:58,075 WARN L477 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-28 05:50:58,075 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:58,075 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:58,076 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-28 05:50:58,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:58,076 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1529666723] [2022-04-28 05:50:58,076 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:58,076 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 2 times [2022-04-28 05:50:58,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:58,076 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [658839724] [2022-04-28 05:50:58,076 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:58,076 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:58,095 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:58,095 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [721731816] [2022-04-28 05:50:58,095 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:58,095 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:58,095 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:58,098 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-28 05:50:58,100 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-28 05:50:58,131 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:58,131 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:58,131 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:50:58,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:58,139 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:58,332 INFO L272 TraceCheckUtils]: 0: Hoare triple {7443#true} call ULTIMATE.init(); {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L290 TraceCheckUtils]: 1: Hoare triple {7443#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L290 TraceCheckUtils]: 2: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7443#true} {7443#true} #108#return; {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L272 TraceCheckUtils]: 4: Hoare triple {7443#true} call #t~ret9 := main(); {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L290 TraceCheckUtils]: 5: Hoare triple {7443#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L272 TraceCheckUtils]: 6: Hoare triple {7443#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L290 TraceCheckUtils]: 7: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L290 TraceCheckUtils]: 8: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L290 TraceCheckUtils]: 9: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7443#true} {7443#true} #94#return; {7443#true} is VALID [2022-04-28 05:50:58,332 INFO L272 TraceCheckUtils]: 11: Hoare triple {7443#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:58,333 INFO L290 TraceCheckUtils]: 12: Hoare triple {7443#true} ~cond := #in~cond; {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:58,333 INFO L290 TraceCheckUtils]: 13: Hoare triple {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:58,333 INFO L290 TraceCheckUtils]: 14: Hoare triple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:58,334 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} {7443#true} #96#return; {7495#(<= 1 main_~y~0)} is VALID [2022-04-28 05:50:58,334 INFO L290 TraceCheckUtils]: 16: Hoare triple {7495#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:58,334 INFO L290 TraceCheckUtils]: 17: Hoare triple {7499#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:58,335 INFO L290 TraceCheckUtils]: 18: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:58,336 INFO L290 TraceCheckUtils]: 19: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,336 INFO L290 TraceCheckUtils]: 20: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,337 INFO L290 TraceCheckUtils]: 21: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 20);havoc #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,337 INFO L290 TraceCheckUtils]: 22: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,338 INFO L290 TraceCheckUtils]: 23: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,338 INFO L290 TraceCheckUtils]: 24: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,338 INFO L272 TraceCheckUtils]: 25: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:58,338 INFO L290 TraceCheckUtils]: 26: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:50:58,338 INFO L290 TraceCheckUtils]: 27: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:50:58,338 INFO L290 TraceCheckUtils]: 28: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:58,339 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #98#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,339 INFO L272 TraceCheckUtils]: 30: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:58,339 INFO L290 TraceCheckUtils]: 31: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:50:58,339 INFO L290 TraceCheckUtils]: 32: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:50:58,339 INFO L290 TraceCheckUtils]: 33: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:58,340 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #100#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:58,340 INFO L272 TraceCheckUtils]: 35: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:58,341 INFO L290 TraceCheckUtils]: 36: Hoare triple {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7562#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:58,341 INFO L290 TraceCheckUtils]: 37: Hoare triple {7562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7444#false} is VALID [2022-04-28 05:50:58,341 INFO L290 TraceCheckUtils]: 38: Hoare triple {7444#false} assume !false; {7444#false} is VALID [2022-04-28 05:50:58,341 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 05:50:58,341 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:58,341 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:58,341 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [658839724] [2022-04-28 05:50:58,341 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:58,341 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [721731816] [2022-04-28 05:50:58,342 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [721731816] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:58,342 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:58,342 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:50:58,342 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:58,342 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1529666723] [2022-04-28 05:50:58,342 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1529666723] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:58,342 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:58,342 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:50:58,342 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1907251251] [2022-04-28 05:50:58,342 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:58,342 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:50:58,343 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:58,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:58,368 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-28 05:50:58,368 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:50:58,368 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:58,369 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:50:58,369 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:50:58,369 INFO L87 Difference]: Start difference. First operand 175 states and 239 transitions. Second operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:59,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:59,099 INFO L93 Difference]: Finished difference Result 193 states and 262 transitions. [2022-04-28 05:50:59,099 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:50:59,099 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:50:59,099 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:59,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:59,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 05:50:59,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:59,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 05:50:59,101 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 92 transitions. [2022-04-28 05:50:59,166 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:59,169 INFO L225 Difference]: With dead ends: 193 [2022-04-28 05:50:59,169 INFO L226 Difference]: Without dead ends: 191 [2022-04-28 05:50:59,169 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:50:59,169 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 57 mSDsluCounter, 225 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 270 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:59,170 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [61 Valid, 270 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:59,170 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2022-04-28 05:50:59,482 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 190. [2022-04-28 05:50:59,482 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:59,483 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:59,483 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:59,483 INFO L87 Difference]: Start difference. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:59,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:59,486 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 05:50:59,486 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 05:50:59,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:59,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:59,487 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 05:50:59,487 INFO L87 Difference]: Start difference. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 05:50:59,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:59,490 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 05:50:59,491 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 05:50:59,491 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:59,491 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:59,491 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:59,491 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:59,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:59,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 258 transitions. [2022-04-28 05:50:59,495 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 258 transitions. Word has length 39 [2022-04-28 05:50:59,495 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:59,495 INFO L495 AbstractCegarLoop]: Abstraction has 190 states and 258 transitions. [2022-04-28 05:50:59,495 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:59,495 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 258 transitions. [2022-04-28 05:50:59,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:59,736 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 258 transitions. [2022-04-28 05:50:59,736 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 05:50:59,736 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:59,736 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:59,752 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-28 05:50:59,937 WARN L477 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-28 05:50:59,937 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:59,937 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:59,937 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-28 05:50:59,937 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:59,937 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [693020637] [2022-04-28 05:50:59,938 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:59,938 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 2 times [2022-04-28 05:50:59,938 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:59,938 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [178742040] [2022-04-28 05:50:59,938 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:59,938 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:59,947 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:59,947 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [779573052] [2022-04-28 05:50:59,948 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:59,948 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:59,948 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:59,948 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-28 05:50:59,949 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-28 05:50:59,986 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:59,986 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:59,987 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-28 05:50:59,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:59,997 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:00,473 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 05:51:00,473 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8724#true} is VALID [2022-04-28 05:51:00,473 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:00,473 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 05:51:00,473 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 05:51:00,473 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-28 05:51:00,473 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:00,474 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:00,474 INFO L290 TraceCheckUtils]: 8: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:00,474 INFO L290 TraceCheckUtils]: 9: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:00,475 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8724#true} #94#return; {8761#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:00,475 INFO L272 TraceCheckUtils]: 11: Hoare triple {8761#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:00,475 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:00,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:00,475 INFO L290 TraceCheckUtils]: 14: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:00,476 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8761#(<= 1 main_~x~0)} #96#return; {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,476 INFO L290 TraceCheckUtils]: 16: Hoare triple {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:00,477 INFO L290 TraceCheckUtils]: 17: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:00,477 INFO L290 TraceCheckUtils]: 18: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:00,477 INFO L290 TraceCheckUtils]: 19: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:00,478 INFO L290 TraceCheckUtils]: 20: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:00,478 INFO L290 TraceCheckUtils]: 21: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:00,479 INFO L290 TraceCheckUtils]: 22: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:00,479 INFO L290 TraceCheckUtils]: 23: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,480 INFO L290 TraceCheckUtils]: 24: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,480 INFO L290 TraceCheckUtils]: 25: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,480 INFO L290 TraceCheckUtils]: 26: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,481 INFO L290 TraceCheckUtils]: 27: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,481 INFO L290 TraceCheckUtils]: 28: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post7 < 20);havoc #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,481 INFO L290 TraceCheckUtils]: 29: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,482 INFO L290 TraceCheckUtils]: 30: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,483 INFO L290 TraceCheckUtils]: 31: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post8 < 20);havoc #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,483 INFO L272 TraceCheckUtils]: 32: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:00,483 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:00,483 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:00,483 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:00,484 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #98#return; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:00,484 INFO L272 TraceCheckUtils]: 37: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:00,485 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:00,485 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 05:51:00,485 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 05:51:00,485 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:00,485 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:00,758 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 05:51:00,759 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 05:51:00,759 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:00,760 INFO L272 TraceCheckUtils]: 37: Hoare triple {8867#(= 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)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:00,760 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,760 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:00,760 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:00,760 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:00,760 INFO L272 TraceCheckUtils]: 32: Hoare triple {8867#(= 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)); {8724#true} is VALID [2022-04-28 05:51:00,761 INFO L290 TraceCheckUtils]: 31: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,761 INFO L290 TraceCheckUtils]: 30: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,761 INFO L290 TraceCheckUtils]: 29: Hoare triple {8867#(= 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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,762 INFO L290 TraceCheckUtils]: 28: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,762 INFO L290 TraceCheckUtils]: 27: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,762 INFO L290 TraceCheckUtils]: 26: Hoare triple {8867#(= 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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,763 INFO L290 TraceCheckUtils]: 25: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:00,763 INFO L290 TraceCheckUtils]: 24: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:02,764 WARN L290 TraceCheckUtils]: 23: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 05:51:02,765 INFO L290 TraceCheckUtils]: 22: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~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); {8910#(= (+ (* (+ (* (* main_~k~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-28 05:51:02,778 INFO L290 TraceCheckUtils]: 21: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~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 !!(#t~post7 < 20);havoc #t~post7; {8910#(= (+ (* (+ (* (* main_~k~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-28 05:51:02,779 INFO L290 TraceCheckUtils]: 20: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~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)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8910#(= (+ (* (+ (* (* main_~k~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-28 05:51:02,779 INFO L290 TraceCheckUtils]: 19: Hoare triple {8923#(= 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; {8910#(= (+ (* (+ (* (* main_~k~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-28 05:51:02,780 INFO L290 TraceCheckUtils]: 18: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:02,780 INFO L290 TraceCheckUtils]: 17: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:02,780 INFO L290 TraceCheckUtils]: 16: Hoare triple {8724#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:02,780 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8724#true} {8724#true} #96#return; {8724#true} is VALID [2022-04-28 05:51:02,780 INFO L290 TraceCheckUtils]: 14: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 13: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L272 TraceCheckUtils]: 11: Hoare triple {8724#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8724#true} {8724#true} #94#return; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 9: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8724#true} is VALID [2022-04-28 05:51:02,781 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 05:51:02,782 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:02,782 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:02,782 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [178742040] [2022-04-28 05:51:02,782 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:02,782 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [779573052] [2022-04-28 05:51:02,782 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [779573052] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:02,782 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:02,782 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-28 05:51:02,782 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:02,782 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [693020637] [2022-04-28 05:51:02,782 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [693020637] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:02,783 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:02,783 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:51:02,783 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [437636860] [2022-04-28 05:51:02,783 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:02,783 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 05:51:02,783 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:02,783 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:02,811 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-28 05:51:02,811 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:51:02,811 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:02,811 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:51:02,811 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:02,812 INFO L87 Difference]: Start difference. First operand 190 states and 258 transitions. Second operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:03,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:03,831 INFO L93 Difference]: Finished difference Result 199 states and 266 transitions. [2022-04-28 05:51:03,831 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:51:03,831 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 05:51:03,832 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:03,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:03,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:51:03,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:03,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:51:03,834 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-28 05:51:03,929 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-28 05:51:03,932 INFO L225 Difference]: With dead ends: 199 [2022-04-28 05:51:03,932 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 05:51:03,932 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:51:03,933 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 104 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 248 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 278 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 248 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:03,933 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [116 Valid, 310 Invalid, 278 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 248 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:51:03,933 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 05:51:04,264 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 194. [2022-04-28 05:51:04,264 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:04,265 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:04,265 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:04,265 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:04,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:04,268 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 05:51:04,268 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 05:51:04,269 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:04,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:04,269 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-28 05:51:04,269 INFO L87 Difference]: Start difference. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-28 05:51:04,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:04,272 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 05:51:04,273 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 05:51:04,273 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:04,273 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:04,273 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:04,273 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:04,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:51:04,276 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 261 transitions. [2022-04-28 05:51:04,277 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 261 transitions. Word has length 41 [2022-04-28 05:51:04,277 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:04,277 INFO L495 AbstractCegarLoop]: Abstraction has 194 states and 261 transitions. [2022-04-28 05:51:04,277 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:51:04,277 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 261 transitions. [2022-04-28 05:51:04,543 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:04,544 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 261 transitions. [2022-04-28 05:51:04,544 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-28 05:51:04,544 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:04,544 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:04,571 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-28 05:51:04,759 WARN L477 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-28 05:51:04,759 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:04,760 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:04,760 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-28 05:51:04,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:04,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1345759582] [2022-04-28 05:51:04,760 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:04,760 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 2 times [2022-04-28 05:51:04,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:04,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [106269761] [2022-04-28 05:51:04,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:04,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:04,775 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:04,775 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [450415428] [2022-04-28 05:51:04,775 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:04,775 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:04,775 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:04,777 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-28 05:51:04,778 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-28 05:51:04,811 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:04,811 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:04,811 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:51:04,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:04,819 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:04,933 INFO L272 TraceCheckUtils]: 0: Hoare triple {10169#true} call ULTIMATE.init(); {10169#true} is VALID [2022-04-28 05:51:04,933 INFO L290 TraceCheckUtils]: 1: Hoare triple {10169#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10169#true} is VALID [2022-04-28 05:51:04,933 INFO L290 TraceCheckUtils]: 2: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:04,933 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10169#true} {10169#true} #108#return; {10169#true} is VALID [2022-04-28 05:51:04,933 INFO L272 TraceCheckUtils]: 4: Hoare triple {10169#true} call #t~ret9 := main(); {10169#true} is VALID [2022-04-28 05:51:04,933 INFO L290 TraceCheckUtils]: 5: Hoare triple {10169#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10169#true} is VALID [2022-04-28 05:51:04,933 INFO L272 TraceCheckUtils]: 6: Hoare triple {10169#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:51:04,933 INFO L290 TraceCheckUtils]: 7: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 8: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 9: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10169#true} {10169#true} #94#return; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L272 TraceCheckUtils]: 11: Hoare triple {10169#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 12: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 13: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 14: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10169#true} {10169#true} #96#return; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 16: Hoare triple {10169#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 17: Hoare triple {10169#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 18: Hoare triple {10169#true} assume !!(#t~post6 < 20);havoc #t~post6; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 19: Hoare triple {10169#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 20: Hoare triple {10169#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10169#true} is VALID [2022-04-28 05:51:04,934 INFO L290 TraceCheckUtils]: 21: Hoare triple {10169#true} assume !!(#t~post7 < 20);havoc #t~post7; {10169#true} is VALID [2022-04-28 05:51:04,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {10169#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:04,935 INFO L290 TraceCheckUtils]: 23: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:04,935 INFO L290 TraceCheckUtils]: 24: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:04,936 INFO L272 TraceCheckUtils]: 25: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-28 05:51:04,936 INFO L290 TraceCheckUtils]: 26: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:04,936 INFO L290 TraceCheckUtils]: 27: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:04,936 INFO L290 TraceCheckUtils]: 28: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:04,936 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #98#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:04,936 INFO L272 TraceCheckUtils]: 30: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-28 05:51:04,936 INFO L290 TraceCheckUtils]: 31: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:04,937 INFO L290 TraceCheckUtils]: 32: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:04,937 INFO L290 TraceCheckUtils]: 33: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:04,937 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #100#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:04,937 INFO L272 TraceCheckUtils]: 35: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-28 05:51:04,937 INFO L290 TraceCheckUtils]: 36: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:51:04,937 INFO L290 TraceCheckUtils]: 37: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:51:04,937 INFO L290 TraceCheckUtils]: 38: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:51:04,938 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:51:04,938 INFO L272 TraceCheckUtils]: 40: Hoare triple {10240#(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)); {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:04,939 INFO L290 TraceCheckUtils]: 41: Hoare triple {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10299#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:04,939 INFO L290 TraceCheckUtils]: 42: Hoare triple {10299#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10170#false} is VALID [2022-04-28 05:51:04,939 INFO L290 TraceCheckUtils]: 43: Hoare triple {10170#false} assume !false; {10170#false} is VALID [2022-04-28 05:51:04,939 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 05:51:04,939 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:04,939 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:04,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [106269761] [2022-04-28 05:51:04,940 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:04,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [450415428] [2022-04-28 05:51:04,940 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [450415428] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:04,940 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:04,940 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:04,940 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:04,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1345759582] [2022-04-28 05:51:04,940 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1345759582] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:04,940 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:04,940 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:04,940 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1636172520] [2022-04-28 05:51:04,940 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:04,941 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-28 05:51:04,941 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:04,941 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:04,963 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-28 05:51:04,963 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:04,963 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:04,964 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:04,964 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:04,964 INFO L87 Difference]: Start difference. First operand 194 states and 261 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:05,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:05,573 INFO L93 Difference]: Finished difference Result 261 states and 367 transitions. [2022-04-28 05:51:05,573 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:05,574 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-28 05:51:05,574 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:05,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:05,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:05,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:05,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:05,576 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 05:51:05,627 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:05,634 INFO L225 Difference]: With dead ends: 261 [2022-04-28 05:51:05,634 INFO L226 Difference]: Without dead ends: 259 [2022-04-28 05:51:05,634 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 40 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-28 05:51:05,635 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 163 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-28 05:51:05,637 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 163 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:05,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-28 05:51:06,157 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 228. [2022-04-28 05:51:06,157 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:06,157 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:06,158 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:06,158 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:06,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:06,163 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 05:51:06,163 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 05:51:06,164 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:06,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:06,164 INFO L74 IsIncluded]: Start isIncluded. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 05:51:06,164 INFO L87 Difference]: Start difference. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 05:51:06,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:06,169 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 05:51:06,169 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 05:51:06,170 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:06,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:06,170 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:06,170 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:06,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:51:06,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 318 transitions. [2022-04-28 05:51:06,174 INFO L78 Accepts]: Start accepts. Automaton has 228 states and 318 transitions. Word has length 44 [2022-04-28 05:51:06,175 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:06,175 INFO L495 AbstractCegarLoop]: Abstraction has 228 states and 318 transitions. [2022-04-28 05:51:06,178 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:51:06,178 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 228 states and 318 transitions. [2022-04-28 05:51:06,477 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 318 edges. 318 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:06,478 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 318 transitions. [2022-04-28 05:51:06,478 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-28 05:51:06,478 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:06,478 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:06,494 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-28 05:51:06,679 WARN L477 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-28 05:51:06,679 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:06,679 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:06,679 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 1 times [2022-04-28 05:51:06,679 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:06,679 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1400976275] [2022-04-28 05:51:06,680 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:06,680 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 2 times [2022-04-28 05:51:06,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:06,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1017580286] [2022-04-28 05:51:06,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:06,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:06,694 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:06,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1688750122] [2022-04-28 05:51:06,695 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:06,695 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:06,695 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:06,696 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-28 05:51:06,697 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-28 05:51:06,735 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:06,735 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:06,736 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:51:06,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:06,753 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:06,945 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 05:51:06,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,946 INFO L290 TraceCheckUtils]: 2: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,946 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11811#(<= ~counter~0 0)} {11803#true} #108#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,947 INFO L272 TraceCheckUtils]: 4: Hoare triple {11811#(<= ~counter~0 0)} call #t~ret9 := main(); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,947 INFO L290 TraceCheckUtils]: 5: Hoare triple {11811#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,947 INFO L272 TraceCheckUtils]: 6: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,948 INFO L290 TraceCheckUtils]: 7: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,948 INFO L290 TraceCheckUtils]: 8: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,948 INFO L290 TraceCheckUtils]: 9: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,949 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #94#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,949 INFO L272 TraceCheckUtils]: 11: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,949 INFO L290 TraceCheckUtils]: 12: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,949 INFO L290 TraceCheckUtils]: 13: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,950 INFO L290 TraceCheckUtils]: 14: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,950 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #96#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,950 INFO L290 TraceCheckUtils]: 16: Hoare triple {11811#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:06,951 INFO L290 TraceCheckUtils]: 17: Hoare triple {11811#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:06,951 INFO L290 TraceCheckUtils]: 18: Hoare triple {11860#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:06,951 INFO L290 TraceCheckUtils]: 19: Hoare triple {11860#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:06,952 INFO L290 TraceCheckUtils]: 20: Hoare triple {11860#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:06,952 INFO L290 TraceCheckUtils]: 21: Hoare triple {11870#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:06,952 INFO L290 TraceCheckUtils]: 22: Hoare triple {11870#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:06,953 INFO L290 TraceCheckUtils]: 23: Hoare triple {11870#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:06,953 INFO L290 TraceCheckUtils]: 24: Hoare triple {11870#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:06,953 INFO L290 TraceCheckUtils]: 25: Hoare triple {11883#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:06,954 INFO L290 TraceCheckUtils]: 26: Hoare triple {11883#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:06,954 INFO L290 TraceCheckUtils]: 27: Hoare triple {11883#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:06,954 INFO L290 TraceCheckUtils]: 28: Hoare triple {11893#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:06,955 INFO L290 TraceCheckUtils]: 29: Hoare triple {11893#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:06,955 INFO L290 TraceCheckUtils]: 30: Hoare triple {11893#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11903#(<= |main_#t~post8| 4)} is VALID [2022-04-28 05:51:06,955 INFO L290 TraceCheckUtils]: 31: Hoare triple {11903#(<= |main_#t~post8| 4)} assume !(#t~post8 < 20);havoc #t~post8; {11804#false} is VALID [2022-04-28 05:51:06,955 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 05:51:06,955 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 05:51:06,955 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 20);havoc #t~post7; {11804#false} is VALID [2022-04-28 05:51:06,955 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#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; {11804#false} is VALID [2022-04-28 05:51:06,956 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 05:51:06,956 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 20);havoc #t~post6; {11804#false} is VALID [2022-04-28 05:51:06,956 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#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)); {11804#false} is VALID [2022-04-28 05:51:06,956 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 05:51:06,956 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 05:51:06,956 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 05:51:06,956 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:06,956 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#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)); {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 20);havoc #t~post6; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#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; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 20);havoc #t~post7; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 05:51:07,184 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 05:51:07,185 INFO L290 TraceCheckUtils]: 31: Hoare triple {11967#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {11804#false} is VALID [2022-04-28 05:51:07,185 INFO L290 TraceCheckUtils]: 30: Hoare triple {11971#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11967#(< |main_#t~post8| 20)} is VALID [2022-04-28 05:51:07,185 INFO L290 TraceCheckUtils]: 29: Hoare triple {11971#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11971#(< ~counter~0 20)} is VALID [2022-04-28 05:51:07,186 INFO L290 TraceCheckUtils]: 28: Hoare triple {11971#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {11971#(< ~counter~0 20)} is VALID [2022-04-28 05:51:07,186 INFO L290 TraceCheckUtils]: 27: Hoare triple {11981#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11971#(< ~counter~0 20)} is VALID [2022-04-28 05:51:07,186 INFO L290 TraceCheckUtils]: 26: Hoare triple {11981#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11981#(< ~counter~0 19)} is VALID [2022-04-28 05:51:07,187 INFO L290 TraceCheckUtils]: 25: Hoare triple {11981#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {11981#(< ~counter~0 19)} is VALID [2022-04-28 05:51:07,187 INFO L290 TraceCheckUtils]: 24: Hoare triple {11991#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11981#(< ~counter~0 19)} is VALID [2022-04-28 05:51:07,187 INFO L290 TraceCheckUtils]: 23: Hoare triple {11991#(< ~counter~0 18)} ~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; {11991#(< ~counter~0 18)} is VALID [2022-04-28 05:51:07,188 INFO L290 TraceCheckUtils]: 22: Hoare triple {11991#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {11991#(< ~counter~0 18)} is VALID [2022-04-28 05:51:07,188 INFO L290 TraceCheckUtils]: 21: Hoare triple {11991#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {11991#(< ~counter~0 18)} is VALID [2022-04-28 05:51:07,188 INFO L290 TraceCheckUtils]: 20: Hoare triple {12004#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11991#(< ~counter~0 18)} is VALID [2022-04-28 05:51:07,189 INFO L290 TraceCheckUtils]: 19: Hoare triple {12004#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12004#(< ~counter~0 17)} is VALID [2022-04-28 05:51:07,189 INFO L290 TraceCheckUtils]: 18: Hoare triple {12004#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {12004#(< ~counter~0 17)} is VALID [2022-04-28 05:51:07,189 INFO L290 TraceCheckUtils]: 17: Hoare triple {12014#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12004#(< ~counter~0 17)} is VALID [2022-04-28 05:51:07,190 INFO L290 TraceCheckUtils]: 16: Hoare triple {12014#(< ~counter~0 16)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,190 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11803#true} {12014#(< ~counter~0 16)} #96#return; {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 05:51:07,190 INFO L290 TraceCheckUtils]: 13: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 05:51:07,190 INFO L290 TraceCheckUtils]: 12: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 05:51:07,190 INFO L272 TraceCheckUtils]: 11: Hoare triple {12014#(< ~counter~0 16)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 05:51:07,191 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11803#true} {12014#(< ~counter~0 16)} #94#return; {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,191 INFO L290 TraceCheckUtils]: 9: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 05:51:07,191 INFO L290 TraceCheckUtils]: 8: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 05:51:07,191 INFO L290 TraceCheckUtils]: 7: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 05:51:07,191 INFO L272 TraceCheckUtils]: 6: Hoare triple {12014#(< ~counter~0 16)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 05:51:07,191 INFO L290 TraceCheckUtils]: 5: Hoare triple {12014#(< ~counter~0 16)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,191 INFO L272 TraceCheckUtils]: 4: Hoare triple {12014#(< ~counter~0 16)} call #t~ret9 := main(); {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12014#(< ~counter~0 16)} {11803#true} #108#return; {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,192 INFO L290 TraceCheckUtils]: 2: Hoare triple {12014#(< ~counter~0 16)} assume true; {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12014#(< ~counter~0 16)} is VALID [2022-04-28 05:51:07,192 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 05:51:07,193 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:07,193 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:07,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1017580286] [2022-04-28 05:51:07,193 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:07,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1688750122] [2022-04-28 05:51:07,193 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1688750122] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:07,193 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:07,193 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:51:07,193 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:07,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1400976275] [2022-04-28 05:51:07,193 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1400976275] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:07,194 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:07,194 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:07,194 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [575531864] [2022-04-28 05:51:07,194 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:07,194 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-28 05:51:07,194 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:07,194 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), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:07,217 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:07,217 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:07,217 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:07,217 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:07,217 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:07,218 INFO L87 Difference]: Start difference. First operand 228 states and 318 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:07,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:07,929 INFO L93 Difference]: Finished difference Result 429 states and 607 transitions. [2022-04-28 05:51:07,929 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:51:07,930 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-28 05:51:07,930 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:07,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:07,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 05:51:07,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:07,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 05:51:07,934 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 132 transitions. [2022-04-28 05:51:08,018 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:08,024 INFO L225 Difference]: With dead ends: 429 [2022-04-28 05:51:08,024 INFO L226 Difference]: Without dead ends: 264 [2022-04-28 05:51:08,025 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=147, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:08,025 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 52 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 68 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:08,026 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 201 Invalid, 68 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:08,026 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 264 states. [2022-04-28 05:51:08,492 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 264 to 258. [2022-04-28 05:51:08,492 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:08,493 INFO L82 GeneralOperation]: Start isEquivalent. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:08,494 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:08,494 INFO L87 Difference]: Start difference. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:08,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:08,499 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 05:51:08,499 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 05:51:08,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:08,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:08,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 05:51:08,501 INFO L87 Difference]: Start difference. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 05:51:08,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:08,505 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 05:51:08,505 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 05:51:08,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:08,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:08,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:08,506 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:08,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:08,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 351 transitions. [2022-04-28 05:51:08,512 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 351 transitions. Word has length 42 [2022-04-28 05:51:08,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:08,512 INFO L495 AbstractCegarLoop]: Abstraction has 258 states and 351 transitions. [2022-04-28 05:51:08,512 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:08,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 258 states and 351 transitions. [2022-04-28 05:51:08,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 351 edges. 351 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:08,872 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 351 transitions. [2022-04-28 05:51:08,872 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 05:51:08,872 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:08,872 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:08,888 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-28 05:51:09,087 WARN L477 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-28 05:51:09,087 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:09,088 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:09,088 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 1 times [2022-04-28 05:51:09,088 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:09,088 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1579762311] [2022-04-28 05:51:09,088 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:09,088 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 2 times [2022-04-28 05:51:09,088 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:09,088 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1483006159] [2022-04-28 05:51:09,088 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:09,089 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:09,100 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:09,100 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1069150189] [2022-04-28 05:51:09,100 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:09,100 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:09,100 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:09,101 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-28 05:51:09,102 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-28 05:51:09,138 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:09,139 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:09,139 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:51:09,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:09,147 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:12,177 INFO L272 TraceCheckUtils]: 0: Hoare triple {13974#true} call ULTIMATE.init(); {13974#true} is VALID [2022-04-28 05:51:12,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {13974#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 2: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13974#true} {13974#true} #108#return; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L272 TraceCheckUtils]: 4: Hoare triple {13974#true} call #t~ret9 := main(); {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 5: Hoare triple {13974#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L272 TraceCheckUtils]: 6: Hoare triple {13974#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 7: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 8: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 9: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13974#true} {13974#true} #94#return; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L272 TraceCheckUtils]: 11: Hoare triple {13974#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 12: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 13: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:12,178 INFO L290 TraceCheckUtils]: 14: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13974#true} {13974#true} #96#return; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 16: Hoare triple {13974#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 17: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 18: Hoare triple {13974#true} assume !!(#t~post6 < 20);havoc #t~post6; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 19: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {13974#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 21: Hoare triple {13974#true} assume !!(#t~post7 < 20);havoc #t~post7; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 22: Hoare triple {13974#true} assume !(~c~0 >= ~b~0); {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 23: Hoare triple {13974#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; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 24: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 05:51:12,179 INFO L290 TraceCheckUtils]: 25: Hoare triple {13974#true} assume !!(#t~post6 < 20);havoc #t~post6; {13974#true} is VALID [2022-04-28 05:51:12,180 INFO L290 TraceCheckUtils]: 26: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,180 INFO L290 TraceCheckUtils]: 27: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,180 INFO L290 TraceCheckUtils]: 28: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,181 INFO L290 TraceCheckUtils]: 29: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,181 INFO L290 TraceCheckUtils]: 30: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,181 INFO L290 TraceCheckUtils]: 31: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 20);havoc #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,182 INFO L272 TraceCheckUtils]: 32: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:12,182 INFO L290 TraceCheckUtils]: 33: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:12,182 INFO L290 TraceCheckUtils]: 34: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:12,182 INFO L290 TraceCheckUtils]: 35: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:12,182 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #98#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,183 INFO L272 TraceCheckUtils]: 37: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:12,183 INFO L290 TraceCheckUtils]: 38: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:12,183 INFO L290 TraceCheckUtils]: 39: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:12,183 INFO L290 TraceCheckUtils]: 40: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:12,183 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #100#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:12,184 INFO L272 TraceCheckUtils]: 42: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:12,184 INFO L290 TraceCheckUtils]: 43: Hoare triple {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14110#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:12,185 INFO L290 TraceCheckUtils]: 44: Hoare triple {14110#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13975#false} is VALID [2022-04-28 05:51:12,185 INFO L290 TraceCheckUtils]: 45: Hoare triple {13975#false} assume !false; {13975#false} is VALID [2022-04-28 05:51:12,185 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-28 05:51:12,185 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:12,185 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:12,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1483006159] [2022-04-28 05:51:12,185 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:12,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1069150189] [2022-04-28 05:51:12,185 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1069150189] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:12,185 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:12,186 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:12,186 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:12,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1579762311] [2022-04-28 05:51:12,186 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1579762311] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:12,186 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:12,186 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:12,186 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1293760545] [2022-04-28 05:51:12,186 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:12,186 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-28 05:51:12,186 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:12,187 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), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:12,211 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-28 05:51:12,212 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:12,212 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:12,212 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:12,212 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:12,212 INFO L87 Difference]: Start difference. First operand 258 states and 351 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:13,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:13,050 INFO L93 Difference]: Finished difference Result 332 states and 473 transitions. [2022-04-28 05:51:13,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:13,051 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-28 05:51:13,051 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:13,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:13,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:13,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:13,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:13,053 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 05:51:13,099 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:13,105 INFO L225 Difference]: With dead ends: 332 [2022-04-28 05:51:13,106 INFO L226 Difference]: Without dead ends: 330 [2022-04-28 05:51:13,106 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 42 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-28 05:51:13,106 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 10 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 153 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:13,106 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 153 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:13,107 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 330 states. [2022-04-28 05:51:13,734 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 330 to 321. [2022-04-28 05:51:13,734 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:13,735 INFO L82 GeneralOperation]: Start isEquivalent. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:13,735 INFO L74 IsIncluded]: Start isIncluded. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:13,736 INFO L87 Difference]: Start difference. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:13,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:13,742 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 05:51:13,742 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 05:51:13,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:13,743 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:13,744 INFO L74 IsIncluded]: Start isIncluded. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 05:51:13,744 INFO L87 Difference]: Start difference. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 05:51:13,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:13,751 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 05:51:13,751 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 05:51:13,751 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:13,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:13,752 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:13,752 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:13,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:13,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 321 states to 321 states and 462 transitions. [2022-04-28 05:51:13,759 INFO L78 Accepts]: Start accepts. Automaton has 321 states and 462 transitions. Word has length 46 [2022-04-28 05:51:13,759 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:13,759 INFO L495 AbstractCegarLoop]: Abstraction has 321 states and 462 transitions. [2022-04-28 05:51:13,760 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:13,760 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 321 states and 462 transitions. [2022-04-28 05:51:14,299 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 462 edges. 462 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:14,299 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 462 transitions. [2022-04-28 05:51:14,300 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-28 05:51:14,300 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:14,300 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:14,316 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-28 05:51:14,503 WARN L477 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-28 05:51:14,503 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:14,504 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:14,504 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 1 times [2022-04-28 05:51:14,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:14,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1283746146] [2022-04-28 05:51:14,504 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:14,504 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 2 times [2022-04-28 05:51:14,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:14,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [590778978] [2022-04-28 05:51:14,504 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:14,505 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:14,518 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:14,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [369636086] [2022-04-28 05:51:14,519 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:14,519 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:14,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:14,531 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-28 05:51:14,539 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-28 05:51:14,571 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:14,571 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:14,574 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:51:14,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:14,586 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:14,831 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 05:51:14,832 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,832 INFO L290 TraceCheckUtils]: 2: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,832 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16092#(<= ~counter~0 0)} {16084#true} #108#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,833 INFO L272 TraceCheckUtils]: 4: Hoare triple {16092#(<= ~counter~0 0)} call #t~ret9 := main(); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,833 INFO L290 TraceCheckUtils]: 5: Hoare triple {16092#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,833 INFO L272 TraceCheckUtils]: 6: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,834 INFO L290 TraceCheckUtils]: 7: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,834 INFO L290 TraceCheckUtils]: 8: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,834 INFO L290 TraceCheckUtils]: 9: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,834 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #94#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,835 INFO L272 TraceCheckUtils]: 11: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,835 INFO L290 TraceCheckUtils]: 12: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,835 INFO L290 TraceCheckUtils]: 13: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,836 INFO L290 TraceCheckUtils]: 14: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,836 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #96#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,836 INFO L290 TraceCheckUtils]: 16: Hoare triple {16092#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:14,837 INFO L290 TraceCheckUtils]: 17: Hoare triple {16092#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:14,837 INFO L290 TraceCheckUtils]: 18: Hoare triple {16141#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:14,837 INFO L290 TraceCheckUtils]: 19: Hoare triple {16141#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:14,838 INFO L290 TraceCheckUtils]: 20: Hoare triple {16141#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:14,838 INFO L290 TraceCheckUtils]: 21: Hoare triple {16151#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:14,838 INFO L290 TraceCheckUtils]: 22: Hoare triple {16151#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:14,839 INFO L290 TraceCheckUtils]: 23: Hoare triple {16151#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {16161#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,840 INFO L272 TraceCheckUtils]: 25: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,840 INFO L290 TraceCheckUtils]: 26: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,849 INFO L290 TraceCheckUtils]: 27: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,849 INFO L290 TraceCheckUtils]: 28: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,850 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #98#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,850 INFO L272 TraceCheckUtils]: 30: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,851 INFO L290 TraceCheckUtils]: 31: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,851 INFO L290 TraceCheckUtils]: 32: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,851 INFO L290 TraceCheckUtils]: 33: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,852 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #100#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,852 INFO L272 TraceCheckUtils]: 35: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,852 INFO L290 TraceCheckUtils]: 36: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,853 INFO L290 TraceCheckUtils]: 37: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,853 INFO L290 TraceCheckUtils]: 38: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,854 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #102#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,854 INFO L272 TraceCheckUtils]: 40: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,854 INFO L290 TraceCheckUtils]: 41: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,855 INFO L290 TraceCheckUtils]: 42: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,855 INFO L290 TraceCheckUtils]: 43: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,855 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #104#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,856 INFO L290 TraceCheckUtils]: 45: Hoare triple {16161#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,856 INFO L290 TraceCheckUtils]: 46: Hoare triple {16161#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:14,857 INFO L290 TraceCheckUtils]: 47: Hoare triple {16161#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:14,857 INFO L290 TraceCheckUtils]: 48: Hoare triple {16234#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:14,857 INFO L290 TraceCheckUtils]: 49: Hoare triple {16234#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:14,857 INFO L290 TraceCheckUtils]: 50: Hoare triple {16234#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:14,858 INFO L290 TraceCheckUtils]: 51: Hoare triple {16234#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16247#(<= |main_#t~post6| 4)} is VALID [2022-04-28 05:51:14,858 INFO L290 TraceCheckUtils]: 52: Hoare triple {16247#(<= |main_#t~post6| 4)} assume !(#t~post6 < 20);havoc #t~post6; {16085#false} is VALID [2022-04-28 05:51:14,858 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#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)); {16085#false} is VALID [2022-04-28 05:51:14,858 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 05:51:14,858 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 05:51:14,859 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 05:51:14,859 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:14,859 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:15,123 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 05:51:15,123 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 05:51:15,123 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 05:51:15,124 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#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)); {16085#false} is VALID [2022-04-28 05:51:15,124 INFO L290 TraceCheckUtils]: 52: Hoare triple {16275#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {16085#false} is VALID [2022-04-28 05:51:15,124 INFO L290 TraceCheckUtils]: 51: Hoare triple {16279#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16275#(< |main_#t~post6| 20)} is VALID [2022-04-28 05:51:15,124 INFO L290 TraceCheckUtils]: 50: Hoare triple {16279#(< ~counter~0 20)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16279#(< ~counter~0 20)} is VALID [2022-04-28 05:51:15,125 INFO L290 TraceCheckUtils]: 49: Hoare triple {16279#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {16279#(< ~counter~0 20)} is VALID [2022-04-28 05:51:15,125 INFO L290 TraceCheckUtils]: 48: Hoare triple {16279#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {16279#(< ~counter~0 20)} is VALID [2022-04-28 05:51:15,125 INFO L290 TraceCheckUtils]: 47: Hoare triple {16292#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16279#(< ~counter~0 20)} is VALID [2022-04-28 05:51:15,126 INFO L290 TraceCheckUtils]: 46: Hoare triple {16292#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,126 INFO L290 TraceCheckUtils]: 45: Hoare triple {16292#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,126 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #104#return; {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,127 INFO L290 TraceCheckUtils]: 43: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:15,127 INFO L290 TraceCheckUtils]: 42: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:15,127 INFO L290 TraceCheckUtils]: 41: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:15,127 INFO L272 TraceCheckUtils]: 40: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:15,127 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #102#return; {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,127 INFO L290 TraceCheckUtils]: 38: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:15,127 INFO L290 TraceCheckUtils]: 37: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:15,127 INFO L290 TraceCheckUtils]: 36: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:15,128 INFO L272 TraceCheckUtils]: 35: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:15,128 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #100#return; {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,128 INFO L290 TraceCheckUtils]: 33: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:15,128 INFO L290 TraceCheckUtils]: 32: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:15,128 INFO L290 TraceCheckUtils]: 31: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:15,128 INFO L272 TraceCheckUtils]: 30: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:15,129 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #98#return; {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,129 INFO L290 TraceCheckUtils]: 28: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:15,129 INFO L290 TraceCheckUtils]: 27: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:15,129 INFO L290 TraceCheckUtils]: 26: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:15,129 INFO L272 TraceCheckUtils]: 25: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:15,129 INFO L290 TraceCheckUtils]: 24: Hoare triple {16292#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,130 INFO L290 TraceCheckUtils]: 23: Hoare triple {16365#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16292#(< ~counter~0 19)} is VALID [2022-04-28 05:51:15,131 INFO L290 TraceCheckUtils]: 22: Hoare triple {16365#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16365#(< ~counter~0 18)} is VALID [2022-04-28 05:51:15,131 INFO L290 TraceCheckUtils]: 21: Hoare triple {16365#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {16365#(< ~counter~0 18)} is VALID [2022-04-28 05:51:15,132 INFO L290 TraceCheckUtils]: 20: Hoare triple {16375#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16365#(< ~counter~0 18)} is VALID [2022-04-28 05:51:15,132 INFO L290 TraceCheckUtils]: 19: Hoare triple {16375#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16375#(< ~counter~0 17)} is VALID [2022-04-28 05:51:15,132 INFO L290 TraceCheckUtils]: 18: Hoare triple {16375#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {16375#(< ~counter~0 17)} is VALID [2022-04-28 05:51:15,133 INFO L290 TraceCheckUtils]: 17: Hoare triple {16385#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16375#(< ~counter~0 17)} is VALID [2022-04-28 05:51:15,133 INFO L290 TraceCheckUtils]: 16: Hoare triple {16385#(< ~counter~0 16)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,134 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16084#true} {16385#(< ~counter~0 16)} #96#return; {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,134 INFO L290 TraceCheckUtils]: 14: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:15,134 INFO L290 TraceCheckUtils]: 13: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:15,134 INFO L290 TraceCheckUtils]: 12: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:15,134 INFO L272 TraceCheckUtils]: 11: Hoare triple {16385#(< ~counter~0 16)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:15,134 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16084#true} {16385#(< ~counter~0 16)} #94#return; {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,134 INFO L290 TraceCheckUtils]: 9: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:15,135 INFO L290 TraceCheckUtils]: 8: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:15,135 INFO L290 TraceCheckUtils]: 7: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:15,135 INFO L272 TraceCheckUtils]: 6: Hoare triple {16385#(< ~counter~0 16)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:15,135 INFO L290 TraceCheckUtils]: 5: Hoare triple {16385#(< ~counter~0 16)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,135 INFO L272 TraceCheckUtils]: 4: Hoare triple {16385#(< ~counter~0 16)} call #t~ret9 := main(); {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,136 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16385#(< ~counter~0 16)} {16084#true} #108#return; {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,136 INFO L290 TraceCheckUtils]: 2: Hoare triple {16385#(< ~counter~0 16)} assume true; {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,136 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16385#(< ~counter~0 16)} is VALID [2022-04-28 05:51:15,137 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 05:51:15,137 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:15,137 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:15,137 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [590778978] [2022-04-28 05:51:15,137 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:15,137 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [369636086] [2022-04-28 05:51:15,137 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [369636086] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:15,137 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:15,137 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:51:15,137 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:15,137 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1283746146] [2022-04-28 05:51:15,138 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1283746146] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:15,138 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:15,138 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:15,138 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2082040634] [2022-04-28 05:51:15,138 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:15,138 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 05:51:15,138 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:15,138 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:15,172 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:15,172 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:15,172 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:15,172 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:15,172 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:15,173 INFO L87 Difference]: Start difference. First operand 321 states and 462 transitions. Second operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:16,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:16,009 INFO L93 Difference]: Finished difference Result 335 states and 475 transitions. [2022-04-28 05:51:16,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:51:16,009 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 05:51:16,009 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:16,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:16,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 05:51:16,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:16,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 05:51:16,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-28 05:51:16,083 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:16,089 INFO L225 Difference]: With dead ends: 335 [2022-04-28 05:51:16,089 INFO L226 Difference]: Without dead ends: 328 [2022-04-28 05:51:16,089 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:16,090 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 46 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:16,090 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 177 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:16,090 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-28 05:51:16,771 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 324. [2022-04-28 05:51:16,772 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:16,772 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:16,772 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:16,773 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:16,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:16,783 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 05:51:16,783 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 05:51:16,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:16,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:16,785 INFO L74 IsIncluded]: Start isIncluded. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 05:51:16,785 INFO L87 Difference]: Start difference. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 05:51:16,794 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:16,794 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 05:51:16,795 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 05:51:16,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:16,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:16,795 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:16,795 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:16,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:16,805 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 324 states to 324 states and 465 transitions. [2022-04-28 05:51:16,805 INFO L78 Accepts]: Start accepts. Automaton has 324 states and 465 transitions. Word has length 57 [2022-04-28 05:51:16,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:16,805 INFO L495 AbstractCegarLoop]: Abstraction has 324 states and 465 transitions. [2022-04-28 05:51:16,805 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:16,805 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 324 states and 465 transitions. [2022-04-28 05:51:17,309 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 465 edges. 465 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:17,309 INFO L276 IsEmpty]: Start isEmpty. Operand 324 states and 465 transitions. [2022-04-28 05:51:17,310 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 05:51:17,310 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:17,310 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:17,327 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-28 05:51:17,525 WARN L477 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-28 05:51:17,526 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:17,526 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:17,526 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-28 05:51:17,526 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:17,526 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [468039506] [2022-04-28 05:51:17,526 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:17,527 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 2 times [2022-04-28 05:51:17,527 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:17,527 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1650100707] [2022-04-28 05:51:17,527 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:17,527 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:17,536 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:17,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2064312490] [2022-04-28 05:51:17,536 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:17,536 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:17,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:17,537 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-28 05:51:17,538 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-28 05:51:17,577 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:17,577 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:17,578 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-28 05:51:17,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:17,590 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:18,255 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:18,255 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 05:51:18,256 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18470#(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-28 05:51:18,257 INFO L290 TraceCheckUtils]: 17: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18470#(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-28 05:51:18,257 INFO L290 TraceCheckUtils]: 18: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {18470#(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-28 05:51:18,257 INFO L290 TraceCheckUtils]: 19: Hoare triple {18470#(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; {18480#(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-28 05:51:18,258 INFO L290 TraceCheckUtils]: 20: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18480#(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-28 05:51:18,258 INFO L290 TraceCheckUtils]: 21: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {18480#(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-28 05:51:18,259 INFO L290 TraceCheckUtils]: 22: Hoare triple {18480#(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; {18490#(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-28 05:51:18,259 INFO L290 TraceCheckUtils]: 23: Hoare triple {18490#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18490#(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-28 05:51:18,259 INFO L290 TraceCheckUtils]: 24: Hoare triple {18490#(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 !!(#t~post8 < 20);havoc #t~post8; {18490#(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-28 05:51:18,260 INFO L272 TraceCheckUtils]: 25: Hoare triple {18490#(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)); {18417#true} is VALID [2022-04-28 05:51:18,260 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:18,260 INFO L290 TraceCheckUtils]: 27: Hoare triple {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:18,260 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:18,261 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18490#(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))} #98#return; {18514#(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-28 05:51:18,261 INFO L272 TraceCheckUtils]: 30: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-28 05:51:18,261 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:18,261 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:18,262 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:18,262 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18514#(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))} #100#return; {18514#(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-28 05:51:18,262 INFO L272 TraceCheckUtils]: 35: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-28 05:51:18,262 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:18,262 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:18,262 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:18,263 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18514#(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))} #102#return; {18514#(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-28 05:51:18,263 INFO L272 TraceCheckUtils]: 40: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-28 05:51:18,263 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:18,263 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:18,263 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:18,268 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18514#(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; {18514#(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-28 05:51:18,269 INFO L290 TraceCheckUtils]: 45: Hoare triple {18514#(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); {18514#(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-28 05:51:18,269 INFO L290 TraceCheckUtils]: 46: Hoare triple {18514#(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; {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:18,270 INFO L290 TraceCheckUtils]: 47: Hoare triple {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:18,270 INFO L290 TraceCheckUtils]: 48: Hoare triple {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:18,270 INFO L290 TraceCheckUtils]: 49: Hoare triple {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:18,271 INFO L290 TraceCheckUtils]: 50: Hoare triple {18566#(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_~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; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:18,271 INFO L290 TraceCheckUtils]: 51: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:18,272 INFO L290 TraceCheckUtils]: 52: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:18,272 INFO L290 TraceCheckUtils]: 53: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:18,273 INFO L272 TraceCheckUtils]: 54: Hoare triple {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 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)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:18,273 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:18,273 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 05:51:18,274 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 05:51:18,274 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:51:18,274 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:29,893 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 05:51:29,893 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 05:51:29,893 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:29,894 INFO L272 TraceCheckUtils]: 54: Hoare triple {18613#(= (+ (* 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)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:29,895 INFO L290 TraceCheckUtils]: 53: Hoare triple {18617#(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); {18613#(= (+ (* 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-28 05:51:29,895 INFO L290 TraceCheckUtils]: 52: Hoare triple {18617#(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 !!(#t~post6 < 20);havoc #t~post6; {18617#(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-28 05:51:29,895 INFO L290 TraceCheckUtils]: 51: Hoare triple {18617#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18617#(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-28 05:51:30,041 INFO L290 TraceCheckUtils]: 50: Hoare triple {18627#(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; {18617#(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-28 05:51:30,042 INFO L290 TraceCheckUtils]: 49: Hoare triple {18627#(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); {18627#(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-28 05:51:30,042 INFO L290 TraceCheckUtils]: 48: Hoare triple {18627#(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 !!(#t~post7 < 20);havoc #t~post7; {18627#(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-28 05:51:30,043 INFO L290 TraceCheckUtils]: 47: Hoare triple {18627#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18627#(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-28 05:51:30,145 INFO L290 TraceCheckUtils]: 46: Hoare triple {18640#(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; {18627#(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-28 05:51:30,146 INFO L290 TraceCheckUtils]: 45: Hoare triple {18640#(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); {18640#(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-28 05:51:30,147 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18640#(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))))} #104#return; {18640#(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-28 05:51:30,147 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:30,147 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:30,147 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:30,147 INFO L272 TraceCheckUtils]: 40: Hoare triple {18640#(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)); {18417#true} is VALID [2022-04-28 05:51:30,148 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18640#(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))))} #102#return; {18640#(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-28 05:51:30,148 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:30,148 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:30,148 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:30,148 INFO L272 TraceCheckUtils]: 35: Hoare triple {18640#(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)); {18417#true} is VALID [2022-04-28 05:51:30,149 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18640#(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))))} #100#return; {18640#(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-28 05:51:30,149 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:30,149 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:30,149 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:30,149 INFO L272 TraceCheckUtils]: 30: Hoare triple {18640#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:30,150 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18692#(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)))) (= (+ 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))))} #98#return; {18640#(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-28 05:51:30,150 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:30,150 INFO L290 TraceCheckUtils]: 27: Hoare triple {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:30,151 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:51:30,151 INFO L272 TraceCheckUtils]: 25: Hoare triple {18692#(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)))) (= (+ 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)); {18417#true} is VALID [2022-04-28 05:51:30,151 INFO L290 TraceCheckUtils]: 24: Hoare triple {18692#(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)))) (= (+ 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 !!(#t~post8 < 20);havoc #t~post8; {18692#(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)))) (= (+ 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-28 05:51:30,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {18692#(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)))) (= (+ 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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18692#(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)))) (= (+ 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-28 05:51:30,153 INFO L290 TraceCheckUtils]: 22: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18692#(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)))) (= (+ 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-28 05:51:30,153 INFO L290 TraceCheckUtils]: 21: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post7 < 20);havoc #t~post7; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:30,154 INFO L290 TraceCheckUtils]: 20: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:30,154 INFO L290 TraceCheckUtils]: 19: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:30,155 INFO L290 TraceCheckUtils]: 18: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post6 < 20);havoc #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:30,155 INFO L290 TraceCheckUtils]: 17: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:30,156 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:30,156 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:30,156 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 05:51:30,157 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:51:30,157 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:30,157 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1650100707] [2022-04-28 05:51:30,158 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:30,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2064312490] [2022-04-28 05:51:30,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2064312490] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:30,158 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:30,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 05:51:30,158 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:30,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [468039506] [2022-04-28 05:51:30,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [468039506] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:30,158 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:30,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:51:30,158 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2036745152] [2022-04-28 05:51:30,158 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:30,159 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 05:51:30,159 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:30,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:30,196 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-28 05:51:30,196 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:51:30,196 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:30,197 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:51:30,197 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:51:30,197 INFO L87 Difference]: Start difference. First operand 324 states and 465 transitions. Second operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:32,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:32,471 INFO L93 Difference]: Finished difference Result 384 states and 559 transitions. [2022-04-28 05:51:32,471 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:51:32,471 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 05:51:32,471 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:32,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:32,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 05:51:32,473 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:32,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 05:51:32,475 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 149 transitions. [2022-04-28 05:51:32,616 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:32,624 INFO L225 Difference]: With dead ends: 384 [2022-04-28 05:51:32,624 INFO L226 Difference]: Without dead ends: 381 [2022-04-28 05:51:32,624 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 95 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 95 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=101, Invalid=499, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:51:32,625 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 66 mSDsluCounter, 342 mSDsCounter, 0 mSdLazyCounter, 541 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 399 SdHoareTripleChecker+Invalid, 586 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 541 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:32,625 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 399 Invalid, 586 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 541 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 05:51:32,625 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 381 states. [2022-04-28 05:51:33,383 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 381 to 377. [2022-04-28 05:51:33,384 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:33,384 INFO L82 GeneralOperation]: Start isEquivalent. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:33,385 INFO L74 IsIncluded]: Start isIncluded. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:33,385 INFO L87 Difference]: Start difference. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:33,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:33,395 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 05:51:33,395 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 05:51:33,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:33,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:33,396 INFO L74 IsIncluded]: Start isIncluded. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 05:51:33,397 INFO L87 Difference]: Start difference. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 05:51:33,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:33,407 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 05:51:33,407 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 05:51:33,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:33,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:33,408 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:33,408 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:33,408 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:33,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 551 transitions. [2022-04-28 05:51:33,420 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 551 transitions. Word has length 58 [2022-04-28 05:51:33,420 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:33,420 INFO L495 AbstractCegarLoop]: Abstraction has 377 states and 551 transitions. [2022-04-28 05:51:33,420 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:33,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 377 states and 551 transitions. [2022-04-28 05:51:34,048 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 551 edges. 551 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:34,048 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 551 transitions. [2022-04-28 05:51:34,049 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 05:51:34,049 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:34,049 INFO L195 NwaCegarLoop]: trace histogram [5, 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, 1, 1, 1, 1, 1] [2022-04-28 05:51:34,065 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:34,249 WARN L477 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-28 05:51:34,250 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:34,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:34,250 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 1 times [2022-04-28 05:51:34,250 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:34,250 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1035658737] [2022-04-28 05:51:34,250 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:34,250 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 2 times [2022-04-28 05:51:34,251 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:34,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [362286654] [2022-04-28 05:51:34,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:34,251 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:34,261 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:34,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1251390925] [2022-04-28 05:51:34,261 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:34,261 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:34,261 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:34,262 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-28 05:51:34,263 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-28 05:51:34,315 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:34,315 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:34,316 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:51:34,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:34,332 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:34,590 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 05:51:34,591 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,591 INFO L290 TraceCheckUtils]: 2: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,591 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21085#(<= ~counter~0 0)} {21077#true} #108#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,592 INFO L272 TraceCheckUtils]: 4: Hoare triple {21085#(<= ~counter~0 0)} call #t~ret9 := main(); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,592 INFO L290 TraceCheckUtils]: 5: Hoare triple {21085#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,592 INFO L272 TraceCheckUtils]: 6: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,593 INFO L290 TraceCheckUtils]: 7: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,593 INFO L290 TraceCheckUtils]: 9: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,594 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #94#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,594 INFO L272 TraceCheckUtils]: 11: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,594 INFO L290 TraceCheckUtils]: 12: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,594 INFO L290 TraceCheckUtils]: 13: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,595 INFO L290 TraceCheckUtils]: 14: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,595 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #96#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,595 INFO L290 TraceCheckUtils]: 16: Hoare triple {21085#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:34,596 INFO L290 TraceCheckUtils]: 17: Hoare triple {21085#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:34,596 INFO L290 TraceCheckUtils]: 18: Hoare triple {21134#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:34,597 INFO L290 TraceCheckUtils]: 19: Hoare triple {21134#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:34,597 INFO L290 TraceCheckUtils]: 20: Hoare triple {21134#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:34,597 INFO L290 TraceCheckUtils]: 21: Hoare triple {21144#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:34,598 INFO L290 TraceCheckUtils]: 22: Hoare triple {21144#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:34,598 INFO L290 TraceCheckUtils]: 23: Hoare triple {21144#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:34,598 INFO L290 TraceCheckUtils]: 24: Hoare triple {21144#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:34,599 INFO L290 TraceCheckUtils]: 25: Hoare triple {21157#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:34,599 INFO L290 TraceCheckUtils]: 26: Hoare triple {21157#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:34,599 INFO L290 TraceCheckUtils]: 27: Hoare triple {21157#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:34,600 INFO L290 TraceCheckUtils]: 28: Hoare triple {21167#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:34,600 INFO L290 TraceCheckUtils]: 29: Hoare triple {21167#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:34,600 INFO L290 TraceCheckUtils]: 30: Hoare triple {21167#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,601 INFO L290 TraceCheckUtils]: 31: Hoare triple {21177#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,601 INFO L272 TraceCheckUtils]: 32: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,601 INFO L290 TraceCheckUtils]: 33: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,602 INFO L290 TraceCheckUtils]: 34: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,602 INFO L290 TraceCheckUtils]: 35: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,602 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #98#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,603 INFO L272 TraceCheckUtils]: 37: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,603 INFO L290 TraceCheckUtils]: 38: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,603 INFO L290 TraceCheckUtils]: 39: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,604 INFO L290 TraceCheckUtils]: 40: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,604 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #100#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,605 INFO L272 TraceCheckUtils]: 42: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,605 INFO L290 TraceCheckUtils]: 43: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,605 INFO L290 TraceCheckUtils]: 44: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,606 INFO L290 TraceCheckUtils]: 45: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,606 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #102#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,607 INFO L272 TraceCheckUtils]: 47: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,607 INFO L290 TraceCheckUtils]: 48: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,608 INFO L290 TraceCheckUtils]: 49: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,608 INFO L290 TraceCheckUtils]: 50: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,608 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #104#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,609 INFO L290 TraceCheckUtils]: 52: Hoare triple {21177#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,609 INFO L290 TraceCheckUtils]: 53: Hoare triple {21177#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:34,609 INFO L290 TraceCheckUtils]: 54: Hoare triple {21177#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21250#(<= |main_#t~post7| 5)} is VALID [2022-04-28 05:51:34,610 INFO L290 TraceCheckUtils]: 55: Hoare triple {21250#(<= |main_#t~post7| 5)} assume !(#t~post7 < 20);havoc #t~post7; {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#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; {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 20);havoc #t~post6; {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#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)); {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 05:51:34,610 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:34,610 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:34,909 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 05:51:34,909 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 05:51:34,909 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 05:51:34,909 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#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)); {21078#false} is VALID [2022-04-28 05:51:34,909 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 20);havoc #t~post6; {21078#false} is VALID [2022-04-28 05:51:34,909 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 05:51:34,909 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#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; {21078#false} is VALID [2022-04-28 05:51:34,909 INFO L290 TraceCheckUtils]: 55: Hoare triple {21296#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {21078#false} is VALID [2022-04-28 05:51:34,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {21300#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21296#(< |main_#t~post7| 20)} is VALID [2022-04-28 05:51:34,910 INFO L290 TraceCheckUtils]: 53: Hoare triple {21300#(< ~counter~0 20)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,910 INFO L290 TraceCheckUtils]: 52: Hoare triple {21300#(< ~counter~0 20)} assume !(~c~0 >= 2 * ~v~0); {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,911 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #104#return; {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,911 INFO L290 TraceCheckUtils]: 50: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:34,911 INFO L290 TraceCheckUtils]: 49: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:34,911 INFO L290 TraceCheckUtils]: 48: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:34,911 INFO L272 TraceCheckUtils]: 47: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:34,912 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #102#return; {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,912 INFO L290 TraceCheckUtils]: 45: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:34,912 INFO L290 TraceCheckUtils]: 44: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:34,912 INFO L290 TraceCheckUtils]: 43: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:34,912 INFO L272 TraceCheckUtils]: 42: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:34,912 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #100#return; {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,912 INFO L290 TraceCheckUtils]: 40: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:34,913 INFO L290 TraceCheckUtils]: 39: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:34,913 INFO L290 TraceCheckUtils]: 38: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:34,913 INFO L272 TraceCheckUtils]: 37: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:34,913 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #98#return; {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,913 INFO L290 TraceCheckUtils]: 35: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:34,913 INFO L290 TraceCheckUtils]: 34: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:34,913 INFO L290 TraceCheckUtils]: 33: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:34,913 INFO L272 TraceCheckUtils]: 32: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:34,914 INFO L290 TraceCheckUtils]: 31: Hoare triple {21300#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,914 INFO L290 TraceCheckUtils]: 30: Hoare triple {21373#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21300#(< ~counter~0 20)} is VALID [2022-04-28 05:51:34,915 INFO L290 TraceCheckUtils]: 29: Hoare triple {21373#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21373#(< ~counter~0 19)} is VALID [2022-04-28 05:51:34,915 INFO L290 TraceCheckUtils]: 28: Hoare triple {21373#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {21373#(< ~counter~0 19)} is VALID [2022-04-28 05:51:34,915 INFO L290 TraceCheckUtils]: 27: Hoare triple {21383#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21373#(< ~counter~0 19)} is VALID [2022-04-28 05:51:34,916 INFO L290 TraceCheckUtils]: 26: Hoare triple {21383#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21383#(< ~counter~0 18)} is VALID [2022-04-28 05:51:34,916 INFO L290 TraceCheckUtils]: 25: Hoare triple {21383#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {21383#(< ~counter~0 18)} is VALID [2022-04-28 05:51:34,916 INFO L290 TraceCheckUtils]: 24: Hoare triple {21393#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21383#(< ~counter~0 18)} is VALID [2022-04-28 05:51:34,917 INFO L290 TraceCheckUtils]: 23: Hoare triple {21393#(< ~counter~0 17)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21393#(< ~counter~0 17)} is VALID [2022-04-28 05:51:34,917 INFO L290 TraceCheckUtils]: 22: Hoare triple {21393#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {21393#(< ~counter~0 17)} is VALID [2022-04-28 05:51:34,917 INFO L290 TraceCheckUtils]: 21: Hoare triple {21393#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {21393#(< ~counter~0 17)} is VALID [2022-04-28 05:51:34,918 INFO L290 TraceCheckUtils]: 20: Hoare triple {21406#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21393#(< ~counter~0 17)} is VALID [2022-04-28 05:51:34,918 INFO L290 TraceCheckUtils]: 19: Hoare triple {21406#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21406#(< ~counter~0 16)} is VALID [2022-04-28 05:51:34,918 INFO L290 TraceCheckUtils]: 18: Hoare triple {21406#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {21406#(< ~counter~0 16)} is VALID [2022-04-28 05:51:34,919 INFO L290 TraceCheckUtils]: 17: Hoare triple {21416#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21406#(< ~counter~0 16)} is VALID [2022-04-28 05:51:34,919 INFO L290 TraceCheckUtils]: 16: Hoare triple {21416#(< ~counter~0 15)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,919 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21077#true} {21416#(< ~counter~0 15)} #96#return; {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,920 INFO L290 TraceCheckUtils]: 14: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:34,920 INFO L290 TraceCheckUtils]: 13: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:34,920 INFO L290 TraceCheckUtils]: 12: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:34,920 INFO L272 TraceCheckUtils]: 11: Hoare triple {21416#(< ~counter~0 15)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:34,920 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21077#true} {21416#(< ~counter~0 15)} #94#return; {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:34,920 INFO L290 TraceCheckUtils]: 8: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:34,920 INFO L290 TraceCheckUtils]: 7: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:34,920 INFO L272 TraceCheckUtils]: 6: Hoare triple {21416#(< ~counter~0 15)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:34,921 INFO L290 TraceCheckUtils]: 5: Hoare triple {21416#(< ~counter~0 15)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,921 INFO L272 TraceCheckUtils]: 4: Hoare triple {21416#(< ~counter~0 15)} call #t~ret9 := main(); {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,921 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21416#(< ~counter~0 15)} {21077#true} #108#return; {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,921 INFO L290 TraceCheckUtils]: 2: Hoare triple {21416#(< ~counter~0 15)} assume true; {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21416#(< ~counter~0 15)} is VALID [2022-04-28 05:51:34,922 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 05:51:34,922 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:34,922 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:34,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [362286654] [2022-04-28 05:51:34,923 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:34,923 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1251390925] [2022-04-28 05:51:34,923 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1251390925] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:34,923 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:34,923 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:51:34,923 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:34,923 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1035658737] [2022-04-28 05:51:34,923 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1035658737] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:34,923 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:34,923 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:51:34,923 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [251389379] [2022-04-28 05:51:34,923 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:34,924 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 05:51:34,924 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:34,924 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:34,959 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-28 05:51:34,959 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:51:34,959 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:34,959 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:51:34,959 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:34,959 INFO L87 Difference]: Start difference. First operand 377 states and 551 transitions. Second operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:36,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:36,105 INFO L93 Difference]: Finished difference Result 604 states and 873 transitions. [2022-04-28 05:51:36,105 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:51:36,105 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 05:51:36,105 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:36,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:36,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 05:51:36,107 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:36,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 05:51:36,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 158 transitions. [2022-04-28 05:51:36,215 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-28 05:51:36,225 INFO L225 Difference]: With dead ends: 604 [2022-04-28 05:51:36,225 INFO L226 Difference]: Without dead ends: 440 [2022-04-28 05:51:36,226 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=206, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:51:36,227 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 57 mSDsluCounter, 181 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:36,227 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 236 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:36,227 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 440 states. [2022-04-28 05:51:37,059 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 440 to 426. [2022-04-28 05:51:37,059 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:37,060 INFO L82 GeneralOperation]: Start isEquivalent. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:37,060 INFO L74 IsIncluded]: Start isIncluded. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:37,061 INFO L87 Difference]: Start difference. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:37,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:37,070 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 05:51:37,070 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 05:51:37,071 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:37,071 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:37,072 INFO L74 IsIncluded]: Start isIncluded. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 05:51:37,072 INFO L87 Difference]: Start difference. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 05:51:37,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:37,081 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 05:51:37,081 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 05:51:37,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:37,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:37,082 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:37,082 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:37,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:37,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 426 states to 426 states and 598 transitions. [2022-04-28 05:51:37,094 INFO L78 Accepts]: Start accepts. Automaton has 426 states and 598 transitions. Word has length 63 [2022-04-28 05:51:37,094 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:37,094 INFO L495 AbstractCegarLoop]: Abstraction has 426 states and 598 transitions. [2022-04-28 05:51:37,094 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:37,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 426 states and 598 transitions. [2022-04-28 05:51:37,764 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 598 edges. 598 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:37,764 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 598 transitions. [2022-04-28 05:51:37,765 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 05:51:37,765 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:37,765 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:37,781 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:37,965 WARN L477 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-28 05:51:37,966 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:37,966 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:37,966 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 3 times [2022-04-28 05:51:37,966 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:37,966 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2119824997] [2022-04-28 05:51:37,966 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:37,967 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 4 times [2022-04-28 05:51:37,967 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:37,967 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1195904812] [2022-04-28 05:51:37,967 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:37,967 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:37,978 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:37,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1211095715] [2022-04-28 05:51:37,978 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:51:37,978 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:37,978 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:37,981 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-28 05:51:37,982 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-28 05:51:38,033 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:51:38,033 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:38,034 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:51:38,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:38,046 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:38,339 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 05:51:38,340 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,340 INFO L290 TraceCheckUtils]: 2: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,341 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24424#(<= ~counter~0 0)} {24416#true} #108#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {24424#(<= ~counter~0 0)} call #t~ret9 := main(); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {24424#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,341 INFO L272 TraceCheckUtils]: 6: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,342 INFO L290 TraceCheckUtils]: 7: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,342 INFO L290 TraceCheckUtils]: 9: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,343 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #94#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,343 INFO L272 TraceCheckUtils]: 11: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,343 INFO L290 TraceCheckUtils]: 12: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,344 INFO L290 TraceCheckUtils]: 14: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,344 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #96#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,344 INFO L290 TraceCheckUtils]: 16: Hoare triple {24424#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:38,345 INFO L290 TraceCheckUtils]: 17: Hoare triple {24424#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:38,345 INFO L290 TraceCheckUtils]: 18: Hoare triple {24473#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:38,345 INFO L290 TraceCheckUtils]: 19: Hoare triple {24473#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:38,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {24473#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:38,346 INFO L290 TraceCheckUtils]: 21: Hoare triple {24483#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:38,346 INFO L290 TraceCheckUtils]: 22: Hoare triple {24483#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:38,347 INFO L290 TraceCheckUtils]: 23: Hoare triple {24483#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:38,347 INFO L290 TraceCheckUtils]: 24: Hoare triple {24483#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:38,347 INFO L290 TraceCheckUtils]: 25: Hoare triple {24496#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:38,348 INFO L290 TraceCheckUtils]: 26: Hoare triple {24496#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:38,348 INFO L290 TraceCheckUtils]: 27: Hoare triple {24496#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:38,348 INFO L290 TraceCheckUtils]: 28: Hoare triple {24506#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:38,349 INFO L290 TraceCheckUtils]: 29: Hoare triple {24506#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:38,349 INFO L290 TraceCheckUtils]: 30: Hoare triple {24506#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,349 INFO L290 TraceCheckUtils]: 31: Hoare triple {24516#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,350 INFO L272 TraceCheckUtils]: 32: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,350 INFO L290 TraceCheckUtils]: 33: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,350 INFO L290 TraceCheckUtils]: 34: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,350 INFO L290 TraceCheckUtils]: 35: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,351 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #98#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,351 INFO L272 TraceCheckUtils]: 37: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,352 INFO L290 TraceCheckUtils]: 38: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,352 INFO L290 TraceCheckUtils]: 39: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,352 INFO L290 TraceCheckUtils]: 40: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,353 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #100#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,353 INFO L272 TraceCheckUtils]: 42: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,353 INFO L290 TraceCheckUtils]: 43: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,353 INFO L290 TraceCheckUtils]: 44: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,354 INFO L290 TraceCheckUtils]: 45: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,354 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #102#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,355 INFO L272 TraceCheckUtils]: 47: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,355 INFO L290 TraceCheckUtils]: 48: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,355 INFO L290 TraceCheckUtils]: 49: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,355 INFO L290 TraceCheckUtils]: 50: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,356 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #104#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,356 INFO L290 TraceCheckUtils]: 52: Hoare triple {24516#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,356 INFO L290 TraceCheckUtils]: 53: Hoare triple {24516#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:38,357 INFO L290 TraceCheckUtils]: 54: Hoare triple {24516#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:38,357 INFO L290 TraceCheckUtils]: 55: Hoare triple {24589#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:38,357 INFO L290 TraceCheckUtils]: 56: Hoare triple {24589#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:38,358 INFO L290 TraceCheckUtils]: 57: Hoare triple {24589#(<= ~counter~0 6)} ~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; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:38,358 INFO L290 TraceCheckUtils]: 58: Hoare triple {24589#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24602#(<= |main_#t~post6| 6)} is VALID [2022-04-28 05:51:38,358 INFO L290 TraceCheckUtils]: 59: Hoare triple {24602#(<= |main_#t~post6| 6)} assume !(#t~post6 < 20);havoc #t~post6; {24417#false} is VALID [2022-04-28 05:51:38,358 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#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)); {24417#false} is VALID [2022-04-28 05:51:38,358 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 05:51:38,358 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 05:51:38,358 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 05:51:38,359 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:38,359 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:38,684 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 05:51:38,684 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 05:51:38,684 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 05:51:38,684 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#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)); {24417#false} is VALID [2022-04-28 05:51:38,685 INFO L290 TraceCheckUtils]: 59: Hoare triple {24630#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {24417#false} is VALID [2022-04-28 05:51:38,685 INFO L290 TraceCheckUtils]: 58: Hoare triple {24634#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24630#(< |main_#t~post6| 20)} is VALID [2022-04-28 05:51:38,685 INFO L290 TraceCheckUtils]: 57: Hoare triple {24634#(< ~counter~0 20)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24634#(< ~counter~0 20)} is VALID [2022-04-28 05:51:38,685 INFO L290 TraceCheckUtils]: 56: Hoare triple {24634#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {24634#(< ~counter~0 20)} is VALID [2022-04-28 05:51:38,686 INFO L290 TraceCheckUtils]: 55: Hoare triple {24634#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {24634#(< ~counter~0 20)} is VALID [2022-04-28 05:51:38,686 INFO L290 TraceCheckUtils]: 54: Hoare triple {24647#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24634#(< ~counter~0 20)} is VALID [2022-04-28 05:51:38,687 INFO L290 TraceCheckUtils]: 53: Hoare triple {24647#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,687 INFO L290 TraceCheckUtils]: 52: Hoare triple {24647#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,687 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #104#return; {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,687 INFO L290 TraceCheckUtils]: 50: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:38,688 INFO L290 TraceCheckUtils]: 49: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:38,688 INFO L290 TraceCheckUtils]: 48: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:38,688 INFO L272 TraceCheckUtils]: 47: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:38,688 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #102#return; {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,688 INFO L290 TraceCheckUtils]: 45: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:38,688 INFO L290 TraceCheckUtils]: 44: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:38,688 INFO L290 TraceCheckUtils]: 43: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:38,688 INFO L272 TraceCheckUtils]: 42: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:38,689 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #100#return; {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,689 INFO L290 TraceCheckUtils]: 40: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:38,689 INFO L290 TraceCheckUtils]: 39: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:38,689 INFO L290 TraceCheckUtils]: 38: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:38,689 INFO L272 TraceCheckUtils]: 37: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:38,689 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #98#return; {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,690 INFO L290 TraceCheckUtils]: 35: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:38,690 INFO L290 TraceCheckUtils]: 34: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:38,690 INFO L290 TraceCheckUtils]: 33: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:38,690 INFO L272 TraceCheckUtils]: 32: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:38,690 INFO L290 TraceCheckUtils]: 31: Hoare triple {24647#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,691 INFO L290 TraceCheckUtils]: 30: Hoare triple {24720#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24647#(< ~counter~0 19)} is VALID [2022-04-28 05:51:38,691 INFO L290 TraceCheckUtils]: 29: Hoare triple {24720#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24720#(< ~counter~0 18)} is VALID [2022-04-28 05:51:38,691 INFO L290 TraceCheckUtils]: 28: Hoare triple {24720#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {24720#(< ~counter~0 18)} is VALID [2022-04-28 05:51:38,692 INFO L290 TraceCheckUtils]: 27: Hoare triple {24730#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24720#(< ~counter~0 18)} is VALID [2022-04-28 05:51:38,692 INFO L290 TraceCheckUtils]: 26: Hoare triple {24730#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24730#(< ~counter~0 17)} is VALID [2022-04-28 05:51:38,692 INFO L290 TraceCheckUtils]: 25: Hoare triple {24730#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {24730#(< ~counter~0 17)} is VALID [2022-04-28 05:51:38,692 INFO L290 TraceCheckUtils]: 24: Hoare triple {24740#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24730#(< ~counter~0 17)} is VALID [2022-04-28 05:51:38,693 INFO L290 TraceCheckUtils]: 23: Hoare triple {24740#(< ~counter~0 16)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24740#(< ~counter~0 16)} is VALID [2022-04-28 05:51:38,693 INFO L290 TraceCheckUtils]: 22: Hoare triple {24740#(< ~counter~0 16)} assume !(~c~0 >= ~b~0); {24740#(< ~counter~0 16)} is VALID [2022-04-28 05:51:38,693 INFO L290 TraceCheckUtils]: 21: Hoare triple {24740#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {24740#(< ~counter~0 16)} is VALID [2022-04-28 05:51:38,694 INFO L290 TraceCheckUtils]: 20: Hoare triple {24753#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24740#(< ~counter~0 16)} is VALID [2022-04-28 05:51:38,694 INFO L290 TraceCheckUtils]: 19: Hoare triple {24753#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24753#(< ~counter~0 15)} is VALID [2022-04-28 05:51:38,694 INFO L290 TraceCheckUtils]: 18: Hoare triple {24753#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {24753#(< ~counter~0 15)} is VALID [2022-04-28 05:51:38,695 INFO L290 TraceCheckUtils]: 17: Hoare triple {24763#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24753#(< ~counter~0 15)} is VALID [2022-04-28 05:51:38,695 INFO L290 TraceCheckUtils]: 16: Hoare triple {24763#(< ~counter~0 14)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,695 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24416#true} {24763#(< ~counter~0 14)} #96#return; {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,695 INFO L290 TraceCheckUtils]: 14: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:38,695 INFO L290 TraceCheckUtils]: 13: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:38,695 INFO L290 TraceCheckUtils]: 12: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:38,695 INFO L272 TraceCheckUtils]: 11: Hoare triple {24763#(< ~counter~0 14)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:38,696 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24416#true} {24763#(< ~counter~0 14)} #94#return; {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,696 INFO L290 TraceCheckUtils]: 9: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:38,696 INFO L290 TraceCheckUtils]: 8: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:38,696 INFO L290 TraceCheckUtils]: 7: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:38,696 INFO L272 TraceCheckUtils]: 6: Hoare triple {24763#(< ~counter~0 14)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:38,696 INFO L290 TraceCheckUtils]: 5: Hoare triple {24763#(< ~counter~0 14)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,697 INFO L272 TraceCheckUtils]: 4: Hoare triple {24763#(< ~counter~0 14)} call #t~ret9 := main(); {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,697 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24763#(< ~counter~0 14)} {24416#true} #108#return; {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,697 INFO L290 TraceCheckUtils]: 2: Hoare triple {24763#(< ~counter~0 14)} assume true; {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,697 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24763#(< ~counter~0 14)} is VALID [2022-04-28 05:51:38,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 05:51:38,698 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:38,698 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:38,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1195904812] [2022-04-28 05:51:38,698 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:38,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1211095715] [2022-04-28 05:51:38,698 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1211095715] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:38,698 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:38,698 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 05:51:38,699 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:38,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2119824997] [2022-04-28 05:51:38,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2119824997] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:38,699 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:38,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:51:38,699 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1679622302] [2022-04-28 05:51:38,699 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:38,700 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 05:51:38,701 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:38,701 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:38,734 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-28 05:51:38,734 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:51:38,735 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:38,735 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:51:38,735 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:51:38,735 INFO L87 Difference]: Start difference. First operand 426 states and 598 transitions. Second operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:40,155 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:40,155 INFO L93 Difference]: Finished difference Result 531 states and 722 transitions. [2022-04-28 05:51:40,156 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:51:40,156 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 05:51:40,156 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:40,156 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:40,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 05:51:40,157 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:40,158 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 05:51:40,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 162 transitions. [2022-04-28 05:51:40,286 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:40,298 INFO L225 Difference]: With dead ends: 531 [2022-04-28 05:51:40,299 INFO L226 Difference]: Without dead ends: 524 [2022-04-28 05:51:40,299 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=188, Invalid=274, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:51:40,300 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 84 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 325 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:40,300 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 325 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:40,300 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 524 states. [2022-04-28 05:51:41,305 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 524 to 503. [2022-04-28 05:51:41,305 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:41,306 INFO L82 GeneralOperation]: Start isEquivalent. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:41,307 INFO L74 IsIncluded]: Start isIncluded. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:41,307 INFO L87 Difference]: Start difference. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:41,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,318 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 05:51:41,318 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 05:51:41,320 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:41,320 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:41,321 INFO L74 IsIncluded]: Start isIncluded. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 05:51:41,321 INFO L87 Difference]: Start difference. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 05:51:41,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,332 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 05:51:41,333 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 05:51:41,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:41,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:41,334 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:41,334 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:41,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:41,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 503 states to 503 states and 691 transitions. [2022-04-28 05:51:41,348 INFO L78 Accepts]: Start accepts. Automaton has 503 states and 691 transitions. Word has length 64 [2022-04-28 05:51:41,348 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:41,348 INFO L495 AbstractCegarLoop]: Abstraction has 503 states and 691 transitions. [2022-04-28 05:51:41,349 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:41,349 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 503 states and 691 transitions. [2022-04-28 05:51:42,176 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 691 edges. 691 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:42,177 INFO L276 IsEmpty]: Start isEmpty. Operand 503 states and 691 transitions. [2022-04-28 05:51:42,177 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-28 05:51:42,177 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:42,177 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 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] [2022-04-28 05:51:42,197 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:42,378 WARN L477 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-28 05:51:42,378 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:42,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:42,378 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-28 05:51:42,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:42,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1865160512] [2022-04-28 05:51:42,378 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:42,379 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 2 times [2022-04-28 05:51:42,379 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:42,379 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [758390962] [2022-04-28 05:51:42,379 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:42,379 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:42,392 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:42,392 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1244066725] [2022-04-28 05:51:42,392 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:42,392 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:42,392 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:42,393 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-28 05:51:42,394 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-28 05:51:42,434 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:42,435 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:42,435 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-28 05:51:42,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:42,446 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:42,751 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 05:51:42,752 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,754 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:42,754 INFO L290 TraceCheckUtils]: 13: Hoare triple {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:42,754 INFO L290 TraceCheckUtils]: 14: Hoare triple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:42,755 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} {27941#true} #96#return; {27993#(<= 1 main_~y~0)} is VALID [2022-04-28 05:51:42,755 INFO L290 TraceCheckUtils]: 16: Hoare triple {27993#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:42,755 INFO L290 TraceCheckUtils]: 17: Hoare triple {27997#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:42,756 INFO L290 TraceCheckUtils]: 18: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:42,756 INFO L290 TraceCheckUtils]: 19: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:42,756 INFO L290 TraceCheckUtils]: 20: Hoare triple {27997#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:42,756 INFO L290 TraceCheckUtils]: 21: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post7 < 20);havoc #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:42,757 INFO L290 TraceCheckUtils]: 22: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,757 INFO L290 TraceCheckUtils]: 23: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,758 INFO L290 TraceCheckUtils]: 24: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,758 INFO L272 TraceCheckUtils]: 25: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,758 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,758 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,758 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,759 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,759 INFO L272 TraceCheckUtils]: 30: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,759 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,759 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,759 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,759 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,759 INFO L272 TraceCheckUtils]: 35: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,760 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,760 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,760 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,760 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,760 INFO L272 TraceCheckUtils]: 40: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,760 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,760 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,760 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,761 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,761 INFO L290 TraceCheckUtils]: 45: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,762 INFO L290 TraceCheckUtils]: 46: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,762 INFO L290 TraceCheckUtils]: 47: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,762 INFO L272 TraceCheckUtils]: 48: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,762 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,762 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,763 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,763 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,763 INFO L272 TraceCheckUtils]: 53: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,763 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,763 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,763 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,764 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,764 INFO L272 TraceCheckUtils]: 58: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:42,764 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:42,764 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:42,764 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:42,765 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:42,765 INFO L272 TraceCheckUtils]: 63: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:42,766 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:42,766 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 05:51:42,766 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 05:51:42,766 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 17 proven. 6 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-28 05:51:42,766 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:43,009 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 05:51:43,010 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 05:51:43,010 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:43,010 INFO L272 TraceCheckUtils]: 63: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:43,011 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,011 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,011 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,011 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,011 INFO L272 TraceCheckUtils]: 58: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 05:51:43,012 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,012 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,012 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,012 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,012 INFO L272 TraceCheckUtils]: 53: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 05:51:43,013 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,013 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,013 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,013 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,013 INFO L272 TraceCheckUtils]: 48: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 05:51:43,013 INFO L290 TraceCheckUtils]: 47: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,014 INFO L290 TraceCheckUtils]: 46: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,016 INFO L290 TraceCheckUtils]: 45: Hoare triple {28161#(= 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; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,016 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,016 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,016 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,016 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,016 INFO L272 TraceCheckUtils]: 40: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:43,017 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,017 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,017 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,017 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,017 INFO L272 TraceCheckUtils]: 35: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 05:51:43,018 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,018 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,018 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,018 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,018 INFO L272 TraceCheckUtils]: 30: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 05:51:43,019 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,019 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,032 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,032 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,032 INFO L272 TraceCheckUtils]: 25: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 05:51:43,033 INFO L290 TraceCheckUtils]: 24: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,035 INFO L290 TraceCheckUtils]: 23: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 22: Hoare triple {27941#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 21: Hoare triple {27941#true} assume !!(#t~post7 < 20);havoc #t~post7; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {27941#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 19: Hoare triple {27941#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 18: Hoare triple {27941#true} assume !!(#t~post6 < 20);havoc #t~post6; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 17: Hoare triple {27941#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 16: Hoare triple {27941#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27941#true} {27941#true} #96#return; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 14: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 13: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:43,036 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 05:51:43,037 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2022-04-28 05:51:43,038 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:43,038 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [758390962] [2022-04-28 05:51:43,038 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:43,038 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1244066725] [2022-04-28 05:51:43,038 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1244066725] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:51:43,038 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:51:43,038 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 05:51:43,038 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:43,038 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1865160512] [2022-04-28 05:51:43,038 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1865160512] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:43,038 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:43,038 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:43,038 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [722178612] [2022-04-28 05:51:43,038 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:43,039 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (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 67 [2022-04-28 05:51:43,039 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:43,039 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (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-28 05:51:43,069 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-28 05:51:43,069 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:43,069 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:43,069 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:43,069 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:51:43,070 INFO L87 Difference]: Start difference. First operand 503 states and 691 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (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-28 05:51:44,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:44,194 INFO L93 Difference]: Finished difference Result 517 states and 704 transitions. [2022-04-28 05:51:44,194 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:44,194 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (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 67 [2022-04-28 05:51:44,195 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:44,195 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (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-28 05:51:44,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 05:51:44,195 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (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-28 05:51:44,196 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 05:51:44,196 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-28 05:51:44,250 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:44,262 INFO L225 Difference]: With dead ends: 517 [2022-04-28 05:51:44,262 INFO L226 Difference]: Without dead ends: 515 [2022-04-28 05:51:44,263 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 122 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:51:44,263 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 12 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 144 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-28 05:51:44,263 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 144 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:44,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 515 states. [2022-04-28 05:51:45,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 515 to 511. [2022-04-28 05:51:45,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:45,269 INFO L82 GeneralOperation]: Start isEquivalent. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:45,269 INFO L74 IsIncluded]: Start isIncluded. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:45,270 INFO L87 Difference]: Start difference. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:45,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:45,281 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 05:51:45,281 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 05:51:45,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:45,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:45,283 INFO L74 IsIncluded]: Start isIncluded. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 05:51:45,283 INFO L87 Difference]: Start difference. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 05:51:45,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:45,295 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 05:51:45,295 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 05:51:45,296 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:45,296 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:45,296 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:45,296 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:45,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:45,319 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 511 states to 511 states and 695 transitions. [2022-04-28 05:51:45,320 INFO L78 Accepts]: Start accepts. Automaton has 511 states and 695 transitions. Word has length 67 [2022-04-28 05:51:45,320 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:45,320 INFO L495 AbstractCegarLoop]: Abstraction has 511 states and 695 transitions. [2022-04-28 05:51:45,320 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (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-28 05:51:45,320 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 511 states and 695 transitions. [2022-04-28 05:51:46,282 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 695 edges. 695 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:46,283 INFO L276 IsEmpty]: Start isEmpty. Operand 511 states and 695 transitions. [2022-04-28 05:51:46,299 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 05:51:46,299 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:46,299 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:46,317 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-28 05:51:46,499 WARN L477 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-28 05:51:46,500 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:46,500 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:46,500 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 3 times [2022-04-28 05:51:46,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:46,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1008612152] [2022-04-28 05:51:46,500 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:46,500 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 4 times [2022-04-28 05:51:46,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:46,501 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1542771840] [2022-04-28 05:51:46,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:46,501 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:46,518 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:46,518 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [754958880] [2022-04-28 05:51:46,518 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:51:46,518 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:46,518 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:46,526 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-28 05:51:46,528 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-28 05:51:46,570 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:51:46,570 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:46,571 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:51:46,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:46,583 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:46,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 05:51:46,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {31441#true} is VALID [2022-04-28 05:51:46,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:46,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 05:51:46,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 05:51:46,801 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-28 05:51:46,811 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:46,811 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 20);havoc #t~post6; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 05:51:46,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 20);havoc #t~post7; {31441#true} is VALID [2022-04-28 05:51:46,813 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:51:46,813 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(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; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:46,814 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:46,814 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:46,814 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:46,815 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:46,815 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:46,815 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,815 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,816 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 20);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,816 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:46,816 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:46,816 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:46,816 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:46,823 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,824 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:46,824 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:46,824 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:46,824 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:46,824 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,824 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:46,825 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:46,825 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:46,825 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:46,825 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,825 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:46,825 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:46,825 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:46,825 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:46,826 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,826 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:46,827 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:46,827 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:46,827 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:46,828 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:46,828 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 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; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:46,828 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:46,828 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:46,829 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 05:51:46,829 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#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)); {31442#false} is VALID [2022-04-28 05:51:46,829 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 05:51:46,829 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 05:51:46,829 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 05:51:46,829 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:46,829 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:47,031 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 05:51:47,031 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 05:51:47,031 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 05:51:47,032 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#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)); {31442#false} is VALID [2022-04-28 05:51:47,032 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 05:51:47,032 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:47,032 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:47,033 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 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; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:47,033 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:47,033 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:47,034 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:47,034 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:47,034 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,035 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,035 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:47,035 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:47,035 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:47,035 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:47,036 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,036 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:47,036 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:47,036 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:47,036 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:47,036 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,036 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:47,037 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:47,037 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:47,037 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:47,037 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,037 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:47,037 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:47,037 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:47,037 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:47,038 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 20);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,038 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,038 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:47,039 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:47,039 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:47,039 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:47,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:47,040 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:47,040 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(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; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:47,040 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:51:47,040 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 20);havoc #t~post7; {31441#true} is VALID [2022-04-28 05:51:47,040 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 05:51:47,040 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 20);havoc #t~post6; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-28 05:51:47,041 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 05:51:47,042 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 05:51:47,042 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:47,042 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {31441#true} is VALID [2022-04-28 05:51:47,042 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 05:51:47,042 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:47,042 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:47,042 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1542771840] [2022-04-28 05:51:47,042 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:47,042 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [754958880] [2022-04-28 05:51:47,042 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [754958880] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:47,042 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:47,042 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 05:51:47,043 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:47,043 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1008612152] [2022-04-28 05:51:47,043 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1008612152] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:47,043 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:47,043 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:47,043 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [34931058] [2022-04-28 05:51:47,043 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:47,044 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 05:51:47,044 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:47,044 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:47,081 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-28 05:51:47,081 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:47,081 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:47,082 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:47,082 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:51:47,082 INFO L87 Difference]: Start difference. First operand 511 states and 695 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:50,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:50,352 INFO L93 Difference]: Finished difference Result 857 states and 1271 transitions. [2022-04-28 05:51:50,352 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:51:50,352 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 05:51:50,353 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:50,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:50,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 05:51:50,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:50,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 05:51:50,357 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 227 transitions. [2022-04-28 05:51:50,538 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 227 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:50,571 INFO L225 Difference]: With dead ends: 857 [2022-04-28 05:51:50,571 INFO L226 Difference]: Without dead ends: 850 [2022-04-28 05:51:50,572 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 65 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=107, Invalid=313, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:51:50,572 INFO L413 NwaCegarLoop]: 120 mSDtfsCounter, 81 mSDsluCounter, 334 mSDsCounter, 0 mSdLazyCounter, 401 mSolverCounterSat, 91 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 454 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 91 IncrementalHoareTripleChecker+Valid, 401 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:50,572 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 454 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [91 Valid, 401 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 05:51:50,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 850 states. [2022-04-28 05:51:51,740 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 850 to 567. [2022-04-28 05:51:51,740 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:51,741 INFO L82 GeneralOperation]: Start isEquivalent. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:51,742 INFO L74 IsIncluded]: Start isIncluded. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:51,742 INFO L87 Difference]: Start difference. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:51,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:51,790 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 05:51:51,790 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 05:51:51,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:51,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:51,793 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 05:51:51,793 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 05:51:51,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:51,826 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 05:51:51,826 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 05:51:51,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:51,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:51,828 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:51,828 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:51,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:51,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 783 transitions. [2022-04-28 05:51:51,846 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 783 transitions. Word has length 65 [2022-04-28 05:51:51,846 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:51,846 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 783 transitions. [2022-04-28 05:51:51,847 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:51,847 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 783 transitions. [2022-04-28 05:51:52,939 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 783 edges. 783 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:52,939 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 783 transitions. [2022-04-28 05:51:52,940 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 05:51:52,940 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:52,940 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:52,963 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:53,140 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-28 05:51:53,140 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:53,141 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:53,141 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 1 times [2022-04-28 05:51:53,141 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:53,141 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1663653097] [2022-04-28 05:51:53,141 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:53,141 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 2 times [2022-04-28 05:51:53,141 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:53,141 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1279625758] [2022-04-28 05:51:53,141 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:53,142 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:53,151 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:53,151 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1635961879] [2022-04-28 05:51:53,151 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:53,152 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:53,152 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:53,152 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:53,153 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-28 05:51:53,198 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:53,199 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:53,199 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:51:53,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:53,212 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:53,472 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 05:51:53,473 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,473 INFO L290 TraceCheckUtils]: 2: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,474 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36426#(<= ~counter~0 0)} {36418#true} #108#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,474 INFO L272 TraceCheckUtils]: 4: Hoare triple {36426#(<= ~counter~0 0)} call #t~ret9 := main(); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,474 INFO L290 TraceCheckUtils]: 5: Hoare triple {36426#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,475 INFO L272 TraceCheckUtils]: 6: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,475 INFO L290 TraceCheckUtils]: 7: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,475 INFO L290 TraceCheckUtils]: 8: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,475 INFO L290 TraceCheckUtils]: 9: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,476 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #94#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,476 INFO L272 TraceCheckUtils]: 11: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,476 INFO L290 TraceCheckUtils]: 12: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,477 INFO L290 TraceCheckUtils]: 13: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,477 INFO L290 TraceCheckUtils]: 14: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,477 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #96#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,477 INFO L290 TraceCheckUtils]: 16: Hoare triple {36426#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:53,478 INFO L290 TraceCheckUtils]: 17: Hoare triple {36426#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:53,479 INFO L290 TraceCheckUtils]: 18: Hoare triple {36475#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:53,479 INFO L290 TraceCheckUtils]: 19: Hoare triple {36475#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:53,479 INFO L290 TraceCheckUtils]: 20: Hoare triple {36475#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:53,480 INFO L290 TraceCheckUtils]: 21: Hoare triple {36485#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:53,480 INFO L290 TraceCheckUtils]: 22: Hoare triple {36485#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:53,480 INFO L290 TraceCheckUtils]: 23: Hoare triple {36485#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:53,481 INFO L290 TraceCheckUtils]: 24: Hoare triple {36485#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:53,481 INFO L290 TraceCheckUtils]: 25: Hoare triple {36498#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:53,481 INFO L290 TraceCheckUtils]: 26: Hoare triple {36498#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:53,482 INFO L290 TraceCheckUtils]: 27: Hoare triple {36498#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:53,482 INFO L290 TraceCheckUtils]: 28: Hoare triple {36508#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:53,482 INFO L290 TraceCheckUtils]: 29: Hoare triple {36508#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:53,483 INFO L290 TraceCheckUtils]: 30: Hoare triple {36508#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,483 INFO L290 TraceCheckUtils]: 31: Hoare triple {36518#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,484 INFO L272 TraceCheckUtils]: 32: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,484 INFO L290 TraceCheckUtils]: 33: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,484 INFO L290 TraceCheckUtils]: 34: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,484 INFO L290 TraceCheckUtils]: 35: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,485 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #98#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,485 INFO L272 TraceCheckUtils]: 37: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,486 INFO L290 TraceCheckUtils]: 38: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,486 INFO L290 TraceCheckUtils]: 39: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,486 INFO L290 TraceCheckUtils]: 40: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,487 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #100#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,487 INFO L272 TraceCheckUtils]: 42: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,487 INFO L290 TraceCheckUtils]: 43: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,488 INFO L290 TraceCheckUtils]: 45: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,488 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #102#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,489 INFO L272 TraceCheckUtils]: 47: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,489 INFO L290 TraceCheckUtils]: 48: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,489 INFO L290 TraceCheckUtils]: 49: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,490 INFO L290 TraceCheckUtils]: 50: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,490 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #104#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,490 INFO L290 TraceCheckUtils]: 52: Hoare triple {36518#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 53: Hoare triple {36518#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36588#(<= |main_#t~post8| 5)} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 54: Hoare triple {36588#(<= |main_#t~post8| 5)} assume !(#t~post8 < 20);havoc #t~post8; {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 20);havoc #t~post7; {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#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; {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 20);havoc #t~post6; {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#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)); {36419#false} is VALID [2022-04-28 05:51:53,491 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 05:51:53,492 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 05:51:53,492 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 05:51:53,492 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:53,492 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:53,781 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#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)); {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 20);havoc #t~post6; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#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; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 20);havoc #t~post7; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 05:51:53,782 INFO L290 TraceCheckUtils]: 54: Hoare triple {36652#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {36419#false} is VALID [2022-04-28 05:51:53,783 INFO L290 TraceCheckUtils]: 53: Hoare triple {36656#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36652#(< |main_#t~post8| 20)} is VALID [2022-04-28 05:51:53,783 INFO L290 TraceCheckUtils]: 52: Hoare triple {36656#(< ~counter~0 20)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36656#(< ~counter~0 20)} is VALID [2022-04-28 05:51:53,784 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #104#return; {36656#(< ~counter~0 20)} is VALID [2022-04-28 05:51:53,784 INFO L290 TraceCheckUtils]: 50: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:53,784 INFO L290 TraceCheckUtils]: 49: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:53,784 INFO L290 TraceCheckUtils]: 48: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:53,784 INFO L272 TraceCheckUtils]: 47: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:53,784 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #102#return; {36656#(< ~counter~0 20)} is VALID [2022-04-28 05:51:53,784 INFO L290 TraceCheckUtils]: 45: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:53,785 INFO L290 TraceCheckUtils]: 44: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:53,785 INFO L290 TraceCheckUtils]: 43: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:53,785 INFO L272 TraceCheckUtils]: 42: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:53,785 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #100#return; {36656#(< ~counter~0 20)} is VALID [2022-04-28 05:51:53,785 INFO L290 TraceCheckUtils]: 40: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:53,785 INFO L290 TraceCheckUtils]: 39: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:53,785 INFO L290 TraceCheckUtils]: 38: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:53,785 INFO L272 TraceCheckUtils]: 37: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:53,786 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #98#return; {36656#(< ~counter~0 20)} is VALID [2022-04-28 05:51:53,786 INFO L290 TraceCheckUtils]: 35: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:53,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:53,786 INFO L290 TraceCheckUtils]: 33: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:53,786 INFO L272 TraceCheckUtils]: 32: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:53,787 INFO L290 TraceCheckUtils]: 31: Hoare triple {36656#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {36656#(< ~counter~0 20)} is VALID [2022-04-28 05:51:53,787 INFO L290 TraceCheckUtils]: 30: Hoare triple {36726#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36656#(< ~counter~0 20)} is VALID [2022-04-28 05:51:53,788 INFO L290 TraceCheckUtils]: 29: Hoare triple {36726#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36726#(< ~counter~0 19)} is VALID [2022-04-28 05:51:53,788 INFO L290 TraceCheckUtils]: 28: Hoare triple {36726#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {36726#(< ~counter~0 19)} is VALID [2022-04-28 05:51:53,789 INFO L290 TraceCheckUtils]: 27: Hoare triple {36736#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36726#(< ~counter~0 19)} is VALID [2022-04-28 05:51:53,789 INFO L290 TraceCheckUtils]: 26: Hoare triple {36736#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36736#(< ~counter~0 18)} is VALID [2022-04-28 05:51:53,789 INFO L290 TraceCheckUtils]: 25: Hoare triple {36736#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {36736#(< ~counter~0 18)} is VALID [2022-04-28 05:51:53,790 INFO L290 TraceCheckUtils]: 24: Hoare triple {36746#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36736#(< ~counter~0 18)} is VALID [2022-04-28 05:51:53,790 INFO L290 TraceCheckUtils]: 23: Hoare triple {36746#(< ~counter~0 17)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36746#(< ~counter~0 17)} is VALID [2022-04-28 05:51:53,790 INFO L290 TraceCheckUtils]: 22: Hoare triple {36746#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {36746#(< ~counter~0 17)} is VALID [2022-04-28 05:51:53,790 INFO L290 TraceCheckUtils]: 21: Hoare triple {36746#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {36746#(< ~counter~0 17)} is VALID [2022-04-28 05:51:53,791 INFO L290 TraceCheckUtils]: 20: Hoare triple {36759#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36746#(< ~counter~0 17)} is VALID [2022-04-28 05:51:53,791 INFO L290 TraceCheckUtils]: 19: Hoare triple {36759#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36759#(< ~counter~0 16)} is VALID [2022-04-28 05:51:53,792 INFO L290 TraceCheckUtils]: 18: Hoare triple {36759#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {36759#(< ~counter~0 16)} is VALID [2022-04-28 05:51:53,792 INFO L290 TraceCheckUtils]: 17: Hoare triple {36769#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36759#(< ~counter~0 16)} is VALID [2022-04-28 05:51:53,792 INFO L290 TraceCheckUtils]: 16: Hoare triple {36769#(< ~counter~0 15)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,793 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36418#true} {36769#(< ~counter~0 15)} #96#return; {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,793 INFO L290 TraceCheckUtils]: 14: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:53,793 INFO L290 TraceCheckUtils]: 13: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:53,793 INFO L290 TraceCheckUtils]: 12: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:53,793 INFO L272 TraceCheckUtils]: 11: Hoare triple {36769#(< ~counter~0 15)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:53,793 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36418#true} {36769#(< ~counter~0 15)} #94#return; {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,793 INFO L290 TraceCheckUtils]: 9: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:53,794 INFO L290 TraceCheckUtils]: 8: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:53,794 INFO L290 TraceCheckUtils]: 7: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:53,794 INFO L272 TraceCheckUtils]: 6: Hoare triple {36769#(< ~counter~0 15)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:53,794 INFO L290 TraceCheckUtils]: 5: Hoare triple {36769#(< ~counter~0 15)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,794 INFO L272 TraceCheckUtils]: 4: Hoare triple {36769#(< ~counter~0 15)} call #t~ret9 := main(); {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,795 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36769#(< ~counter~0 15)} {36418#true} #108#return; {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,795 INFO L290 TraceCheckUtils]: 2: Hoare triple {36769#(< ~counter~0 15)} assume true; {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,795 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {36769#(< ~counter~0 15)} is VALID [2022-04-28 05:51:53,795 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 05:51:53,796 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:53,796 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:53,796 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1279625758] [2022-04-28 05:51:53,796 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:53,796 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1635961879] [2022-04-28 05:51:53,796 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1635961879] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:53,796 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:53,796 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:51:53,796 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:53,796 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1663653097] [2022-04-28 05:51:53,796 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1663653097] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:53,796 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:53,797 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:51:53,797 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [289046671] [2022-04-28 05:51:53,797 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:53,797 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 05:51:53,797 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:53,797 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:53,837 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-28 05:51:53,838 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:51:53,838 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:53,838 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:51:53,838 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:53,838 INFO L87 Difference]: Start difference. First operand 567 states and 783 transitions. Second operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:55,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:55,320 INFO L93 Difference]: Finished difference Result 839 states and 1203 transitions. [2022-04-28 05:51:55,320 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:51:55,320 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 05:51:55,320 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:55,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:55,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 05:51:55,321 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:55,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 05:51:55,322 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 153 transitions. [2022-04-28 05:51:55,430 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:55,445 INFO L225 Difference]: With dead ends: 839 [2022-04-28 05:51:55,445 INFO L226 Difference]: Without dead ends: 567 [2022-04-28 05:51:55,446 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=135, Invalid=207, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:51:55,446 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 77 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:55,446 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 203 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:55,447 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 567 states. [2022-04-28 05:51:56,639 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 567 to 567. [2022-04-28 05:51:56,639 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:56,640 INFO L82 GeneralOperation]: Start isEquivalent. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:56,640 INFO L74 IsIncluded]: Start isIncluded. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:56,641 INFO L87 Difference]: Start difference. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:56,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:56,653 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 05:51:56,653 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:51:56,654 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:56,654 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:56,654 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 05:51:56,654 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 05:51:56,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:56,667 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 05:51:56,667 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:51:56,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:56,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:56,668 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:56,668 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:56,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:56,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 779 transitions. [2022-04-28 05:51:56,684 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 779 transitions. Word has length 65 [2022-04-28 05:51:56,684 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:56,684 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 779 transitions. [2022-04-28 05:51:56,684 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:56,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 779 transitions. [2022-04-28 05:51:57,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:57,727 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:51:57,727 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:51:57,728 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:57,728 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:57,744 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:57,939 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-28 05:51:57,939 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:57,939 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:57,939 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 1 times [2022-04-28 05:51:57,939 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:57,939 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1168024162] [2022-04-28 05:51:57,939 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:57,940 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 2 times [2022-04-28 05:51:57,940 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:57,940 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1596401704] [2022-04-28 05:51:57,940 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:57,940 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:57,955 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:57,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [781297581] [2022-04-28 05:51:57,955 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:57,955 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:57,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:57,965 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:51:57,965 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-28 05:51:58,020 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:58,020 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:58,021 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 05:51:58,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:58,034 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:58,199 INFO L272 TraceCheckUtils]: 0: Hoare triple {40775#true} call ULTIMATE.init(); {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L290 TraceCheckUtils]: 1: Hoare triple {40775#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L290 TraceCheckUtils]: 2: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40775#true} {40775#true} #108#return; {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L272 TraceCheckUtils]: 4: Hoare triple {40775#true} call #t~ret9 := main(); {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L290 TraceCheckUtils]: 5: Hoare triple {40775#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L272 TraceCheckUtils]: 6: Hoare triple {40775#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L290 TraceCheckUtils]: 7: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L290 TraceCheckUtils]: 8: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:58,199 INFO L290 TraceCheckUtils]: 9: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40775#true} {40775#true} #94#return; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L272 TraceCheckUtils]: 11: Hoare triple {40775#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 12: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 13: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 14: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {40775#true} {40775#true} #96#return; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 16: Hoare triple {40775#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 17: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 18: Hoare triple {40775#true} assume !!(#t~post6 < 20);havoc #t~post6; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 19: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 20: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 21: Hoare triple {40775#true} assume !!(#t~post7 < 20);havoc #t~post7; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 22: Hoare triple {40775#true} assume !(~c~0 >= ~b~0); {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 23: Hoare triple {40775#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; {40775#true} is VALID [2022-04-28 05:51:58,200 INFO L290 TraceCheckUtils]: 24: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 05:51:58,201 INFO L290 TraceCheckUtils]: 25: Hoare triple {40775#true} assume !!(#t~post6 < 20);havoc #t~post6; {40775#true} is VALID [2022-04-28 05:51:58,201 INFO L290 TraceCheckUtils]: 26: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 05:51:58,201 INFO L290 TraceCheckUtils]: 27: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 05:51:58,201 INFO L290 TraceCheckUtils]: 28: Hoare triple {40775#true} assume !!(#t~post7 < 20);havoc #t~post7; {40775#true} is VALID [2022-04-28 05:51:58,201 INFO L290 TraceCheckUtils]: 29: Hoare triple {40775#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:58,201 INFO L290 TraceCheckUtils]: 30: Hoare triple {40867#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:58,202 INFO L290 TraceCheckUtils]: 31: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 20);havoc #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:58,202 INFO L272 TraceCheckUtils]: 32: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:58,202 INFO L290 TraceCheckUtils]: 33: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:58,202 INFO L290 TraceCheckUtils]: 34: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:58,202 INFO L290 TraceCheckUtils]: 35: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:58,202 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #98#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:58,202 INFO L272 TraceCheckUtils]: 37: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:58,203 INFO L290 TraceCheckUtils]: 38: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:58,203 INFO L290 TraceCheckUtils]: 39: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:58,203 INFO L290 TraceCheckUtils]: 40: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:58,203 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #100#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:58,203 INFO L272 TraceCheckUtils]: 42: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:58,203 INFO L290 TraceCheckUtils]: 43: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:58,203 INFO L290 TraceCheckUtils]: 44: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:58,204 INFO L290 TraceCheckUtils]: 45: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:58,204 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #102#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:58,204 INFO L272 TraceCheckUtils]: 47: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:58,204 INFO L290 TraceCheckUtils]: 48: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:58,204 INFO L290 TraceCheckUtils]: 49: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:58,204 INFO L290 TraceCheckUtils]: 50: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:58,205 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #104#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:58,205 INFO L290 TraceCheckUtils]: 52: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {40937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 05:51:58,206 INFO L290 TraceCheckUtils]: 53: Hoare triple {40937#(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; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:51:58,206 INFO L290 TraceCheckUtils]: 54: Hoare triple {40941#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:51:58,206 INFO L290 TraceCheckUtils]: 55: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 20);havoc #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:51:58,206 INFO L290 TraceCheckUtils]: 56: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 57: Hoare triple {40776#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 58: Hoare triple {40776#false} assume !(#t~post8 < 20);havoc #t~post8; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 59: Hoare triple {40776#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 60: Hoare triple {40776#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 61: Hoare triple {40776#false} assume !(#t~post7 < 20);havoc #t~post7; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 62: Hoare triple {40776#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; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 63: Hoare triple {40776#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 64: Hoare triple {40776#false} assume !(#t~post6 < 20);havoc #t~post6; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L272 TraceCheckUtils]: 65: Hoare triple {40776#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)); {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 66: Hoare triple {40776#false} ~cond := #in~cond; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 67: Hoare triple {40776#false} assume 0 == ~cond; {40776#false} is VALID [2022-04-28 05:51:58,207 INFO L290 TraceCheckUtils]: 68: Hoare triple {40776#false} assume !false; {40776#false} is VALID [2022-04-28 05:51:58,208 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2022-04-28 05:51:58,208 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:58,208 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:58,208 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1596401704] [2022-04-28 05:51:58,208 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:58,208 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [781297581] [2022-04-28 05:51:58,208 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [781297581] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:58,208 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:58,208 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:58,208 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:58,208 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1168024162] [2022-04-28 05:51:58,208 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1168024162] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:58,208 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:58,208 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:58,209 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [103640367] [2022-04-28 05:51:58,209 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:58,209 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 05:51:58,209 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:58,209 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:58,257 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-28 05:51:58,257 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:58,257 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:58,257 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:58,257 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:58,257 INFO L87 Difference]: Start difference. First operand 567 states and 779 transitions. Second operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:59,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:59,899 INFO L93 Difference]: Finished difference Result 980 states and 1387 transitions. [2022-04-28 05:51:59,899 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:51:59,899 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 05:51:59,899 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:59,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:59,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 05:51:59,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:59,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 05:51:59,901 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-28 05:51:59,971 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:59,987 INFO L225 Difference]: With dead ends: 980 [2022-04-28 05:51:59,988 INFO L226 Difference]: Without dead ends: 624 [2022-04-28 05:51:59,988 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 66 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-28 05:51:59,989 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 11 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:59,989 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 121 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:59,989 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 624 states. [2022-04-28 05:52:01,332 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 624 to 568. [2022-04-28 05:52:01,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:01,333 INFO L82 GeneralOperation]: Start isEquivalent. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,334 INFO L74 IsIncluded]: Start isIncluded. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,334 INFO L87 Difference]: Start difference. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:01,349 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 05:52:01,349 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 05:52:01,350 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:01,350 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:01,350 INFO L74 IsIncluded]: Start isIncluded. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 05:52:01,351 INFO L87 Difference]: Start difference. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 05:52:01,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:01,364 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 05:52:01,364 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 05:52:01,365 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:01,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:01,365 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:01,365 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:01,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 568 states to 568 states and 779 transitions. [2022-04-28 05:52:01,382 INFO L78 Accepts]: Start accepts. Automaton has 568 states and 779 transitions. Word has length 69 [2022-04-28 05:52:01,382 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:01,382 INFO L495 AbstractCegarLoop]: Abstraction has 568 states and 779 transitions. [2022-04-28 05:52:01,383 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:01,383 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 568 states and 779 transitions. [2022-04-28 05:52:02,551 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:02,551 INFO L276 IsEmpty]: Start isEmpty. Operand 568 states and 779 transitions. [2022-04-28 05:52:02,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:52:02,552 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:02,552 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:02,568 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:02,753 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:02,753 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:02,753 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:02,753 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 3 times [2022-04-28 05:52:02,753 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:02,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [253445854] [2022-04-28 05:52:02,754 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:02,754 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 4 times [2022-04-28 05:52:02,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:02,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1339923957] [2022-04-28 05:52:02,754 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:02,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:02,764 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:02,764 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [31317380] [2022-04-28 05:52:02,764 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:02,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:02,764 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:02,765 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:02,766 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-28 05:52:02,810 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:02,810 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:02,811 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:52:02,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:02,824 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:03,118 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 05:52:03,118 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,119 INFO L290 TraceCheckUtils]: 2: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,119 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45341#(<= ~counter~0 0)} {45333#true} #108#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,119 INFO L272 TraceCheckUtils]: 4: Hoare triple {45341#(<= ~counter~0 0)} call #t~ret9 := main(); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,120 INFO L290 TraceCheckUtils]: 5: Hoare triple {45341#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,120 INFO L272 TraceCheckUtils]: 6: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,120 INFO L290 TraceCheckUtils]: 7: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,121 INFO L290 TraceCheckUtils]: 8: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,121 INFO L290 TraceCheckUtils]: 9: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,121 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #94#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,122 INFO L272 TraceCheckUtils]: 11: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,122 INFO L290 TraceCheckUtils]: 12: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,122 INFO L290 TraceCheckUtils]: 13: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,122 INFO L290 TraceCheckUtils]: 14: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,123 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #96#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {45341#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,124 INFO L290 TraceCheckUtils]: 17: Hoare triple {45341#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:03,124 INFO L290 TraceCheckUtils]: 18: Hoare triple {45390#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:03,125 INFO L290 TraceCheckUtils]: 19: Hoare triple {45390#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:03,125 INFO L290 TraceCheckUtils]: 20: Hoare triple {45390#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:03,125 INFO L290 TraceCheckUtils]: 21: Hoare triple {45400#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:03,126 INFO L290 TraceCheckUtils]: 22: Hoare triple {45400#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:03,126 INFO L290 TraceCheckUtils]: 23: Hoare triple {45400#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,126 INFO L290 TraceCheckUtils]: 24: Hoare triple {45410#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,127 INFO L272 TraceCheckUtils]: 25: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,127 INFO L290 TraceCheckUtils]: 26: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,127 INFO L290 TraceCheckUtils]: 27: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,128 INFO L290 TraceCheckUtils]: 28: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,128 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #98#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,129 INFO L272 TraceCheckUtils]: 30: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,129 INFO L290 TraceCheckUtils]: 31: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,129 INFO L290 TraceCheckUtils]: 32: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,130 INFO L290 TraceCheckUtils]: 33: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,130 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #100#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,130 INFO L272 TraceCheckUtils]: 35: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,131 INFO L290 TraceCheckUtils]: 36: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,131 INFO L290 TraceCheckUtils]: 37: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,131 INFO L290 TraceCheckUtils]: 38: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,132 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #102#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,132 INFO L272 TraceCheckUtils]: 40: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,132 INFO L290 TraceCheckUtils]: 41: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,133 INFO L290 TraceCheckUtils]: 42: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,133 INFO L290 TraceCheckUtils]: 43: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,133 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #104#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,134 INFO L290 TraceCheckUtils]: 45: Hoare triple {45410#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,134 INFO L290 TraceCheckUtils]: 46: Hoare triple {45410#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,135 INFO L290 TraceCheckUtils]: 47: Hoare triple {45410#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,135 INFO L290 TraceCheckUtils]: 48: Hoare triple {45483#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,135 INFO L290 TraceCheckUtils]: 49: Hoare triple {45483#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,135 INFO L290 TraceCheckUtils]: 50: Hoare triple {45483#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,136 INFO L290 TraceCheckUtils]: 51: Hoare triple {45483#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:03,136 INFO L290 TraceCheckUtils]: 52: Hoare triple {45496#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:03,136 INFO L290 TraceCheckUtils]: 53: Hoare triple {45496#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:03,137 INFO L290 TraceCheckUtils]: 54: Hoare triple {45496#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:03,137 INFO L290 TraceCheckUtils]: 55: Hoare triple {45506#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:03,138 INFO L290 TraceCheckUtils]: 56: Hoare triple {45506#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:03,138 INFO L290 TraceCheckUtils]: 57: Hoare triple {45506#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45516#(<= |main_#t~post8| 6)} is VALID [2022-04-28 05:52:03,141 INFO L290 TraceCheckUtils]: 58: Hoare triple {45516#(<= |main_#t~post8| 6)} assume !(#t~post8 < 20);havoc #t~post8; {45334#false} is VALID [2022-04-28 05:52:03,141 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 05:52:03,141 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,141 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 20);havoc #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#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; {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 20);havoc #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#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)); {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 05:52:03,142 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:03,142 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:03,512 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#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)); {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 20);havoc #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#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; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 20);havoc #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 05:52:03,513 INFO L290 TraceCheckUtils]: 58: Hoare triple {45580#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {45334#false} is VALID [2022-04-28 05:52:03,514 INFO L290 TraceCheckUtils]: 57: Hoare triple {45584#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45580#(< |main_#t~post8| 20)} is VALID [2022-04-28 05:52:03,514 INFO L290 TraceCheckUtils]: 56: Hoare triple {45584#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45584#(< ~counter~0 20)} is VALID [2022-04-28 05:52:03,514 INFO L290 TraceCheckUtils]: 55: Hoare triple {45584#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {45584#(< ~counter~0 20)} is VALID [2022-04-28 05:52:03,515 INFO L290 TraceCheckUtils]: 54: Hoare triple {45594#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45584#(< ~counter~0 20)} is VALID [2022-04-28 05:52:03,516 INFO L290 TraceCheckUtils]: 53: Hoare triple {45594#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45594#(< ~counter~0 19)} is VALID [2022-04-28 05:52:03,516 INFO L290 TraceCheckUtils]: 52: Hoare triple {45594#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {45594#(< ~counter~0 19)} is VALID [2022-04-28 05:52:03,516 INFO L290 TraceCheckUtils]: 51: Hoare triple {45604#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45594#(< ~counter~0 19)} is VALID [2022-04-28 05:52:03,517 INFO L290 TraceCheckUtils]: 50: Hoare triple {45604#(< ~counter~0 18)} ~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; {45604#(< ~counter~0 18)} is VALID [2022-04-28 05:52:03,517 INFO L290 TraceCheckUtils]: 49: Hoare triple {45604#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {45604#(< ~counter~0 18)} is VALID [2022-04-28 05:52:03,517 INFO L290 TraceCheckUtils]: 48: Hoare triple {45604#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {45604#(< ~counter~0 18)} is VALID [2022-04-28 05:52:03,518 INFO L290 TraceCheckUtils]: 47: Hoare triple {45617#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45604#(< ~counter~0 18)} is VALID [2022-04-28 05:52:03,518 INFO L290 TraceCheckUtils]: 46: Hoare triple {45617#(< ~counter~0 17)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,518 INFO L290 TraceCheckUtils]: 45: Hoare triple {45617#(< ~counter~0 17)} assume !(~c~0 >= 2 * ~v~0); {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,519 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #104#return; {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,519 INFO L290 TraceCheckUtils]: 43: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,519 INFO L290 TraceCheckUtils]: 42: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,519 INFO L290 TraceCheckUtils]: 41: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,519 INFO L272 TraceCheckUtils]: 40: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,520 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #102#return; {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,520 INFO L290 TraceCheckUtils]: 38: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,520 INFO L290 TraceCheckUtils]: 37: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,520 INFO L290 TraceCheckUtils]: 36: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,520 INFO L272 TraceCheckUtils]: 35: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,532 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #100#return; {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,532 INFO L290 TraceCheckUtils]: 33: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,533 INFO L290 TraceCheckUtils]: 32: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,533 INFO L290 TraceCheckUtils]: 31: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,533 INFO L272 TraceCheckUtils]: 30: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,533 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #98#return; {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,533 INFO L290 TraceCheckUtils]: 28: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,533 INFO L290 TraceCheckUtils]: 27: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,533 INFO L290 TraceCheckUtils]: 26: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,534 INFO L272 TraceCheckUtils]: 25: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,534 INFO L290 TraceCheckUtils]: 24: Hoare triple {45617#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,535 INFO L290 TraceCheckUtils]: 23: Hoare triple {45690#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45617#(< ~counter~0 17)} is VALID [2022-04-28 05:52:03,535 INFO L290 TraceCheckUtils]: 22: Hoare triple {45690#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45690#(< ~counter~0 16)} is VALID [2022-04-28 05:52:03,535 INFO L290 TraceCheckUtils]: 21: Hoare triple {45690#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {45690#(< ~counter~0 16)} is VALID [2022-04-28 05:52:03,536 INFO L290 TraceCheckUtils]: 20: Hoare triple {45700#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45690#(< ~counter~0 16)} is VALID [2022-04-28 05:52:03,536 INFO L290 TraceCheckUtils]: 19: Hoare triple {45700#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45700#(< ~counter~0 15)} is VALID [2022-04-28 05:52:03,537 INFO L290 TraceCheckUtils]: 18: Hoare triple {45700#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {45700#(< ~counter~0 15)} is VALID [2022-04-28 05:52:03,537 INFO L290 TraceCheckUtils]: 17: Hoare triple {45710#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45700#(< ~counter~0 15)} is VALID [2022-04-28 05:52:03,537 INFO L290 TraceCheckUtils]: 16: Hoare triple {45710#(< ~counter~0 14)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,538 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45333#true} {45710#(< ~counter~0 14)} #96#return; {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,538 INFO L290 TraceCheckUtils]: 14: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,538 INFO L290 TraceCheckUtils]: 13: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,538 INFO L290 TraceCheckUtils]: 12: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,538 INFO L272 TraceCheckUtils]: 11: Hoare triple {45710#(< ~counter~0 14)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,539 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45333#true} {45710#(< ~counter~0 14)} #94#return; {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,539 INFO L290 TraceCheckUtils]: 9: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,539 INFO L290 TraceCheckUtils]: 8: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,539 INFO L290 TraceCheckUtils]: 7: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,539 INFO L272 TraceCheckUtils]: 6: Hoare triple {45710#(< ~counter~0 14)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,539 INFO L290 TraceCheckUtils]: 5: Hoare triple {45710#(< ~counter~0 14)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,540 INFO L272 TraceCheckUtils]: 4: Hoare triple {45710#(< ~counter~0 14)} call #t~ret9 := main(); {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,540 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45710#(< ~counter~0 14)} {45333#true} #108#return; {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,540 INFO L290 TraceCheckUtils]: 2: Hoare triple {45710#(< ~counter~0 14)} assume true; {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {45710#(< ~counter~0 14)} is VALID [2022-04-28 05:52:03,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 05:52:03,541 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:03,541 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:03,541 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1339923957] [2022-04-28 05:52:03,541 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:03,541 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [31317380] [2022-04-28 05:52:03,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [31317380] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:03,542 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:03,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 05:52:03,542 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:03,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [253445854] [2022-04-28 05:52:03,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [253445854] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:03,542 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:03,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:52:03,542 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1786025106] [2022-04-28 05:52:03,542 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:03,543 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 05:52:03,543 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:03,543 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:03,582 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:03,582 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:52:03,582 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:03,583 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:52:03,583 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:52:03,583 INFO L87 Difference]: Start difference. First operand 568 states and 779 transitions. Second operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:05,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:05,327 INFO L93 Difference]: Finished difference Result 914 states and 1304 transitions. [2022-04-28 05:52:05,327 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:52:05,327 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 05:52:05,327 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:05,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:05,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 05:52:05,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:05,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 05:52:05,330 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 181 transitions. [2022-04-28 05:52:05,455 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:05,470 INFO L225 Difference]: With dead ends: 914 [2022-04-28 05:52:05,470 INFO L226 Difference]: Without dead ends: 584 [2022-04-28 05:52:05,471 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 141 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=185, Invalid=277, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:52:05,471 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 86 mSDsluCounter, 215 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 137 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:05,471 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 276 Invalid, 137 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:52:05,472 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 584 states. [2022-04-28 05:52:06,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 584 to 575. [2022-04-28 05:52:06,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:06,778 INFO L82 GeneralOperation]: Start isEquivalent. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:06,779 INFO L74 IsIncluded]: Start isIncluded. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:06,779 INFO L87 Difference]: Start difference. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:06,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:06,791 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 05:52:06,791 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 05:52:06,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:06,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:06,793 INFO L74 IsIncluded]: Start isIncluded. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 05:52:06,793 INFO L87 Difference]: Start difference. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 05:52:06,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:06,805 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 05:52:06,805 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 05:52:06,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:06,806 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:06,806 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:06,806 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:06,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:06,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 575 states to 575 states and 786 transitions. [2022-04-28 05:52:06,827 INFO L78 Accepts]: Start accepts. Automaton has 575 states and 786 transitions. Word has length 69 [2022-04-28 05:52:06,827 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:06,827 INFO L495 AbstractCegarLoop]: Abstraction has 575 states and 786 transitions. [2022-04-28 05:52:06,827 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:06,827 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 575 states and 786 transitions. [2022-04-28 05:52:08,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 786 edges. 786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:08,004 INFO L276 IsEmpty]: Start isEmpty. Operand 575 states and 786 transitions. [2022-04-28 05:52:08,004 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 05:52:08,004 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:08,004 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 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, 1, 1, 1, 1, 1] [2022-04-28 05:52:08,022 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:08,205 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:08,205 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:08,205 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:08,205 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 3 times [2022-04-28 05:52:08,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:08,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [516429466] [2022-04-28 05:52:08,206 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:08,206 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 4 times [2022-04-28 05:52:08,206 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:08,206 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1390880227] [2022-04-28 05:52:08,206 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:08,206 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:08,216 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:08,216 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1119650907] [2022-04-28 05:52:08,216 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:08,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:08,217 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:08,217 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:08,218 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-28 05:52:08,271 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:08,271 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:08,272 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:52:08,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:08,290 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:08,597 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 05:52:08,598 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,598 INFO L290 TraceCheckUtils]: 2: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,598 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49926#(<= ~counter~0 0)} {49918#true} #108#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,598 INFO L272 TraceCheckUtils]: 4: Hoare triple {49926#(<= ~counter~0 0)} call #t~ret9 := main(); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,599 INFO L290 TraceCheckUtils]: 5: Hoare triple {49926#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,599 INFO L272 TraceCheckUtils]: 6: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,599 INFO L290 TraceCheckUtils]: 7: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,600 INFO L290 TraceCheckUtils]: 8: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,600 INFO L290 TraceCheckUtils]: 9: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,600 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #94#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,601 INFO L272 TraceCheckUtils]: 11: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,601 INFO L290 TraceCheckUtils]: 12: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,601 INFO L290 TraceCheckUtils]: 13: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,601 INFO L290 TraceCheckUtils]: 14: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,602 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #96#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,602 INFO L290 TraceCheckUtils]: 16: Hoare triple {49926#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:08,603 INFO L290 TraceCheckUtils]: 17: Hoare triple {49926#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:08,603 INFO L290 TraceCheckUtils]: 18: Hoare triple {49975#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:08,604 INFO L290 TraceCheckUtils]: 19: Hoare triple {49975#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:08,604 INFO L290 TraceCheckUtils]: 20: Hoare triple {49975#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:08,604 INFO L290 TraceCheckUtils]: 21: Hoare triple {49985#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:08,605 INFO L290 TraceCheckUtils]: 22: Hoare triple {49985#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:08,605 INFO L290 TraceCheckUtils]: 23: Hoare triple {49985#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:08,606 INFO L290 TraceCheckUtils]: 24: Hoare triple {49985#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:08,606 INFO L290 TraceCheckUtils]: 25: Hoare triple {49998#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:08,606 INFO L290 TraceCheckUtils]: 26: Hoare triple {49998#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:08,607 INFO L290 TraceCheckUtils]: 27: Hoare triple {49998#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:08,607 INFO L290 TraceCheckUtils]: 28: Hoare triple {50008#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:08,607 INFO L290 TraceCheckUtils]: 29: Hoare triple {50008#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:08,608 INFO L290 TraceCheckUtils]: 30: Hoare triple {50008#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,608 INFO L290 TraceCheckUtils]: 31: Hoare triple {50018#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,608 INFO L272 TraceCheckUtils]: 32: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,609 INFO L290 TraceCheckUtils]: 33: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,609 INFO L290 TraceCheckUtils]: 34: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,609 INFO L290 TraceCheckUtils]: 35: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,610 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #98#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,610 INFO L272 TraceCheckUtils]: 37: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,610 INFO L290 TraceCheckUtils]: 38: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,611 INFO L290 TraceCheckUtils]: 39: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,611 INFO L290 TraceCheckUtils]: 40: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,612 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #100#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,612 INFO L272 TraceCheckUtils]: 42: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,612 INFO L290 TraceCheckUtils]: 43: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,613 INFO L290 TraceCheckUtils]: 44: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,613 INFO L290 TraceCheckUtils]: 45: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,613 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #102#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,614 INFO L272 TraceCheckUtils]: 47: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,614 INFO L290 TraceCheckUtils]: 48: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,614 INFO L290 TraceCheckUtils]: 49: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,614 INFO L290 TraceCheckUtils]: 50: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,615 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #104#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,615 INFO L290 TraceCheckUtils]: 52: Hoare triple {50018#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,615 INFO L290 TraceCheckUtils]: 53: Hoare triple {50018#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:08,616 INFO L290 TraceCheckUtils]: 54: Hoare triple {50018#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:08,616 INFO L290 TraceCheckUtils]: 55: Hoare triple {50091#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:08,617 INFO L290 TraceCheckUtils]: 56: Hoare triple {50091#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:08,617 INFO L290 TraceCheckUtils]: 57: Hoare triple {50091#(<= ~counter~0 6)} ~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; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:08,617 INFO L290 TraceCheckUtils]: 58: Hoare triple {50091#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:08,618 INFO L290 TraceCheckUtils]: 59: Hoare triple {50104#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:08,618 INFO L290 TraceCheckUtils]: 60: Hoare triple {50104#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:08,618 INFO L290 TraceCheckUtils]: 61: Hoare triple {50104#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50114#(<= |main_#t~post7| 7)} is VALID [2022-04-28 05:52:08,619 INFO L290 TraceCheckUtils]: 62: Hoare triple {50114#(<= |main_#t~post7| 7)} assume !(#t~post7 < 20);havoc #t~post7; {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#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; {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 20);havoc #t~post6; {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#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)); {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 05:52:08,619 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:08,620 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:09,000 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 05:52:09,000 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 05:52:09,000 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 05:52:09,000 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#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)); {49919#false} is VALID [2022-04-28 05:52:09,000 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 20);havoc #t~post6; {49919#false} is VALID [2022-04-28 05:52:09,000 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 05:52:09,000 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#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; {49919#false} is VALID [2022-04-28 05:52:09,000 INFO L290 TraceCheckUtils]: 62: Hoare triple {50160#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {49919#false} is VALID [2022-04-28 05:52:09,001 INFO L290 TraceCheckUtils]: 61: Hoare triple {50164#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50160#(< |main_#t~post7| 20)} is VALID [2022-04-28 05:52:09,001 INFO L290 TraceCheckUtils]: 60: Hoare triple {50164#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50164#(< ~counter~0 20)} is VALID [2022-04-28 05:52:09,001 INFO L290 TraceCheckUtils]: 59: Hoare triple {50164#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {50164#(< ~counter~0 20)} is VALID [2022-04-28 05:52:09,002 INFO L290 TraceCheckUtils]: 58: Hoare triple {50174#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50164#(< ~counter~0 20)} is VALID [2022-04-28 05:52:09,003 INFO L290 TraceCheckUtils]: 57: Hoare triple {50174#(< ~counter~0 19)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {50174#(< ~counter~0 19)} is VALID [2022-04-28 05:52:09,003 INFO L290 TraceCheckUtils]: 56: Hoare triple {50174#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {50174#(< ~counter~0 19)} is VALID [2022-04-28 05:52:09,003 INFO L290 TraceCheckUtils]: 55: Hoare triple {50174#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {50174#(< ~counter~0 19)} is VALID [2022-04-28 05:52:09,004 INFO L290 TraceCheckUtils]: 54: Hoare triple {50187#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50174#(< ~counter~0 19)} is VALID [2022-04-28 05:52:09,004 INFO L290 TraceCheckUtils]: 53: Hoare triple {50187#(< ~counter~0 18)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,005 INFO L290 TraceCheckUtils]: 52: Hoare triple {50187#(< ~counter~0 18)} assume !(~c~0 >= 2 * ~v~0); {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,005 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #104#return; {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,005 INFO L290 TraceCheckUtils]: 50: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,005 INFO L290 TraceCheckUtils]: 49: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,005 INFO L290 TraceCheckUtils]: 48: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,005 INFO L272 TraceCheckUtils]: 47: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,006 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #102#return; {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,006 INFO L290 TraceCheckUtils]: 45: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,006 INFO L290 TraceCheckUtils]: 44: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,006 INFO L290 TraceCheckUtils]: 43: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,006 INFO L272 TraceCheckUtils]: 42: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,007 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #100#return; {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,007 INFO L290 TraceCheckUtils]: 40: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,007 INFO L290 TraceCheckUtils]: 39: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,007 INFO L290 TraceCheckUtils]: 38: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,007 INFO L272 TraceCheckUtils]: 37: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,008 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #98#return; {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,008 INFO L290 TraceCheckUtils]: 35: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,008 INFO L290 TraceCheckUtils]: 34: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,008 INFO L290 TraceCheckUtils]: 33: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,008 INFO L272 TraceCheckUtils]: 32: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,008 INFO L290 TraceCheckUtils]: 31: Hoare triple {50187#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,009 INFO L290 TraceCheckUtils]: 30: Hoare triple {50260#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50187#(< ~counter~0 18)} is VALID [2022-04-28 05:52:09,009 INFO L290 TraceCheckUtils]: 29: Hoare triple {50260#(< ~counter~0 17)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50260#(< ~counter~0 17)} is VALID [2022-04-28 05:52:09,010 INFO L290 TraceCheckUtils]: 28: Hoare triple {50260#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {50260#(< ~counter~0 17)} is VALID [2022-04-28 05:52:09,010 INFO L290 TraceCheckUtils]: 27: Hoare triple {50270#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50260#(< ~counter~0 17)} is VALID [2022-04-28 05:52:09,010 INFO L290 TraceCheckUtils]: 26: Hoare triple {50270#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50270#(< ~counter~0 16)} is VALID [2022-04-28 05:52:09,011 INFO L290 TraceCheckUtils]: 25: Hoare triple {50270#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {50270#(< ~counter~0 16)} is VALID [2022-04-28 05:52:09,011 INFO L290 TraceCheckUtils]: 24: Hoare triple {50280#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50270#(< ~counter~0 16)} is VALID [2022-04-28 05:52:09,012 INFO L290 TraceCheckUtils]: 23: Hoare triple {50280#(< ~counter~0 15)} ~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; {50280#(< ~counter~0 15)} is VALID [2022-04-28 05:52:09,012 INFO L290 TraceCheckUtils]: 22: Hoare triple {50280#(< ~counter~0 15)} assume !(~c~0 >= ~b~0); {50280#(< ~counter~0 15)} is VALID [2022-04-28 05:52:09,012 INFO L290 TraceCheckUtils]: 21: Hoare triple {50280#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {50280#(< ~counter~0 15)} is VALID [2022-04-28 05:52:09,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {50293#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50280#(< ~counter~0 15)} is VALID [2022-04-28 05:52:09,013 INFO L290 TraceCheckUtils]: 19: Hoare triple {50293#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50293#(< ~counter~0 14)} is VALID [2022-04-28 05:52:09,013 INFO L290 TraceCheckUtils]: 18: Hoare triple {50293#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {50293#(< ~counter~0 14)} is VALID [2022-04-28 05:52:09,014 INFO L290 TraceCheckUtils]: 17: Hoare triple {50303#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50293#(< ~counter~0 14)} is VALID [2022-04-28 05:52:09,014 INFO L290 TraceCheckUtils]: 16: Hoare triple {50303#(< ~counter~0 13)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,015 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49918#true} {50303#(< ~counter~0 13)} #96#return; {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,015 INFO L290 TraceCheckUtils]: 14: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,015 INFO L290 TraceCheckUtils]: 13: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,015 INFO L290 TraceCheckUtils]: 12: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,015 INFO L272 TraceCheckUtils]: 11: Hoare triple {50303#(< ~counter~0 13)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,015 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49918#true} {50303#(< ~counter~0 13)} #94#return; {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,015 INFO L290 TraceCheckUtils]: 9: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,016 INFO L272 TraceCheckUtils]: 6: Hoare triple {50303#(< ~counter~0 13)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {50303#(< ~counter~0 13)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,016 INFO L272 TraceCheckUtils]: 4: Hoare triple {50303#(< ~counter~0 13)} call #t~ret9 := main(); {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,017 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50303#(< ~counter~0 13)} {49918#true} #108#return; {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {50303#(< ~counter~0 13)} assume true; {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {50303#(< ~counter~0 13)} is VALID [2022-04-28 05:52:09,017 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 05:52:09,018 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:09,018 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:09,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1390880227] [2022-04-28 05:52:09,018 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:09,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1119650907] [2022-04-28 05:52:09,018 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1119650907] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:09,018 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:09,018 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 05:52:09,018 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:09,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [516429466] [2022-04-28 05:52:09,018 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [516429466] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:09,018 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:09,019 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:52:09,019 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1362863619] [2022-04-28 05:52:09,019 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:09,019 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 05:52:09,019 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:09,019 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:09,060 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-28 05:52:09,061 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:52:09,061 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:09,061 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:52:09,061 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:52:09,061 INFO L87 Difference]: Start difference. First operand 575 states and 786 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:11,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:11,168 INFO L93 Difference]: Finished difference Result 918 states and 1274 transitions. [2022-04-28 05:52:11,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:52:11,168 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 05:52:11,168 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:11,168 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:11,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 05:52:11,169 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:11,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 05:52:11,171 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 210 transitions. [2022-04-28 05:52:11,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:11,334 INFO L225 Difference]: With dead ends: 918 [2022-04-28 05:52:11,334 INFO L226 Difference]: Without dead ends: 688 [2022-04-28 05:52:11,335 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=244, Invalid=356, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:52:11,335 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 120 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 145 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 190 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 145 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:11,335 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [120 Valid, 301 Invalid, 190 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 145 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:52:11,336 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 688 states. [2022-04-28 05:52:12,835 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 688 to 658. [2022-04-28 05:52:12,835 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:12,836 INFO L82 GeneralOperation]: Start isEquivalent. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:12,837 INFO L74 IsIncluded]: Start isIncluded. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:12,837 INFO L87 Difference]: Start difference. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:12,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:12,857 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 05:52:12,857 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 05:52:12,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:12,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:12,859 INFO L74 IsIncluded]: Start isIncluded. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 05:52:12,859 INFO L87 Difference]: Start difference. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 05:52:12,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:12,875 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 05:52:12,875 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 05:52:12,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:12,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:12,882 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:12,882 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:12,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:12,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 658 states to 658 states and 880 transitions. [2022-04-28 05:52:12,906 INFO L78 Accepts]: Start accepts. Automaton has 658 states and 880 transitions. Word has length 70 [2022-04-28 05:52:12,906 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:12,906 INFO L495 AbstractCegarLoop]: Abstraction has 658 states and 880 transitions. [2022-04-28 05:52:12,907 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:12,907 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 658 states and 880 transitions. [2022-04-28 05:52:14,263 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 880 edges. 880 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:14,263 INFO L276 IsEmpty]: Start isEmpty. Operand 658 states and 880 transitions. [2022-04-28 05:52:14,263 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 05:52:14,263 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:14,264 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 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, 1, 1, 1, 1] [2022-04-28 05:52:14,282 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:14,464 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-28 05:52:14,464 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:14,464 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:14,464 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 1 times [2022-04-28 05:52:14,464 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:14,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2054454052] [2022-04-28 05:52:14,465 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:14,465 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 2 times [2022-04-28 05:52:14,465 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:14,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1829474703] [2022-04-28 05:52:14,465 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:14,465 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:14,479 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:14,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [791064576] [2022-04-28 05:52:14,479 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:14,479 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:14,479 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:14,480 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:14,481 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-28 05:52:14,538 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:14,538 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:14,539 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:52:14,547 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:14,548 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:14,721 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 05:52:14,721 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 05:52:14,722 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 05:52:14,723 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 20);havoc #t~post8; {54895#true} is VALID [2022-04-28 05:52:14,724 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:14,724 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:14,724 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:14,724 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:14,724 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 05:52:14,724 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:14,726 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:14,727 INFO L290 TraceCheckUtils]: 39: Hoare triple {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:14,727 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:14,728 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,728 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 05:52:14,728 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:14,728 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:14,728 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:14,728 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,729 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 05:52:14,729 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:14,729 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:14,729 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:14,729 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,730 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,730 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= 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; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,730 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,731 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,731 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:14,731 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,732 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,732 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,732 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,733 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,733 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,733 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,734 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,734 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:14,734 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= 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)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:14,735 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:14,735 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 05:52:14,735 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 05:52:14,735 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 05:52:14,735 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:27,599 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 05:52:27,600 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 05:52:27,600 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:27,600 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= 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)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:27,601 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,601 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,601 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,602 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,602 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,602 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,603 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,603 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,604 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:27,604 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,604 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,604 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,605 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= 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; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,605 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,606 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,606 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:27,606 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:27,606 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:27,606 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 05:52:27,607 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,607 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:27,607 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:27,607 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:27,607 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 05:52:27,607 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:27,608 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:27,608 INFO L290 TraceCheckUtils]: 39: Hoare triple {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:27,608 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:52:27,608 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:27,608 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 05:52:27,608 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 20);havoc #t~post8; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:27,609 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:27,610 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:27,611 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-28 05:52:27,611 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 05:52:27,611 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 05:52:27,611 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:27,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {54895#true} is VALID [2022-04-28 05:52:27,611 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 05:52:27,611 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 05:52:27,611 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:27,611 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1829474703] [2022-04-28 05:52:27,611 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:27,611 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [791064576] [2022-04-28 05:52:27,612 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [791064576] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:27,612 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:27,612 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:52:27,612 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:27,612 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2054454052] [2022-04-28 05:52:27,612 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2054454052] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:27,612 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:27,612 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:52:27,612 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1042986196] [2022-04-28 05:52:27,612 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:27,612 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 05:52:27,613 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:27,613 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:27,664 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:27,664 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:52:27,664 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:27,664 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:52:27,664 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:52:27,664 INFO L87 Difference]: Start difference. First operand 658 states and 880 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:29,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:29,799 INFO L93 Difference]: Finished difference Result 757 states and 1022 transitions. [2022-04-28 05:52:29,799 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:52:29,799 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 05:52:29,799 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:29,799 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:29,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 05:52:29,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:29,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 05:52:29,800 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 85 transitions. [2022-04-28 05:52:29,862 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-28 05:52:29,887 INFO L225 Difference]: With dead ends: 757 [2022-04-28 05:52:29,887 INFO L226 Difference]: Without dead ends: 755 [2022-04-28 05:52:29,887 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 132 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-28 05:52:29,888 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 30 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 212 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:29,888 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 212 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:52:29,888 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 755 states. [2022-04-28 05:52:31,712 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 755 to 748. [2022-04-28 05:52:31,712 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:31,713 INFO L82 GeneralOperation]: Start isEquivalent. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,713 INFO L74 IsIncluded]: Start isIncluded. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,714 INFO L87 Difference]: Start difference. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,740 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:31,740 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 05:52:31,740 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 05:52:31,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:31,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:31,743 INFO L74 IsIncluded]: Start isIncluded. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 05:52:31,743 INFO L87 Difference]: Start difference. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 05:52:31,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:31,765 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 05:52:31,765 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 05:52:31,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:31,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:31,767 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:31,767 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:31,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 748 states to 748 states and 1013 transitions. [2022-04-28 05:52:31,798 INFO L78 Accepts]: Start accepts. Automaton has 748 states and 1013 transitions. Word has length 70 [2022-04-28 05:52:31,798 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:31,798 INFO L495 AbstractCegarLoop]: Abstraction has 748 states and 1013 transitions. [2022-04-28 05:52:31,798 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:31,799 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 748 states and 1013 transitions. [2022-04-28 05:52:33,375 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1013 edges. 1013 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:33,375 INFO L276 IsEmpty]: Start isEmpty. Operand 748 states and 1013 transitions. [2022-04-28 05:52:33,376 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 05:52:33,376 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:33,376 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:33,396 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-28 05:52:33,591 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-28 05:52:33,591 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:33,591 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:33,591 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 3 times [2022-04-28 05:52:33,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:33,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1213283204] [2022-04-28 05:52:33,592 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:33,592 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 4 times [2022-04-28 05:52:33,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:33,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1176390359] [2022-04-28 05:52:33,592 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:33,592 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:33,602 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:33,602 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [848009605] [2022-04-28 05:52:33,602 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:33,602 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:33,602 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:33,603 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:52:33,606 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-28 05:52:33,650 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:33,650 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:33,651 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:52:33,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:33,664 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:34,481 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 05:52:34,481 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,482 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,482 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,482 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,482 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 05:52:34,482 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59903#(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-28 05:52:34,482 INFO L290 TraceCheckUtils]: 17: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59903#(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-28 05:52:34,483 INFO L290 TraceCheckUtils]: 18: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {59903#(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-28 05:52:34,483 INFO L290 TraceCheckUtils]: 19: Hoare triple {59903#(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; {59913#(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-28 05:52:34,484 INFO L290 TraceCheckUtils]: 20: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59913#(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-28 05:52:34,484 INFO L290 TraceCheckUtils]: 21: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {59913#(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-28 05:52:34,484 INFO L290 TraceCheckUtils]: 22: Hoare triple {59913#(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); {59913#(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-28 05:52:34,485 INFO L290 TraceCheckUtils]: 23: Hoare triple {59913#(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; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,485 INFO L290 TraceCheckUtils]: 24: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,485 INFO L290 TraceCheckUtils]: 25: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,486 INFO L290 TraceCheckUtils]: 26: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59936#(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) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,486 INFO L290 TraceCheckUtils]: 27: Hoare triple {59936#(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) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59936#(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) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,487 INFO L290 TraceCheckUtils]: 28: Hoare triple {59936#(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) (= main_~q~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {59936#(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) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,487 INFO L290 TraceCheckUtils]: 29: Hoare triple {59936#(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) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,487 INFO L290 TraceCheckUtils]: 30: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,488 INFO L290 TraceCheckUtils]: 31: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,488 INFO L272 TraceCheckUtils]: 32: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,488 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:34,488 INFO L290 TraceCheckUtils]: 34: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,489 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,490 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,490 INFO L272 TraceCheckUtils]: 37: Hoare triple {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,490 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:34,490 INFO L290 TraceCheckUtils]: 39: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,491 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,491 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,491 INFO L272 TraceCheckUtils]: 42: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= 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)); {59850#true} is VALID [2022-04-28 05:52:34,492 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,492 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,492 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,492 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,492 INFO L272 TraceCheckUtils]: 47: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= 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)); {59850#true} is VALID [2022-04-28 05:52:34,493 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,493 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,493 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,493 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,494 INFO L290 TraceCheckUtils]: 52: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= 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); {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,494 INFO L290 TraceCheckUtils]: 53: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,495 INFO L290 TraceCheckUtils]: 54: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,495 INFO L290 TraceCheckUtils]: 55: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,496 INFO L290 TraceCheckUtils]: 56: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,496 INFO L290 TraceCheckUtils]: 57: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,496 INFO L290 TraceCheckUtils]: 58: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,497 INFO L290 TraceCheckUtils]: 59: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post6 < 20);havoc #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,497 INFO L290 TraceCheckUtils]: 60: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,498 INFO L290 TraceCheckUtils]: 61: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,498 INFO L290 TraceCheckUtils]: 62: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post7 < 20);havoc #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,498 INFO L290 TraceCheckUtils]: 63: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,499 INFO L290 TraceCheckUtils]: 64: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,499 INFO L290 TraceCheckUtils]: 65: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post8 < 20);havoc #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,499 INFO L272 TraceCheckUtils]: 66: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,499 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,499 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,499 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,500 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #98#return; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,500 INFO L272 TraceCheckUtils]: 71: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:34,501 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:34,501 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 05:52:34,501 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 05:52:34,501 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 8 proven. 52 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-28 05:52:34,501 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:58,852 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 05:52:58,853 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 05:52:58,853 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:58,854 INFO L272 TraceCheckUtils]: 71: Hoare triple {60099#(= 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)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:58,854 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,855 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:58,855 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:58,855 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:58,855 INFO L272 TraceCheckUtils]: 66: Hoare triple {60099#(= 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)); {59850#true} is VALID [2022-04-28 05:52:58,855 INFO L290 TraceCheckUtils]: 65: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,855 INFO L290 TraceCheckUtils]: 64: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,856 INFO L290 TraceCheckUtils]: 63: Hoare triple {60099#(= 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,856 INFO L290 TraceCheckUtils]: 62: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,856 INFO L290 TraceCheckUtils]: 61: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,857 INFO L290 TraceCheckUtils]: 60: Hoare triple {60099#(= 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,857 INFO L290 TraceCheckUtils]: 59: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,857 INFO L290 TraceCheckUtils]: 58: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:00,859 WARN L290 TraceCheckUtils]: 57: Hoare triple {60142#(= (+ (* 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 05:53:00,860 INFO L290 TraceCheckUtils]: 56: Hoare triple {60142#(= (+ (* 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); {60142#(= (+ (* 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-28 05:53:00,860 INFO L290 TraceCheckUtils]: 55: Hoare triple {60142#(= (+ (* 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 !!(#t~post7 < 20);havoc #t~post7; {60142#(= (+ (* 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-28 05:53:00,860 INFO L290 TraceCheckUtils]: 54: Hoare triple {60142#(= (+ (* 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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60142#(= (+ (* 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-28 05:53:01,251 INFO L290 TraceCheckUtils]: 53: Hoare triple {60155#(= (+ 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; {60142#(= (+ (* 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-28 05:53:01,252 INFO L290 TraceCheckUtils]: 52: Hoare triple {60155#(= (+ 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); {60155#(= (+ 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-28 05:53:01,252 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {60155#(= (+ 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)))} #104#return; {60155#(= (+ 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-28 05:53:01,252 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:01,252 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:01,252 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:01,253 INFO L272 TraceCheckUtils]: 47: Hoare triple {60155#(= (+ 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)); {59850#true} is VALID [2022-04-28 05:53:01,253 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {60155#(= (+ 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)))} #102#return; {60155#(= (+ 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-28 05:53:01,253 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:01,253 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:01,253 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:01,254 INFO L272 TraceCheckUtils]: 42: Hoare triple {60155#(= (+ 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)); {59850#true} is VALID [2022-04-28 05:53:01,254 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60192#(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)))))} #100#return; {60155#(= (+ 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-28 05:53:01,255 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:01,255 INFO L290 TraceCheckUtils]: 39: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:01,255 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:01,255 INFO L272 TraceCheckUtils]: 37: Hoare triple {60192#(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)); {59850#true} is VALID [2022-04-28 05:53:01,256 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60209#(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)))))} #98#return; {60192#(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-28 05:53:01,257 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:01,257 INFO L290 TraceCheckUtils]: 34: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:01,257 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:01,257 INFO L272 TraceCheckUtils]: 32: Hoare triple {60209#(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)); {59850#true} is VALID [2022-04-28 05:53:01,258 INFO L290 TraceCheckUtils]: 31: Hoare triple {60209#(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 !!(#t~post8 < 20);havoc #t~post8; {60209#(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-28 05:53:01,258 INFO L290 TraceCheckUtils]: 30: Hoare triple {60209#(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)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60209#(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-28 05:53:01,259 INFO L290 TraceCheckUtils]: 29: Hoare triple {60231#(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; {60209#(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-28 05:53:01,259 INFO L290 TraceCheckUtils]: 28: Hoare triple {60231#(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 !!(#t~post7 < 20);havoc #t~post7; {60231#(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-28 05:53:01,260 INFO L290 TraceCheckUtils]: 27: Hoare triple {60231#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60231#(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-28 05:53:01,261 INFO L290 TraceCheckUtils]: 26: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60231#(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-28 05:53:01,261 INFO L290 TraceCheckUtils]: 25: Hoare triple {59850#true} assume !!(#t~post6 < 20);havoc #t~post6; {59850#true} is VALID [2022-04-28 05:53:01,261 INFO L290 TraceCheckUtils]: 24: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 05:53:01,261 INFO L290 TraceCheckUtils]: 23: Hoare triple {59850#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; {59850#true} is VALID [2022-04-28 05:53:01,261 INFO L290 TraceCheckUtils]: 22: Hoare triple {59850#true} assume !(~c~0 >= ~b~0); {59850#true} is VALID [2022-04-28 05:53:01,261 INFO L290 TraceCheckUtils]: 21: Hoare triple {59850#true} assume !!(#t~post7 < 20);havoc #t~post7; {59850#true} is VALID [2022-04-28 05:53:01,261 INFO L290 TraceCheckUtils]: 20: Hoare triple {59850#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 18: Hoare triple {59850#true} assume !!(#t~post6 < 20);havoc #t~post6; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 17: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-28 05:53:01,262 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 05:53:01,263 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 05:53:01,263 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:01,263 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {59850#true} is VALID [2022-04-28 05:53:01,263 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 05:53:01,263 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 27 proven. 30 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-28 05:53:01,263 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:01,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1176390359] [2022-04-28 05:53:01,263 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:01,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [848009605] [2022-04-28 05:53:01,263 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [848009605] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:01,264 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:01,264 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 12] total 22 [2022-04-28 05:53:01,264 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:01,264 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1213283204] [2022-04-28 05:53:01,264 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1213283204] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:01,264 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:01,264 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:53:01,264 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1872760983] [2022-04-28 05:53:01,264 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:01,264 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 05:53:01,265 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:01,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:01,321 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:01,322 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:53:01,322 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:01,322 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:53:01,322 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=379, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:01,322 INFO L87 Difference]: Start difference. First operand 748 states and 1013 transitions. Second operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:05,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:05,390 INFO L93 Difference]: Finished difference Result 840 states and 1136 transitions. [2022-04-28 05:53:05,390 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:53:05,390 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 05:53:05,390 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:05,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:05,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 05:53:05,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:05,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 05:53:05,393 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 172 transitions. [2022-04-28 05:53:05,556 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-28 05:53:05,593 INFO L225 Difference]: With dead ends: 840 [2022-04-28 05:53:05,593 INFO L226 Difference]: Without dead ends: 838 [2022-04-28 05:53:05,594 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 128 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=110, Invalid=540, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:53:05,594 INFO L413 NwaCegarLoop]: 62 mSDtfsCounter, 81 mSDsluCounter, 468 mSDsCounter, 0 mSdLazyCounter, 724 mSolverCounterSat, 44 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 530 SdHoareTripleChecker+Invalid, 768 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 44 IncrementalHoareTripleChecker+Valid, 724 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:05,594 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [100 Valid, 530 Invalid, 768 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [44 Valid, 724 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 05:53:05,595 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 838 states. [2022-04-28 05:53:07,462 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 838 to 813. [2022-04-28 05:53:07,462 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:07,463 INFO L82 GeneralOperation]: Start isEquivalent. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,463 INFO L74 IsIncluded]: Start isIncluded. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,464 INFO L87 Difference]: Start difference. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:07,485 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 05:53:07,485 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 05:53:07,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:07,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:07,487 INFO L74 IsIncluded]: Start isIncluded. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 05:53:07,488 INFO L87 Difference]: Start difference. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 05:53:07,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:07,510 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 05:53:07,510 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 05:53:07,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:07,511 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:07,512 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:07,512 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:07,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 813 states to 813 states and 1106 transitions. [2022-04-28 05:53:07,541 INFO L78 Accepts]: Start accepts. Automaton has 813 states and 1106 transitions. Word has length 75 [2022-04-28 05:53:07,541 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:07,542 INFO L495 AbstractCegarLoop]: Abstraction has 813 states and 1106 transitions. [2022-04-28 05:53:07,542 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:07,542 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 813 states and 1106 transitions. [2022-04-28 05:53:09,384 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1106 edges. 1106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:09,385 INFO L276 IsEmpty]: Start isEmpty. Operand 813 states and 1106 transitions. [2022-04-28 05:53:09,385 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2022-04-28 05:53:09,385 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:09,385 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:09,401 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:09,586 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-28 05:53:09,586 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:09,586 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:09,586 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 5 times [2022-04-28 05:53:09,586 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:09,586 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1506097589] [2022-04-28 05:53:09,587 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:09,587 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 6 times [2022-04-28 05:53:09,587 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:09,587 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1292451434] [2022-04-28 05:53:09,587 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:09,587 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:09,597 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:09,597 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1835384384] [2022-04-28 05:53:09,598 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:53:09,598 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:09,598 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:09,598 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:09,599 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-28 05:53:09,655 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:53:09,655 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:09,656 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:53:09,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:09,672 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:10,009 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 05:53:10,010 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,010 INFO L290 TraceCheckUtils]: 2: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,010 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65319#(<= ~counter~0 0)} {65311#true} #108#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,010 INFO L272 TraceCheckUtils]: 4: Hoare triple {65319#(<= ~counter~0 0)} call #t~ret9 := main(); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,011 INFO L290 TraceCheckUtils]: 5: Hoare triple {65319#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,011 INFO L272 TraceCheckUtils]: 6: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,011 INFO L290 TraceCheckUtils]: 7: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,012 INFO L290 TraceCheckUtils]: 8: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,012 INFO L290 TraceCheckUtils]: 9: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,012 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #94#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,013 INFO L272 TraceCheckUtils]: 11: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,013 INFO L290 TraceCheckUtils]: 12: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,013 INFO L290 TraceCheckUtils]: 13: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,013 INFO L290 TraceCheckUtils]: 14: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,014 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #96#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,014 INFO L290 TraceCheckUtils]: 16: Hoare triple {65319#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:10,015 INFO L290 TraceCheckUtils]: 17: Hoare triple {65319#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:10,015 INFO L290 TraceCheckUtils]: 18: Hoare triple {65368#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:10,016 INFO L290 TraceCheckUtils]: 19: Hoare triple {65368#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:10,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {65368#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:10,017 INFO L290 TraceCheckUtils]: 21: Hoare triple {65378#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:10,017 INFO L290 TraceCheckUtils]: 22: Hoare triple {65378#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:10,017 INFO L290 TraceCheckUtils]: 23: Hoare triple {65378#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:10,018 INFO L290 TraceCheckUtils]: 24: Hoare triple {65378#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:10,018 INFO L290 TraceCheckUtils]: 25: Hoare triple {65391#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:10,018 INFO L290 TraceCheckUtils]: 26: Hoare triple {65391#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:10,019 INFO L290 TraceCheckUtils]: 27: Hoare triple {65391#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:10,019 INFO L290 TraceCheckUtils]: 28: Hoare triple {65401#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:10,019 INFO L290 TraceCheckUtils]: 29: Hoare triple {65401#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:10,020 INFO L290 TraceCheckUtils]: 30: Hoare triple {65401#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,020 INFO L290 TraceCheckUtils]: 31: Hoare triple {65411#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,021 INFO L272 TraceCheckUtils]: 32: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,021 INFO L290 TraceCheckUtils]: 33: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,021 INFO L290 TraceCheckUtils]: 34: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,022 INFO L290 TraceCheckUtils]: 35: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,022 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #98#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,023 INFO L272 TraceCheckUtils]: 37: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,023 INFO L290 TraceCheckUtils]: 38: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,023 INFO L290 TraceCheckUtils]: 39: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,023 INFO L290 TraceCheckUtils]: 40: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,024 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #100#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,024 INFO L272 TraceCheckUtils]: 42: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,024 INFO L290 TraceCheckUtils]: 43: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,025 INFO L290 TraceCheckUtils]: 44: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,025 INFO L290 TraceCheckUtils]: 45: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,025 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #102#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,026 INFO L272 TraceCheckUtils]: 47: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,026 INFO L290 TraceCheckUtils]: 48: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,026 INFO L290 TraceCheckUtils]: 49: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,027 INFO L290 TraceCheckUtils]: 50: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,027 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #104#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,027 INFO L290 TraceCheckUtils]: 52: Hoare triple {65411#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,028 INFO L290 TraceCheckUtils]: 53: Hoare triple {65411#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:10,028 INFO L290 TraceCheckUtils]: 54: Hoare triple {65411#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:10,028 INFO L290 TraceCheckUtils]: 55: Hoare triple {65484#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:10,029 INFO L290 TraceCheckUtils]: 56: Hoare triple {65484#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:10,029 INFO L290 TraceCheckUtils]: 57: Hoare triple {65484#(<= ~counter~0 6)} ~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; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:10,030 INFO L290 TraceCheckUtils]: 58: Hoare triple {65484#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:10,030 INFO L290 TraceCheckUtils]: 59: Hoare triple {65497#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:10,030 INFO L290 TraceCheckUtils]: 60: Hoare triple {65497#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:10,031 INFO L290 TraceCheckUtils]: 61: Hoare triple {65497#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:10,031 INFO L290 TraceCheckUtils]: 62: Hoare triple {65507#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:10,031 INFO L290 TraceCheckUtils]: 63: Hoare triple {65507#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 64: Hoare triple {65507#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65517#(<= |main_#t~post8| 8)} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 65: Hoare triple {65517#(<= |main_#t~post8| 8)} assume !(#t~post8 < 20);havoc #t~post8; {65312#false} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 20);havoc #t~post7; {65312#false} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#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; {65312#false} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 05:53:10,032 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 20);havoc #t~post6; {65312#false} is VALID [2022-04-28 05:53:10,033 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#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)); {65312#false} is VALID [2022-04-28 05:53:10,033 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 05:53:10,033 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 05:53:10,033 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 05:53:10,033 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:53:10,033 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#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)); {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 20);havoc #t~post6; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#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; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 20);havoc #t~post7; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 65: Hoare triple {65581#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {65312#false} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 64: Hoare triple {65585#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65581#(< |main_#t~post8| 20)} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 63: Hoare triple {65585#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65585#(< ~counter~0 20)} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 62: Hoare triple {65585#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {65585#(< ~counter~0 20)} is VALID [2022-04-28 05:53:10,450 INFO L290 TraceCheckUtils]: 61: Hoare triple {65595#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65585#(< ~counter~0 20)} is VALID [2022-04-28 05:53:10,450 INFO L290 TraceCheckUtils]: 60: Hoare triple {65595#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65595#(< ~counter~0 19)} is VALID [2022-04-28 05:53:10,450 INFO L290 TraceCheckUtils]: 59: Hoare triple {65595#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {65595#(< ~counter~0 19)} is VALID [2022-04-28 05:53:10,451 INFO L290 TraceCheckUtils]: 58: Hoare triple {65605#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65595#(< ~counter~0 19)} is VALID [2022-04-28 05:53:10,451 INFO L290 TraceCheckUtils]: 57: Hoare triple {65605#(< ~counter~0 18)} ~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; {65605#(< ~counter~0 18)} is VALID [2022-04-28 05:53:10,451 INFO L290 TraceCheckUtils]: 56: Hoare triple {65605#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {65605#(< ~counter~0 18)} is VALID [2022-04-28 05:53:10,452 INFO L290 TraceCheckUtils]: 55: Hoare triple {65605#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {65605#(< ~counter~0 18)} is VALID [2022-04-28 05:53:10,452 INFO L290 TraceCheckUtils]: 54: Hoare triple {65618#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65605#(< ~counter~0 18)} is VALID [2022-04-28 05:53:10,453 INFO L290 TraceCheckUtils]: 53: Hoare triple {65618#(< ~counter~0 17)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,453 INFO L290 TraceCheckUtils]: 52: Hoare triple {65618#(< ~counter~0 17)} assume !(~c~0 >= 2 * ~v~0); {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,453 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #104#return; {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,453 INFO L290 TraceCheckUtils]: 50: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,453 INFO L290 TraceCheckUtils]: 49: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,453 INFO L290 TraceCheckUtils]: 48: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,454 INFO L272 TraceCheckUtils]: 47: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,454 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #102#return; {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,454 INFO L290 TraceCheckUtils]: 45: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,454 INFO L290 TraceCheckUtils]: 44: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,454 INFO L290 TraceCheckUtils]: 43: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,454 INFO L272 TraceCheckUtils]: 42: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,455 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #100#return; {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,455 INFO L290 TraceCheckUtils]: 40: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,455 INFO L290 TraceCheckUtils]: 39: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,455 INFO L290 TraceCheckUtils]: 38: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,455 INFO L272 TraceCheckUtils]: 37: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,456 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #98#return; {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,456 INFO L290 TraceCheckUtils]: 35: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,456 INFO L290 TraceCheckUtils]: 34: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,456 INFO L290 TraceCheckUtils]: 33: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,456 INFO L272 TraceCheckUtils]: 32: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,456 INFO L290 TraceCheckUtils]: 31: Hoare triple {65618#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,457 INFO L290 TraceCheckUtils]: 30: Hoare triple {65691#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65618#(< ~counter~0 17)} is VALID [2022-04-28 05:53:10,457 INFO L290 TraceCheckUtils]: 29: Hoare triple {65691#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65691#(< ~counter~0 16)} is VALID [2022-04-28 05:53:10,457 INFO L290 TraceCheckUtils]: 28: Hoare triple {65691#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {65691#(< ~counter~0 16)} is VALID [2022-04-28 05:53:10,458 INFO L290 TraceCheckUtils]: 27: Hoare triple {65701#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65691#(< ~counter~0 16)} is VALID [2022-04-28 05:53:10,458 INFO L290 TraceCheckUtils]: 26: Hoare triple {65701#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65701#(< ~counter~0 15)} is VALID [2022-04-28 05:53:10,458 INFO L290 TraceCheckUtils]: 25: Hoare triple {65701#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {65701#(< ~counter~0 15)} is VALID [2022-04-28 05:53:10,459 INFO L290 TraceCheckUtils]: 24: Hoare triple {65711#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65701#(< ~counter~0 15)} is VALID [2022-04-28 05:53:10,459 INFO L290 TraceCheckUtils]: 23: Hoare triple {65711#(< ~counter~0 14)} ~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; {65711#(< ~counter~0 14)} is VALID [2022-04-28 05:53:10,460 INFO L290 TraceCheckUtils]: 22: Hoare triple {65711#(< ~counter~0 14)} assume !(~c~0 >= ~b~0); {65711#(< ~counter~0 14)} is VALID [2022-04-28 05:53:10,460 INFO L290 TraceCheckUtils]: 21: Hoare triple {65711#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {65711#(< ~counter~0 14)} is VALID [2022-04-28 05:53:10,460 INFO L290 TraceCheckUtils]: 20: Hoare triple {65724#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65711#(< ~counter~0 14)} is VALID [2022-04-28 05:53:10,461 INFO L290 TraceCheckUtils]: 19: Hoare triple {65724#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65724#(< ~counter~0 13)} is VALID [2022-04-28 05:53:10,461 INFO L290 TraceCheckUtils]: 18: Hoare triple {65724#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {65724#(< ~counter~0 13)} is VALID [2022-04-28 05:53:10,462 INFO L290 TraceCheckUtils]: 17: Hoare triple {65734#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65724#(< ~counter~0 13)} is VALID [2022-04-28 05:53:10,462 INFO L290 TraceCheckUtils]: 16: Hoare triple {65734#(< ~counter~0 12)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,462 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65311#true} {65734#(< ~counter~0 12)} #96#return; {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,462 INFO L290 TraceCheckUtils]: 14: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,462 INFO L290 TraceCheckUtils]: 13: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,462 INFO L290 TraceCheckUtils]: 12: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,463 INFO L272 TraceCheckUtils]: 11: Hoare triple {65734#(< ~counter~0 12)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,463 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65311#true} {65734#(< ~counter~0 12)} #94#return; {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,463 INFO L290 TraceCheckUtils]: 9: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,463 INFO L290 TraceCheckUtils]: 8: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,463 INFO L290 TraceCheckUtils]: 7: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,463 INFO L272 TraceCheckUtils]: 6: Hoare triple {65734#(< ~counter~0 12)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,464 INFO L290 TraceCheckUtils]: 5: Hoare triple {65734#(< ~counter~0 12)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,464 INFO L272 TraceCheckUtils]: 4: Hoare triple {65734#(< ~counter~0 12)} call #t~ret9 := main(); {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,464 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65734#(< ~counter~0 12)} {65311#true} #108#return; {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,464 INFO L290 TraceCheckUtils]: 2: Hoare triple {65734#(< ~counter~0 12)} assume true; {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {65734#(< ~counter~0 12)} is VALID [2022-04-28 05:53:10,465 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 05:53:10,465 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:53:10,465 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:10,465 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1292451434] [2022-04-28 05:53:10,465 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:10,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1835384384] [2022-04-28 05:53:10,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1835384384] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:10,466 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:10,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:53:10,466 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:10,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1506097589] [2022-04-28 05:53:10,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1506097589] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:10,466 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:10,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:53:10,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1195989787] [2022-04-28 05:53:10,466 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:10,466 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 05:53:10,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:10,467 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:10,518 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-28 05:53:10,518 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:53:10,518 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:10,518 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:53:10,518 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:10,519 INFO L87 Difference]: Start difference. First operand 813 states and 1106 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:13,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:13,494 INFO L93 Difference]: Finished difference Result 1433 states and 1997 transitions. [2022-04-28 05:53:13,494 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:53:13,494 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 05:53:13,494 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:13,494 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:13,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 05:53:13,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:13,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 05:53:13,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 239 transitions. [2022-04-28 05:53:13,683 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:13,723 INFO L225 Difference]: With dead ends: 1433 [2022-04-28 05:53:13,723 INFO L226 Difference]: Without dead ends: 975 [2022-04-28 05:53:13,725 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 131 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=309, Invalid=447, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:53:13,725 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 170 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 144 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 287 SdHoareTripleChecker+Invalid, 219 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:13,725 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 287 Invalid, 219 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 144 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:53:13,726 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 975 states. [2022-04-28 05:53:15,940 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 975 to 947. [2022-04-28 05:53:15,940 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:15,941 INFO L82 GeneralOperation]: Start isEquivalent. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:15,942 INFO L74 IsIncluded]: Start isIncluded. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:15,942 INFO L87 Difference]: Start difference. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:15,974 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:15,974 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 05:53:15,974 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 05:53:15,975 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:15,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:15,977 INFO L74 IsIncluded]: Start isIncluded. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 05:53:15,977 INFO L87 Difference]: Start difference. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 05:53:16,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:16,005 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 05:53:16,005 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 05:53:16,006 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:16,006 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:16,006 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:16,006 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:16,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:16,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 947 states to 947 states and 1263 transitions. [2022-04-28 05:53:16,044 INFO L78 Accepts]: Start accepts. Automaton has 947 states and 1263 transitions. Word has length 76 [2022-04-28 05:53:16,044 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:16,045 INFO L495 AbstractCegarLoop]: Abstraction has 947 states and 1263 transitions. [2022-04-28 05:53:16,045 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:16,045 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 947 states and 1263 transitions. [2022-04-28 05:53:18,225 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1263 edges. 1263 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:18,226 INFO L276 IsEmpty]: Start isEmpty. Operand 947 states and 1263 transitions. [2022-04-28 05:53:18,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-28 05:53:18,226 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:18,226 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:18,242 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:18,427 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-28 05:53:18,427 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:18,427 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:18,427 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 1 times [2022-04-28 05:53:18,427 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:18,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [818940718] [2022-04-28 05:53:18,428 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:18,428 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 2 times [2022-04-28 05:53:18,428 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:18,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1449111862] [2022-04-28 05:53:18,428 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:18,428 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:18,437 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:18,437 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1426554938] [2022-04-28 05:53:18,437 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:18,437 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:18,437 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:18,438 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:18,439 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-28 05:53:18,485 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:18,485 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:18,486 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-28 05:53:18,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:18,499 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:19,349 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:19,349 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,350 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,350 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,350 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 05:53:19,350 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72563#(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-28 05:53:19,350 INFO L290 TraceCheckUtils]: 17: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72563#(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-28 05:53:19,351 INFO L290 TraceCheckUtils]: 18: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {72563#(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-28 05:53:19,351 INFO L290 TraceCheckUtils]: 19: Hoare triple {72563#(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; {72573#(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-28 05:53:19,351 INFO L290 TraceCheckUtils]: 20: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72573#(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-28 05:53:19,352 INFO L290 TraceCheckUtils]: 21: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {72573#(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-28 05:53:19,352 INFO L290 TraceCheckUtils]: 22: Hoare triple {72573#(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; {72583#(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-28 05:53:19,353 INFO L290 TraceCheckUtils]: 23: Hoare triple {72583#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72583#(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-28 05:53:19,353 INFO L290 TraceCheckUtils]: 24: Hoare triple {72583#(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 !!(#t~post8 < 20);havoc #t~post8; {72583#(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-28 05:53:19,353 INFO L272 TraceCheckUtils]: 25: Hoare triple {72583#(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 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:19,353 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,353 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,353 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,354 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72583#(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))} #98#return; {72583#(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-28 05:53:19,354 INFO L272 TraceCheckUtils]: 30: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-28 05:53:19,354 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,354 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,354 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,355 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72583#(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))} #100#return; {72583#(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-28 05:53:19,355 INFO L272 TraceCheckUtils]: 35: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-28 05:53:19,355 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,355 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,355 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,356 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72583#(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))} #102#return; {72583#(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-28 05:53:19,356 INFO L272 TraceCheckUtils]: 40: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-28 05:53:19,356 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,356 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,356 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,357 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72583#(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; {72583#(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-28 05:53:19,357 INFO L290 TraceCheckUtils]: 45: Hoare triple {72583#(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);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72653#(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-28 05:53:19,358 INFO L290 TraceCheckUtils]: 46: Hoare triple {72653#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72653#(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-28 05:53:19,358 INFO L290 TraceCheckUtils]: 47: Hoare triple {72653#(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 !!(#t~post8 < 20);havoc #t~post8; {72653#(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-28 05:53:19,358 INFO L272 TraceCheckUtils]: 48: Hoare triple {72653#(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 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:19,358 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,358 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,358 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,359 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72653#(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))} #98#return; {72653#(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-28 05:53:19,359 INFO L272 TraceCheckUtils]: 53: Hoare triple {72653#(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)); {72510#true} is VALID [2022-04-28 05:53:19,359 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:19,360 INFO L290 TraceCheckUtils]: 55: Hoare triple {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:19,360 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:19,361 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72653#(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))} #100#return; {72653#(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-28 05:53:19,361 INFO L272 TraceCheckUtils]: 58: Hoare triple {72653#(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)); {72510#true} is VALID [2022-04-28 05:53:19,361 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,361 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,361 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,362 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72653#(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))} #102#return; {72653#(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-28 05:53:19,362 INFO L272 TraceCheckUtils]: 63: Hoare triple {72653#(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)); {72510#true} is VALID [2022-04-28 05:53:19,362 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:19,362 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:19,362 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:19,363 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72653#(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; {72653#(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-28 05:53:19,363 INFO L290 TraceCheckUtils]: 68: Hoare triple {72653#(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); {72653#(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-28 05:53:19,364 INFO L290 TraceCheckUtils]: 69: Hoare triple {72653#(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; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:19,364 INFO L290 TraceCheckUtils]: 70: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:19,364 INFO L290 TraceCheckUtils]: 71: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:19,365 INFO L290 TraceCheckUtils]: 72: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:19,365 INFO L290 TraceCheckUtils]: 73: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {72741#(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_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:19,366 INFO L290 TraceCheckUtils]: 74: Hoare triple {72741#(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_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72741#(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_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:19,366 INFO L290 TraceCheckUtils]: 75: Hoare triple {72741#(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_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {72741#(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_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:19,367 INFO L290 TraceCheckUtils]: 76: Hoare triple {72741#(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_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:19,367 INFO L272 TraceCheckUtils]: 77: Hoare triple {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= 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)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:19,368 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:19,368 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 05:53:19,368 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 05:53:19,368 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 05:53:19,368 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:32,740 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 05:53:32,740 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 05:53:32,740 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:32,741 INFO L272 TraceCheckUtils]: 77: Hoare triple {72775#(= (+ (* 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)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:32,742 INFO L290 TraceCheckUtils]: 76: Hoare triple {72779#(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); {72775#(= (+ (* 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-28 05:53:32,742 INFO L290 TraceCheckUtils]: 75: Hoare triple {72779#(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 !!(#t~post6 < 20);havoc #t~post6; {72779#(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-28 05:53:32,742 INFO L290 TraceCheckUtils]: 74: Hoare triple {72779#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72779#(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-28 05:53:32,859 INFO L290 TraceCheckUtils]: 73: Hoare triple {72789#(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; {72779#(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-28 05:53:32,860 INFO L290 TraceCheckUtils]: 72: Hoare triple {72789#(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); {72789#(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-28 05:53:32,860 INFO L290 TraceCheckUtils]: 71: Hoare triple {72789#(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 !!(#t~post7 < 20);havoc #t~post7; {72789#(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-28 05:53:32,861 INFO L290 TraceCheckUtils]: 70: Hoare triple {72789#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72789#(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-28 05:53:32,913 INFO L290 TraceCheckUtils]: 69: Hoare triple {72802#(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; {72789#(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-28 05:53:32,913 INFO L290 TraceCheckUtils]: 68: Hoare triple {72802#(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); {72802#(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-28 05:53:32,914 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72802#(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))))} #104#return; {72802#(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-28 05:53:32,914 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:32,914 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:32,914 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:32,914 INFO L272 TraceCheckUtils]: 63: Hoare triple {72802#(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)); {72510#true} is VALID [2022-04-28 05:53:32,915 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72802#(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))))} #102#return; {72802#(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-28 05:53:32,915 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:32,915 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:32,915 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:32,915 INFO L272 TraceCheckUtils]: 58: Hoare triple {72802#(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)); {72510#true} is VALID [2022-04-28 05:53:32,916 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72839#(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))))} #100#return; {72802#(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-28 05:53:32,916 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:32,917 INFO L290 TraceCheckUtils]: 55: Hoare triple {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:32,917 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:32,917 INFO L272 TraceCheckUtils]: 53: Hoare triple {72839#(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)); {72510#true} is VALID [2022-04-28 05:53:32,918 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72839#(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))))} #98#return; {72839#(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-28 05:53:32,918 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:32,918 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:32,918 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:32,918 INFO L272 TraceCheckUtils]: 48: Hoare triple {72839#(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 ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:32,919 INFO L290 TraceCheckUtils]: 47: Hoare triple {72839#(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))))} assume !!(#t~post8 < 20);havoc #t~post8; {72839#(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-28 05:53:32,919 INFO L290 TraceCheckUtils]: 46: Hoare triple {72839#(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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72839#(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-28 05:53:33,029 INFO L290 TraceCheckUtils]: 45: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72839#(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-28 05:53:33,030 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,030 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,030 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,030 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,030 INFO L272 TraceCheckUtils]: 40: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,031 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,031 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,031 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,031 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,031 INFO L272 TraceCheckUtils]: 35: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,032 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #100#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,032 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,032 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,032 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,032 INFO L272 TraceCheckUtils]: 30: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,033 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #98#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,033 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,033 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,033 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,033 INFO L272 TraceCheckUtils]: 25: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,034 INFO L290 TraceCheckUtils]: 24: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(#t~post8 < 20);havoc #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,034 INFO L290 TraceCheckUtils]: 23: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,035 INFO L290 TraceCheckUtils]: 22: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,035 INFO L290 TraceCheckUtils]: 21: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(#t~post7 < 20);havoc #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:53:33,052 INFO L290 TraceCheckUtils]: 20: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:53:33,052 INFO L290 TraceCheckUtils]: 19: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) 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; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:53:33,053 INFO L290 TraceCheckUtils]: 18: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post6 < 20);havoc #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,053 INFO L290 TraceCheckUtils]: 17: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,054 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,054 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,054 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,055 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-28 05:53:33,055 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 05:53:33,055 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 05:53:33,055 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,055 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {72510#true} is VALID [2022-04-28 05:53:33,055 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 05:53:33,055 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 05:53:33,055 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:33,056 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1449111862] [2022-04-28 05:53:33,056 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:33,056 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1426554938] [2022-04-28 05:53:33,056 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1426554938] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:33,056 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:33,056 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-28 05:53:33,056 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:33,056 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [818940718] [2022-04-28 05:53:33,056 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [818940718] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:33,056 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:33,056 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:53:33,056 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1435196481] [2022-04-28 05:53:33,056 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:33,057 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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 81 [2022-04-28 05:53:33,057 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:33,057 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-28 05:53:33,118 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:33,119 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:53:33,119 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:33,119 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:53:33,119 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=392, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:33,119 INFO L87 Difference]: Start difference. First operand 947 states and 1263 transitions. Second operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-28 05:53:38,145 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:38,146 INFO L93 Difference]: Finished difference Result 1025 states and 1371 transitions. [2022-04-28 05:53:38,146 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:53:38,146 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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 81 [2022-04-28 05:53:38,146 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:38,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-28 05:53:38,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 05:53:38,147 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-28 05:53:38,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 05:53:38,148 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 162 transitions. [2022-04-28 05:53:38,324 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:38,369 INFO L225 Difference]: With dead ends: 1025 [2022-04-28 05:53:38,369 INFO L226 Difference]: Without dead ends: 1022 [2022-04-28 05:53:38,370 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 140 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 111 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=132, Invalid=680, Unknown=0, NotChecked=0, Total=812 [2022-04-28 05:53:38,370 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 74 mSDsluCounter, 438 mSDsCounter, 0 mSdLazyCounter, 760 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 501 SdHoareTripleChecker+Invalid, 819 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 760 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:38,370 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 501 Invalid, 819 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 760 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-28 05:53:38,371 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1022 states. [2022-04-28 05:53:40,595 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1022 to 957. [2022-04-28 05:53:40,595 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:40,596 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:40,597 INFO L74 IsIncluded]: Start isIncluded. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:40,598 INFO L87 Difference]: Start difference. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:40,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:40,628 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 05:53:40,628 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 05:53:40,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:40,629 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:40,631 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 05:53:40,631 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 05:53:40,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:40,661 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 05:53:40,661 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 05:53:40,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:40,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:40,663 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:40,663 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:40,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:40,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1272 transitions. [2022-04-28 05:53:40,703 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1272 transitions. Word has length 81 [2022-04-28 05:53:40,711 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:40,712 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1272 transitions. [2022-04-28 05:53:40,712 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-28 05:53:40,712 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1272 transitions. [2022-04-28 05:53:42,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1272 edges. 1272 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:42,945 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1272 transitions. [2022-04-28 05:53:42,946 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-28 05:53:42,946 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:42,946 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:42,964 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:43,146 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-28 05:53:43,147 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:43,147 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:43,147 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 1 times [2022-04-28 05:53:43,147 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:43,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1951975465] [2022-04-28 05:53:43,148 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:43,148 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 2 times [2022-04-28 05:53:43,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:43,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [586706473] [2022-04-28 05:53:43,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:43,148 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:43,161 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:43,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [831129235] [2022-04-28 05:53:43,161 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:43,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:43,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:43,162 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:43,163 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-28 05:53:43,218 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:43,218 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:43,219 INFO L263 TraceCheckSpWp]: Trace formula consists of 261 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:53:43,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:43,236 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:43,587 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 05:53:43,587 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,588 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79047#(<= ~counter~0 0)} {79039#true} #108#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,588 INFO L272 TraceCheckUtils]: 4: Hoare triple {79047#(<= ~counter~0 0)} call #t~ret9 := main(); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,588 INFO L290 TraceCheckUtils]: 5: Hoare triple {79047#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,589 INFO L272 TraceCheckUtils]: 6: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,590 INFO L290 TraceCheckUtils]: 9: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,590 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #94#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,590 INFO L272 TraceCheckUtils]: 11: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,591 INFO L290 TraceCheckUtils]: 12: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,591 INFO L290 TraceCheckUtils]: 13: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,591 INFO L290 TraceCheckUtils]: 14: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,591 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #96#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,592 INFO L290 TraceCheckUtils]: 16: Hoare triple {79047#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:43,593 INFO L290 TraceCheckUtils]: 17: Hoare triple {79047#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:43,593 INFO L290 TraceCheckUtils]: 18: Hoare triple {79096#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:43,594 INFO L290 TraceCheckUtils]: 19: Hoare triple {79096#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:43,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {79096#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:43,595 INFO L290 TraceCheckUtils]: 21: Hoare triple {79106#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:43,595 INFO L290 TraceCheckUtils]: 22: Hoare triple {79106#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:43,595 INFO L290 TraceCheckUtils]: 23: Hoare triple {79106#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:43,596 INFO L290 TraceCheckUtils]: 24: Hoare triple {79106#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:43,596 INFO L290 TraceCheckUtils]: 25: Hoare triple {79119#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:43,596 INFO L290 TraceCheckUtils]: 26: Hoare triple {79119#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:43,597 INFO L290 TraceCheckUtils]: 27: Hoare triple {79119#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:43,597 INFO L290 TraceCheckUtils]: 28: Hoare triple {79129#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:43,598 INFO L290 TraceCheckUtils]: 29: Hoare triple {79129#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:43,598 INFO L290 TraceCheckUtils]: 30: Hoare triple {79129#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,598 INFO L290 TraceCheckUtils]: 31: Hoare triple {79139#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,599 INFO L272 TraceCheckUtils]: 32: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,599 INFO L290 TraceCheckUtils]: 33: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,600 INFO L290 TraceCheckUtils]: 34: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,600 INFO L290 TraceCheckUtils]: 35: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,600 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #98#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,601 INFO L272 TraceCheckUtils]: 37: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,601 INFO L290 TraceCheckUtils]: 38: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,601 INFO L290 TraceCheckUtils]: 39: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,602 INFO L290 TraceCheckUtils]: 40: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,602 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #100#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,603 INFO L272 TraceCheckUtils]: 42: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,603 INFO L290 TraceCheckUtils]: 43: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,603 INFO L290 TraceCheckUtils]: 44: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,603 INFO L290 TraceCheckUtils]: 45: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,604 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #102#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,604 INFO L272 TraceCheckUtils]: 47: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,605 INFO L290 TraceCheckUtils]: 48: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,605 INFO L290 TraceCheckUtils]: 49: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,605 INFO L290 TraceCheckUtils]: 50: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,605 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #104#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,606 INFO L290 TraceCheckUtils]: 52: Hoare triple {79139#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:43,606 INFO L290 TraceCheckUtils]: 53: Hoare triple {79139#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,607 INFO L290 TraceCheckUtils]: 54: Hoare triple {79209#(<= ~counter~0 6)} assume !!(#t~post8 < 20);havoc #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,607 INFO L272 TraceCheckUtils]: 55: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,607 INFO L290 TraceCheckUtils]: 56: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,608 INFO L290 TraceCheckUtils]: 57: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,608 INFO L290 TraceCheckUtils]: 58: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,609 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #98#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,609 INFO L272 TraceCheckUtils]: 60: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,609 INFO L290 TraceCheckUtils]: 61: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,610 INFO L290 TraceCheckUtils]: 62: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,610 INFO L290 TraceCheckUtils]: 63: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,610 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #100#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,611 INFO L272 TraceCheckUtils]: 65: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,611 INFO L290 TraceCheckUtils]: 66: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,611 INFO L290 TraceCheckUtils]: 67: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,612 INFO L290 TraceCheckUtils]: 68: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,612 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #102#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,612 INFO L272 TraceCheckUtils]: 70: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,613 INFO L290 TraceCheckUtils]: 71: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,613 INFO L290 TraceCheckUtils]: 72: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,614 INFO L290 TraceCheckUtils]: 73: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,615 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #104#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,615 INFO L290 TraceCheckUtils]: 75: Hoare triple {79209#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,615 INFO L290 TraceCheckUtils]: 76: Hoare triple {79209#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:43,616 INFO L290 TraceCheckUtils]: 77: Hoare triple {79209#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:43,616 INFO L290 TraceCheckUtils]: 78: Hoare triple {79282#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:43,616 INFO L290 TraceCheckUtils]: 79: Hoare triple {79282#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:43,617 INFO L290 TraceCheckUtils]: 80: Hoare triple {79282#(<= ~counter~0 7)} ~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; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:43,617 INFO L290 TraceCheckUtils]: 81: Hoare triple {79282#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79295#(<= |main_#t~post6| 7)} is VALID [2022-04-28 05:53:43,617 INFO L290 TraceCheckUtils]: 82: Hoare triple {79295#(<= |main_#t~post6| 7)} assume !(#t~post6 < 20);havoc #t~post6; {79040#false} is VALID [2022-04-28 05:53:43,617 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#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)); {79040#false} is VALID [2022-04-28 05:53:43,617 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 05:53:43,617 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 05:53:43,618 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 05:53:43,618 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 88 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:53:43,618 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:44,057 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 05:53:44,057 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 05:53:44,057 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 05:53:44,057 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#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)); {79040#false} is VALID [2022-04-28 05:53:44,059 INFO L290 TraceCheckUtils]: 82: Hoare triple {79323#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {79040#false} is VALID [2022-04-28 05:53:44,059 INFO L290 TraceCheckUtils]: 81: Hoare triple {79327#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79323#(< |main_#t~post6| 20)} is VALID [2022-04-28 05:53:44,060 INFO L290 TraceCheckUtils]: 80: Hoare triple {79327#(< ~counter~0 20)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79327#(< ~counter~0 20)} is VALID [2022-04-28 05:53:44,060 INFO L290 TraceCheckUtils]: 79: Hoare triple {79327#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {79327#(< ~counter~0 20)} is VALID [2022-04-28 05:53:44,060 INFO L290 TraceCheckUtils]: 78: Hoare triple {79327#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {79327#(< ~counter~0 20)} is VALID [2022-04-28 05:53:44,062 INFO L290 TraceCheckUtils]: 77: Hoare triple {79340#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79327#(< ~counter~0 20)} is VALID [2022-04-28 05:53:44,062 INFO L290 TraceCheckUtils]: 76: Hoare triple {79340#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,062 INFO L290 TraceCheckUtils]: 75: Hoare triple {79340#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,063 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #104#return; {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,063 INFO L290 TraceCheckUtils]: 73: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,063 INFO L290 TraceCheckUtils]: 72: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,063 INFO L290 TraceCheckUtils]: 71: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,063 INFO L272 TraceCheckUtils]: 70: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,067 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #102#return; {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,067 INFO L290 TraceCheckUtils]: 68: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,067 INFO L290 TraceCheckUtils]: 67: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,067 INFO L290 TraceCheckUtils]: 66: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,067 INFO L272 TraceCheckUtils]: 65: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,068 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #100#return; {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,068 INFO L290 TraceCheckUtils]: 63: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,068 INFO L290 TraceCheckUtils]: 62: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,068 INFO L290 TraceCheckUtils]: 61: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,068 INFO L272 TraceCheckUtils]: 60: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,069 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #98#return; {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,069 INFO L290 TraceCheckUtils]: 58: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,070 INFO L290 TraceCheckUtils]: 57: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,070 INFO L290 TraceCheckUtils]: 56: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,070 INFO L272 TraceCheckUtils]: 55: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,070 INFO L290 TraceCheckUtils]: 54: Hoare triple {79340#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,071 INFO L290 TraceCheckUtils]: 53: Hoare triple {79413#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79340#(< ~counter~0 19)} is VALID [2022-04-28 05:53:44,072 INFO L290 TraceCheckUtils]: 52: Hoare triple {79413#(< ~counter~0 18)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79413#(< ~counter~0 18)} is VALID [2022-04-28 05:53:44,072 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #104#return; {79413#(< ~counter~0 18)} is VALID [2022-04-28 05:53:44,073 INFO L290 TraceCheckUtils]: 50: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,073 INFO L290 TraceCheckUtils]: 49: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,073 INFO L290 TraceCheckUtils]: 48: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,073 INFO L272 TraceCheckUtils]: 47: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,073 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #102#return; {79413#(< ~counter~0 18)} is VALID [2022-04-28 05:53:44,073 INFO L290 TraceCheckUtils]: 45: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,073 INFO L290 TraceCheckUtils]: 44: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,073 INFO L290 TraceCheckUtils]: 43: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,074 INFO L272 TraceCheckUtils]: 42: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,074 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #100#return; {79413#(< ~counter~0 18)} is VALID [2022-04-28 05:53:44,074 INFO L290 TraceCheckUtils]: 40: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,074 INFO L290 TraceCheckUtils]: 39: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,074 INFO L290 TraceCheckUtils]: 38: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,074 INFO L272 TraceCheckUtils]: 37: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,075 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #98#return; {79413#(< ~counter~0 18)} is VALID [2022-04-28 05:53:44,075 INFO L290 TraceCheckUtils]: 35: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,075 INFO L290 TraceCheckUtils]: 33: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,075 INFO L272 TraceCheckUtils]: 32: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,075 INFO L290 TraceCheckUtils]: 31: Hoare triple {79413#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {79413#(< ~counter~0 18)} is VALID [2022-04-28 05:53:44,076 INFO L290 TraceCheckUtils]: 30: Hoare triple {79483#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79413#(< ~counter~0 18)} is VALID [2022-04-28 05:53:44,076 INFO L290 TraceCheckUtils]: 29: Hoare triple {79483#(< ~counter~0 17)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79483#(< ~counter~0 17)} is VALID [2022-04-28 05:53:44,077 INFO L290 TraceCheckUtils]: 28: Hoare triple {79483#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {79483#(< ~counter~0 17)} is VALID [2022-04-28 05:53:44,077 INFO L290 TraceCheckUtils]: 27: Hoare triple {79493#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79483#(< ~counter~0 17)} is VALID [2022-04-28 05:53:44,078 INFO L290 TraceCheckUtils]: 26: Hoare triple {79493#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79493#(< ~counter~0 16)} is VALID [2022-04-28 05:53:44,078 INFO L290 TraceCheckUtils]: 25: Hoare triple {79493#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {79493#(< ~counter~0 16)} is VALID [2022-04-28 05:53:44,078 INFO L290 TraceCheckUtils]: 24: Hoare triple {79503#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79493#(< ~counter~0 16)} is VALID [2022-04-28 05:53:44,079 INFO L290 TraceCheckUtils]: 23: Hoare triple {79503#(< ~counter~0 15)} ~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; {79503#(< ~counter~0 15)} is VALID [2022-04-28 05:53:44,079 INFO L290 TraceCheckUtils]: 22: Hoare triple {79503#(< ~counter~0 15)} assume !(~c~0 >= ~b~0); {79503#(< ~counter~0 15)} is VALID [2022-04-28 05:53:44,079 INFO L290 TraceCheckUtils]: 21: Hoare triple {79503#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {79503#(< ~counter~0 15)} is VALID [2022-04-28 05:53:44,080 INFO L290 TraceCheckUtils]: 20: Hoare triple {79516#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79503#(< ~counter~0 15)} is VALID [2022-04-28 05:53:44,080 INFO L290 TraceCheckUtils]: 19: Hoare triple {79516#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79516#(< ~counter~0 14)} is VALID [2022-04-28 05:53:44,080 INFO L290 TraceCheckUtils]: 18: Hoare triple {79516#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {79516#(< ~counter~0 14)} is VALID [2022-04-28 05:53:44,081 INFO L290 TraceCheckUtils]: 17: Hoare triple {79526#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79516#(< ~counter~0 14)} is VALID [2022-04-28 05:53:44,081 INFO L290 TraceCheckUtils]: 16: Hoare triple {79526#(< ~counter~0 13)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,082 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79039#true} {79526#(< ~counter~0 13)} #96#return; {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,082 INFO L272 TraceCheckUtils]: 11: Hoare triple {79526#(< ~counter~0 13)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,082 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79039#true} {79526#(< ~counter~0 13)} #94#return; {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,082 INFO L290 TraceCheckUtils]: 9: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:44,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:44,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:44,083 INFO L272 TraceCheckUtils]: 6: Hoare triple {79526#(< ~counter~0 13)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:44,083 INFO L290 TraceCheckUtils]: 5: Hoare triple {79526#(< ~counter~0 13)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,083 INFO L272 TraceCheckUtils]: 4: Hoare triple {79526#(< ~counter~0 13)} call #t~ret9 := main(); {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,083 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79526#(< ~counter~0 13)} {79039#true} #108#return; {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,084 INFO L290 TraceCheckUtils]: 2: Hoare triple {79526#(< ~counter~0 13)} assume true; {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,084 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {79526#(< ~counter~0 13)} is VALID [2022-04-28 05:53:44,084 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 05:53:44,084 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 24 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:53:44,084 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:44,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [586706473] [2022-04-28 05:53:44,085 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:44,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [831129235] [2022-04-28 05:53:44,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [831129235] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:44,085 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:44,085 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 05:53:44,085 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:44,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1951975465] [2022-04-28 05:53:44,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1951975465] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:44,085 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:44,085 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:53:44,085 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1230575583] [2022-04-28 05:53:44,085 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:44,086 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 05:53:44,086 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:44,086 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:44,136 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:44,137 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:53:44,137 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:44,138 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:53:44,139 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:53:44,139 INFO L87 Difference]: Start difference. First operand 957 states and 1272 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:46,918 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:46,918 INFO L93 Difference]: Finished difference Result 966 states and 1279 transitions. [2022-04-28 05:53:46,918 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:53:46,919 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 05:53:46,919 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:46,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:46,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 05:53:46,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:46,921 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 05:53:46,921 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 180 transitions. [2022-04-28 05:53:47,067 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:47,114 INFO L225 Difference]: With dead ends: 966 [2022-04-28 05:53:47,114 INFO L226 Difference]: Without dead ends: 959 [2022-04-28 05:53:47,115 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=246, Invalid=354, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:53:47,115 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 104 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 282 SdHoareTripleChecker+Invalid, 178 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:47,115 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [104 Valid, 282 Invalid, 178 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:53:47,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 959 states. [2022-04-28 05:53:49,378 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 959 to 957. [2022-04-28 05:53:49,378 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:49,379 INFO L82 GeneralOperation]: Start isEquivalent. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:49,380 INFO L74 IsIncluded]: Start isIncluded. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:49,380 INFO L87 Difference]: Start difference. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:49,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:49,416 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 05:53:49,416 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 05:53:49,417 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:49,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:49,419 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 05:53:49,419 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 05:53:49,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:49,453 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 05:53:49,453 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 05:53:49,454 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:49,454 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:49,454 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:49,454 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:49,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:49,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1270 transitions. [2022-04-28 05:53:49,493 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1270 transitions. Word has length 87 [2022-04-28 05:53:49,493 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:49,493 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1270 transitions. [2022-04-28 05:53:49,494 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:49,494 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1270 transitions. [2022-04-28 05:53:51,859 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1270 edges. 1270 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:51,859 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1270 transitions. [2022-04-28 05:53:51,860 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-28 05:53:51,860 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:51,860 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:51,876 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:52,060 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:52,060 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:52,060 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:52,060 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 3 times [2022-04-28 05:53:52,061 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:52,061 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [114350216] [2022-04-28 05:53:52,061 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:52,061 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 4 times [2022-04-28 05:53:52,061 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:52,061 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1658925179] [2022-04-28 05:53:52,061 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:52,061 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:52,071 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:52,071 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [287703528] [2022-04-28 05:53:52,072 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:52,072 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:52,072 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:52,075 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:53:52,075 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-28 05:53:52,125 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:52,125 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:52,127 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 80 conjunts are in the unsatisfiable core [2022-04-28 05:53:52,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:52,142 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:53,273 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 05:53:53,273 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,274 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 05:53:53,275 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85407#(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-28 05:53:53,275 INFO L290 TraceCheckUtils]: 17: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85407#(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-28 05:53:53,276 INFO L290 TraceCheckUtils]: 18: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {85407#(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-28 05:53:53,276 INFO L290 TraceCheckUtils]: 19: Hoare triple {85407#(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; {85417#(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-28 05:53:53,276 INFO L290 TraceCheckUtils]: 20: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85417#(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-28 05:53:53,277 INFO L290 TraceCheckUtils]: 21: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {85417#(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-28 05:53:53,277 INFO L290 TraceCheckUtils]: 22: Hoare triple {85417#(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); {85417#(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-28 05:53:53,278 INFO L290 TraceCheckUtils]: 23: Hoare triple {85417#(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; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,278 INFO L290 TraceCheckUtils]: 24: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,278 INFO L290 TraceCheckUtils]: 25: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,279 INFO L290 TraceCheckUtils]: 26: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85440#(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) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,279 INFO L290 TraceCheckUtils]: 27: Hoare triple {85440#(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) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85440#(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) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,280 INFO L290 TraceCheckUtils]: 28: Hoare triple {85440#(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) (= main_~q~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {85440#(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) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,280 INFO L290 TraceCheckUtils]: 29: Hoare triple {85440#(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) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,280 INFO L290 TraceCheckUtils]: 30: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,281 INFO L290 TraceCheckUtils]: 31: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,281 INFO L272 TraceCheckUtils]: 32: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:53,281 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:53,281 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:53,281 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,282 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,282 INFO L272 TraceCheckUtils]: 37: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:53,282 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:53,282 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:53,282 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,283 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #100#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,283 INFO L272 TraceCheckUtils]: 42: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:53,283 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:53,283 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:53,283 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,284 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #102#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,284 INFO L272 TraceCheckUtils]: 47: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:53,284 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:53,284 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:53,284 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,285 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #104#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,285 INFO L290 TraceCheckUtils]: 52: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85520#(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) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,286 INFO L290 TraceCheckUtils]: 53: Hoare triple {85520#(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) (= main_~d~0 2) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85520#(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) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,286 INFO L290 TraceCheckUtils]: 54: Hoare triple {85520#(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) (= main_~d~0 2) (= main_~q~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {85520#(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) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:53:53,286 INFO L272 TraceCheckUtils]: 55: Hoare triple {85520#(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) (= main_~d~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:53,286 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:53,287 INFO L290 TraceCheckUtils]: 57: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:53,287 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:53,288 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85520#(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) (= main_~d~0 2) (= main_~q~0 1))} #98#return; {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,288 INFO L272 TraceCheckUtils]: 60: Hoare triple {85544#(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) (= main_~d~0 2) (= 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)); {85354#true} is VALID [2022-04-28 05:53:53,288 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:53,288 INFO L290 TraceCheckUtils]: 62: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:53,289 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:53,289 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,289 INFO L272 TraceCheckUtils]: 65: Hoare triple {85544#(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) (= main_~d~0 2) (= 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)); {85354#true} is VALID [2022-04-28 05:53:53,290 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:53,290 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:53,290 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:53,290 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,291 INFO L272 TraceCheckUtils]: 70: Hoare triple {85544#(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) (= main_~d~0 2) (= 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)); {85354#true} is VALID [2022-04-28 05:53:53,291 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:53,291 INFO L290 TraceCheckUtils]: 72: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:53,291 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:53,292 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,292 INFO L290 TraceCheckUtils]: 75: Hoare triple {85544#(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) (= main_~d~0 2) (= 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); {85544#(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) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,294 INFO L290 TraceCheckUtils]: 76: Hoare triple {85544#(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) (= main_~d~0 2) (= 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; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,294 INFO L290 TraceCheckUtils]: 77: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,295 INFO L290 TraceCheckUtils]: 78: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,295 INFO L290 TraceCheckUtils]: 79: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:53,296 INFO L290 TraceCheckUtils]: 80: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:53,296 INFO L290 TraceCheckUtils]: 81: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:53,296 INFO L290 TraceCheckUtils]: 82: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:53,297 INFO L290 TraceCheckUtils]: 83: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !(0 != ~b~0); {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:53,298 INFO L272 TraceCheckUtils]: 84: Hoare triple {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 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)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:53,298 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:53,298 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 05:53:53,298 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 05:53:53,299 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 52 proven. 35 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-28 05:53:53,299 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:14,915 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 05:55:14,915 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 05:55:14,916 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:55:14,916 INFO L272 TraceCheckUtils]: 84: Hoare triple {85643#(= (+ (* 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)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:55:14,917 INFO L290 TraceCheckUtils]: 83: Hoare triple {85647#(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); {85643#(= (+ (* 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-28 05:55:14,917 INFO L290 TraceCheckUtils]: 82: Hoare triple {85647#(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 !!(#t~post6 < 20);havoc #t~post6; {85647#(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-28 05:55:14,918 INFO L290 TraceCheckUtils]: 81: Hoare triple {85647#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85647#(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-28 05:55:16,866 INFO L290 TraceCheckUtils]: 80: Hoare triple {85657#(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; {85647#(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-28 05:55:16,867 INFO L290 TraceCheckUtils]: 79: Hoare triple {85657#(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); {85657#(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-28 05:55:16,867 INFO L290 TraceCheckUtils]: 78: Hoare triple {85657#(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 !!(#t~post7 < 20);havoc #t~post7; {85657#(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-28 05:55:16,868 INFO L290 TraceCheckUtils]: 77: Hoare triple {85657#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85657#(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-28 05:55:16,902 INFO L290 TraceCheckUtils]: 76: Hoare triple {85670#(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; {85657#(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-28 05:55:16,903 INFO L290 TraceCheckUtils]: 75: Hoare triple {85670#(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); {85670#(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-28 05:55:16,904 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {85670#(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-28 05:55:16,904 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:16,904 INFO L290 TraceCheckUtils]: 72: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:16,905 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:16,905 INFO L272 TraceCheckUtils]: 70: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:16,906 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:16,906 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:16,906 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:16,906 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:16,906 INFO L272 TraceCheckUtils]: 65: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:16,907 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85709#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:16,907 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:16,907 INFO L290 TraceCheckUtils]: 62: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:16,908 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:16,908 INFO L272 TraceCheckUtils]: 60: Hoare triple {85709#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:16,909 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85725#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {85709#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:16,909 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:16,909 INFO L290 TraceCheckUtils]: 57: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:16,910 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:16,910 INFO L272 TraceCheckUtils]: 55: Hoare triple {85725#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:16,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {85725#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 20);havoc #t~post8; {85725#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:16,911 INFO L290 TraceCheckUtils]: 53: Hoare triple {85725#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85725#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:18,081 INFO L290 TraceCheckUtils]: 52: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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; {85725#(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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:18,082 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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-28 05:55:18,082 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:18,082 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:18,082 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:18,082 INFO L272 TraceCheckUtils]: 47: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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)); {85354#true} is VALID [2022-04-28 05:55:18,083 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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-28 05:55:18,083 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:18,083 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:18,083 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:18,083 INFO L272 TraceCheckUtils]: 42: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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)); {85354#true} is VALID [2022-04-28 05:55:18,084 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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))))} #100#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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-28 05:55:18,084 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:18,084 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:18,084 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:18,084 INFO L272 TraceCheckUtils]: 37: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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)); {85354#true} is VALID [2022-04-28 05:55:18,085 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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))))} #98#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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-28 05:55:18,085 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:18,085 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:18,085 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:18,085 INFO L272 TraceCheckUtils]: 32: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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)); {85354#true} is VALID [2022-04-28 05:55:18,086 INFO L290 TraceCheckUtils]: 31: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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 !!(#t~post8 < 20);havoc #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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-28 05:55:18,087 INFO L290 TraceCheckUtils]: 30: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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-28 05:55:18,088 INFO L290 TraceCheckUtils]: 29: Hoare triple {85817#(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; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~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-28 05:55:18,088 INFO L290 TraceCheckUtils]: 28: Hoare triple {85817#(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 !!(#t~post7 < 20);havoc #t~post7; {85817#(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-28 05:55:18,089 INFO L290 TraceCheckUtils]: 27: Hoare triple {85817#(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))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85817#(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-28 05:55:18,091 INFO L290 TraceCheckUtils]: 26: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85817#(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-28 05:55:18,091 INFO L290 TraceCheckUtils]: 25: Hoare triple {85354#true} assume !!(#t~post6 < 20);havoc #t~post6; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 24: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 23: Hoare triple {85354#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; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 22: Hoare triple {85354#true} assume !(~c~0 >= ~b~0); {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 21: Hoare triple {85354#true} assume !!(#t~post7 < 20);havoc #t~post7; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 20: Hoare triple {85354#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 19: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 18: Hoare triple {85354#true} assume !!(#t~post6 < 20);havoc #t~post6; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 17: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:18,091 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {85354#true} is VALID [2022-04-28 05:55:18,092 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 05:55:18,093 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 65 proven. 19 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-04-28 05:55:18,093 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:18,093 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1658925179] [2022-04-28 05:55:18,093 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:18,093 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [287703528] [2022-04-28 05:55:18,093 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [287703528] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:18,093 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:18,093 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 26 [2022-04-28 05:55:18,093 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:18,094 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [114350216] [2022-04-28 05:55:18,094 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [114350216] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:18,094 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:18,094 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 05:55:18,094 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1296912541] [2022-04-28 05:55:18,094 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:18,094 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 05:55:18,094 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:18,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:18,163 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:18,163 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 05:55:18,163 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:18,163 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 05:55:18,163 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=537, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:55:18,164 INFO L87 Difference]: Start difference. First operand 957 states and 1270 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:24,403 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:24,403 INFO L93 Difference]: Finished difference Result 1073 states and 1433 transitions. [2022-04-28 05:55:24,403 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:55:24,403 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 05:55:24,403 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:24,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:24,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 05:55:24,405 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:24,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 05:55:24,406 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 202 transitions. [2022-04-28 05:55:24,639 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:24,685 INFO L225 Difference]: With dead ends: 1073 [2022-04-28 05:55:24,685 INFO L226 Difference]: Without dead ends: 1070 [2022-04-28 05:55:24,686 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 150 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=154, Invalid=776, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:55:24,686 INFO L413 NwaCegarLoop]: 75 mSDtfsCounter, 91 mSDsluCounter, 551 mSDsCounter, 0 mSdLazyCounter, 1071 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 626 SdHoareTripleChecker+Invalid, 1146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 1071 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:24,686 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [111 Valid, 626 Invalid, 1146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 1071 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-28 05:55:24,687 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1070 states. [2022-04-28 05:55:27,084 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1070 to 1027. [2022-04-28 05:55:27,085 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:27,086 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:27,086 INFO L74 IsIncluded]: Start isIncluded. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:27,087 INFO L87 Difference]: Start difference. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:27,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:27,121 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 05:55:27,121 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 05:55:27,123 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:27,123 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:27,124 INFO L74 IsIncluded]: Start isIncluded. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 05:55:27,124 INFO L87 Difference]: Start difference. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 05:55:27,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:27,157 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 05:55:27,158 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 05:55:27,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:27,159 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:27,159 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:27,159 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:27,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:27,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1027 states to 1027 states and 1375 transitions. [2022-04-28 05:55:27,205 INFO L78 Accepts]: Start accepts. Automaton has 1027 states and 1375 transitions. Word has length 88 [2022-04-28 05:55:27,205 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:27,205 INFO L495 AbstractCegarLoop]: Abstraction has 1027 states and 1375 transitions. [2022-04-28 05:55:27,206 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:27,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1027 states and 1375 transitions. [2022-04-28 05:55:29,803 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1375 edges. 1375 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:29,803 INFO L276 IsEmpty]: Start isEmpty. Operand 1027 states and 1375 transitions. [2022-04-28 05:55:29,804 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:55:29,804 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:29,804 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:55:29,821 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Ended with exit code 0 [2022-04-28 05:55:30,019 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable30 [2022-04-28 05:55:30,019 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:30,021 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:30,021 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 5 times [2022-04-28 05:55:30,021 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:30,021 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1854252186] [2022-04-28 05:55:30,022 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:30,022 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 6 times [2022-04-28 05:55:30,022 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:30,022 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [815466276] [2022-04-28 05:55:30,022 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:30,022 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:30,044 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:30,045 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1883705676] [2022-04-28 05:55:30,045 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:55:30,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:30,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:30,046 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:55:30,047 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-28 05:55:30,110 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:55:30,110 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:30,111 INFO L263 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:55:30,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:30,129 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:30,498 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 05:55:30,498 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,499 INFO L290 TraceCheckUtils]: 2: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,499 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92265#(<= ~counter~0 0)} {92257#true} #108#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,499 INFO L272 TraceCheckUtils]: 4: Hoare triple {92265#(<= ~counter~0 0)} call #t~ret9 := main(); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,499 INFO L290 TraceCheckUtils]: 5: Hoare triple {92265#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,500 INFO L272 TraceCheckUtils]: 6: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,500 INFO L290 TraceCheckUtils]: 7: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,500 INFO L290 TraceCheckUtils]: 8: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,500 INFO L290 TraceCheckUtils]: 9: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,501 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #94#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,501 INFO L272 TraceCheckUtils]: 11: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,501 INFO L290 TraceCheckUtils]: 12: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,502 INFO L290 TraceCheckUtils]: 13: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,502 INFO L290 TraceCheckUtils]: 14: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,502 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #96#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,503 INFO L290 TraceCheckUtils]: 16: Hoare triple {92265#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:30,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {92265#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:30,504 INFO L290 TraceCheckUtils]: 18: Hoare triple {92314#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:30,505 INFO L290 TraceCheckUtils]: 19: Hoare triple {92314#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:30,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {92314#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:30,506 INFO L290 TraceCheckUtils]: 21: Hoare triple {92324#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:30,506 INFO L290 TraceCheckUtils]: 22: Hoare triple {92324#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:30,507 INFO L290 TraceCheckUtils]: 23: Hoare triple {92324#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,507 INFO L290 TraceCheckUtils]: 24: Hoare triple {92334#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,507 INFO L272 TraceCheckUtils]: 25: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,508 INFO L290 TraceCheckUtils]: 26: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,508 INFO L290 TraceCheckUtils]: 27: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,508 INFO L290 TraceCheckUtils]: 28: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,509 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #98#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,509 INFO L272 TraceCheckUtils]: 30: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,509 INFO L290 TraceCheckUtils]: 31: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,510 INFO L290 TraceCheckUtils]: 32: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,510 INFO L290 TraceCheckUtils]: 33: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,510 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #100#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,511 INFO L272 TraceCheckUtils]: 35: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,511 INFO L290 TraceCheckUtils]: 36: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,511 INFO L290 TraceCheckUtils]: 37: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,511 INFO L290 TraceCheckUtils]: 38: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,512 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #102#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,512 INFO L272 TraceCheckUtils]: 40: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,513 INFO L290 TraceCheckUtils]: 41: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,513 INFO L290 TraceCheckUtils]: 42: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,513 INFO L290 TraceCheckUtils]: 43: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,514 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #104#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,514 INFO L290 TraceCheckUtils]: 45: Hoare triple {92334#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,514 INFO L290 TraceCheckUtils]: 46: Hoare triple {92334#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:30,515 INFO L290 TraceCheckUtils]: 47: Hoare triple {92334#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:30,515 INFO L290 TraceCheckUtils]: 48: Hoare triple {92407#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:30,515 INFO L290 TraceCheckUtils]: 49: Hoare triple {92407#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:30,516 INFO L290 TraceCheckUtils]: 50: Hoare triple {92407#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:30,516 INFO L290 TraceCheckUtils]: 51: Hoare triple {92407#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:30,516 INFO L290 TraceCheckUtils]: 52: Hoare triple {92420#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:30,517 INFO L290 TraceCheckUtils]: 53: Hoare triple {92420#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:30,517 INFO L290 TraceCheckUtils]: 54: Hoare triple {92420#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:30,518 INFO L290 TraceCheckUtils]: 55: Hoare triple {92430#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:30,518 INFO L290 TraceCheckUtils]: 56: Hoare triple {92430#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:30,519 INFO L290 TraceCheckUtils]: 57: Hoare triple {92430#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,519 INFO L290 TraceCheckUtils]: 58: Hoare triple {92440#(<= ~counter~0 7)} assume !!(#t~post8 < 20);havoc #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,519 INFO L272 TraceCheckUtils]: 59: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,520 INFO L290 TraceCheckUtils]: 60: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,520 INFO L290 TraceCheckUtils]: 61: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,520 INFO L290 TraceCheckUtils]: 62: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,521 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #98#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,521 INFO L272 TraceCheckUtils]: 64: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,521 INFO L290 TraceCheckUtils]: 65: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,522 INFO L290 TraceCheckUtils]: 66: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,522 INFO L290 TraceCheckUtils]: 67: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,522 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #100#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,523 INFO L272 TraceCheckUtils]: 69: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,523 INFO L290 TraceCheckUtils]: 70: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,523 INFO L290 TraceCheckUtils]: 71: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,524 INFO L290 TraceCheckUtils]: 72: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,524 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #102#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,524 INFO L272 TraceCheckUtils]: 74: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,525 INFO L290 TraceCheckUtils]: 75: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,525 INFO L290 TraceCheckUtils]: 76: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,525 INFO L290 TraceCheckUtils]: 77: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,526 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #104#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,526 INFO L290 TraceCheckUtils]: 79: Hoare triple {92440#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,526 INFO L290 TraceCheckUtils]: 80: Hoare triple {92440#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:30,527 INFO L290 TraceCheckUtils]: 81: Hoare triple {92440#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:30,527 INFO L290 TraceCheckUtils]: 82: Hoare triple {92513#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:30,527 INFO L290 TraceCheckUtils]: 83: Hoare triple {92513#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:30,528 INFO L290 TraceCheckUtils]: 84: Hoare triple {92513#(<= ~counter~0 8)} ~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; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:30,528 INFO L290 TraceCheckUtils]: 85: Hoare triple {92513#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92526#(<= |main_#t~post6| 8)} is VALID [2022-04-28 05:55:30,528 INFO L290 TraceCheckUtils]: 86: Hoare triple {92526#(<= |main_#t~post6| 8)} assume !(#t~post6 < 20);havoc #t~post6; {92258#false} is VALID [2022-04-28 05:55:30,528 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#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)); {92258#false} is VALID [2022-04-28 05:55:30,528 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 05:55:30,529 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 05:55:30,529 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 05:55:30,529 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 98 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:55:30,529 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:30,955 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 05:55:30,956 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 05:55:30,956 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 05:55:30,956 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#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)); {92258#false} is VALID [2022-04-28 05:55:30,956 INFO L290 TraceCheckUtils]: 86: Hoare triple {92554#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {92258#false} is VALID [2022-04-28 05:55:30,956 INFO L290 TraceCheckUtils]: 85: Hoare triple {92558#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92554#(< |main_#t~post6| 20)} is VALID [2022-04-28 05:55:30,957 INFO L290 TraceCheckUtils]: 84: Hoare triple {92558#(< ~counter~0 20)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92558#(< ~counter~0 20)} is VALID [2022-04-28 05:55:30,957 INFO L290 TraceCheckUtils]: 83: Hoare triple {92558#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {92558#(< ~counter~0 20)} is VALID [2022-04-28 05:55:30,957 INFO L290 TraceCheckUtils]: 82: Hoare triple {92558#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {92558#(< ~counter~0 20)} is VALID [2022-04-28 05:55:30,959 INFO L290 TraceCheckUtils]: 81: Hoare triple {92571#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92558#(< ~counter~0 20)} is VALID [2022-04-28 05:55:30,959 INFO L290 TraceCheckUtils]: 80: Hoare triple {92571#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,959 INFO L290 TraceCheckUtils]: 79: Hoare triple {92571#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,959 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #104#return; {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,960 INFO L290 TraceCheckUtils]: 77: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,960 INFO L290 TraceCheckUtils]: 76: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,960 INFO L290 TraceCheckUtils]: 75: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,960 INFO L272 TraceCheckUtils]: 74: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,960 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #102#return; {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,960 INFO L290 TraceCheckUtils]: 72: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,960 INFO L290 TraceCheckUtils]: 71: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,960 INFO L290 TraceCheckUtils]: 70: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,960 INFO L272 TraceCheckUtils]: 69: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,961 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #100#return; {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,961 INFO L290 TraceCheckUtils]: 67: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,961 INFO L290 TraceCheckUtils]: 66: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,961 INFO L290 TraceCheckUtils]: 65: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,961 INFO L272 TraceCheckUtils]: 64: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,962 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #98#return; {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,962 INFO L290 TraceCheckUtils]: 62: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,962 INFO L290 TraceCheckUtils]: 61: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,962 INFO L290 TraceCheckUtils]: 60: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,962 INFO L272 TraceCheckUtils]: 59: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,962 INFO L290 TraceCheckUtils]: 58: Hoare triple {92571#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,963 INFO L290 TraceCheckUtils]: 57: Hoare triple {92644#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92571#(< ~counter~0 19)} is VALID [2022-04-28 05:55:30,963 INFO L290 TraceCheckUtils]: 56: Hoare triple {92644#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92644#(< ~counter~0 18)} is VALID [2022-04-28 05:55:30,963 INFO L290 TraceCheckUtils]: 55: Hoare triple {92644#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {92644#(< ~counter~0 18)} is VALID [2022-04-28 05:55:30,964 INFO L290 TraceCheckUtils]: 54: Hoare triple {92654#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92644#(< ~counter~0 18)} is VALID [2022-04-28 05:55:30,964 INFO L290 TraceCheckUtils]: 53: Hoare triple {92654#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92654#(< ~counter~0 17)} is VALID [2022-04-28 05:55:30,965 INFO L290 TraceCheckUtils]: 52: Hoare triple {92654#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {92654#(< ~counter~0 17)} is VALID [2022-04-28 05:55:30,965 INFO L290 TraceCheckUtils]: 51: Hoare triple {92664#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92654#(< ~counter~0 17)} is VALID [2022-04-28 05:55:30,966 INFO L290 TraceCheckUtils]: 50: Hoare triple {92664#(< ~counter~0 16)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92664#(< ~counter~0 16)} is VALID [2022-04-28 05:55:30,966 INFO L290 TraceCheckUtils]: 49: Hoare triple {92664#(< ~counter~0 16)} assume !(~c~0 >= ~b~0); {92664#(< ~counter~0 16)} is VALID [2022-04-28 05:55:30,966 INFO L290 TraceCheckUtils]: 48: Hoare triple {92664#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {92664#(< ~counter~0 16)} is VALID [2022-04-28 05:55:30,967 INFO L290 TraceCheckUtils]: 47: Hoare triple {92677#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92664#(< ~counter~0 16)} is VALID [2022-04-28 05:55:30,967 INFO L290 TraceCheckUtils]: 46: Hoare triple {92677#(< ~counter~0 15)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,967 INFO L290 TraceCheckUtils]: 45: Hoare triple {92677#(< ~counter~0 15)} assume !(~c~0 >= 2 * ~v~0); {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,968 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #104#return; {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,968 INFO L290 TraceCheckUtils]: 43: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,968 INFO L290 TraceCheckUtils]: 42: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,968 INFO L290 TraceCheckUtils]: 41: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,968 INFO L272 TraceCheckUtils]: 40: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,969 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #102#return; {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,969 INFO L290 TraceCheckUtils]: 38: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,969 INFO L290 TraceCheckUtils]: 37: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,969 INFO L290 TraceCheckUtils]: 36: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,969 INFO L272 TraceCheckUtils]: 35: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,969 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #100#return; {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,969 INFO L290 TraceCheckUtils]: 33: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,969 INFO L290 TraceCheckUtils]: 32: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,970 INFO L290 TraceCheckUtils]: 31: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,970 INFO L272 TraceCheckUtils]: 30: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,970 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #98#return; {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,970 INFO L290 TraceCheckUtils]: 28: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,970 INFO L290 TraceCheckUtils]: 27: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,970 INFO L290 TraceCheckUtils]: 26: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,970 INFO L272 TraceCheckUtils]: 25: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,971 INFO L290 TraceCheckUtils]: 24: Hoare triple {92677#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,971 INFO L290 TraceCheckUtils]: 23: Hoare triple {92750#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92677#(< ~counter~0 15)} is VALID [2022-04-28 05:55:30,972 INFO L290 TraceCheckUtils]: 22: Hoare triple {92750#(< ~counter~0 14)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92750#(< ~counter~0 14)} is VALID [2022-04-28 05:55:30,972 INFO L290 TraceCheckUtils]: 21: Hoare triple {92750#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {92750#(< ~counter~0 14)} is VALID [2022-04-28 05:55:30,973 INFO L290 TraceCheckUtils]: 20: Hoare triple {92760#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92750#(< ~counter~0 14)} is VALID [2022-04-28 05:55:30,973 INFO L290 TraceCheckUtils]: 19: Hoare triple {92760#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92760#(< ~counter~0 13)} is VALID [2022-04-28 05:55:30,973 INFO L290 TraceCheckUtils]: 18: Hoare triple {92760#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {92760#(< ~counter~0 13)} is VALID [2022-04-28 05:55:30,974 INFO L290 TraceCheckUtils]: 17: Hoare triple {92770#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92760#(< ~counter~0 13)} is VALID [2022-04-28 05:55:30,974 INFO L290 TraceCheckUtils]: 16: Hoare triple {92770#(< ~counter~0 12)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,974 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92257#true} {92770#(< ~counter~0 12)} #96#return; {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,974 INFO L290 TraceCheckUtils]: 14: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,975 INFO L290 TraceCheckUtils]: 13: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,975 INFO L290 TraceCheckUtils]: 12: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,975 INFO L272 TraceCheckUtils]: 11: Hoare triple {92770#(< ~counter~0 12)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,975 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92257#true} {92770#(< ~counter~0 12)} #94#return; {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,975 INFO L290 TraceCheckUtils]: 9: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:30,975 INFO L290 TraceCheckUtils]: 8: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:30,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:30,975 INFO L272 TraceCheckUtils]: 6: Hoare triple {92770#(< ~counter~0 12)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:30,976 INFO L290 TraceCheckUtils]: 5: Hoare triple {92770#(< ~counter~0 12)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,976 INFO L272 TraceCheckUtils]: 4: Hoare triple {92770#(< ~counter~0 12)} call #t~ret9 := main(); {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,976 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92770#(< ~counter~0 12)} {92257#true} #108#return; {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,987 INFO L290 TraceCheckUtils]: 2: Hoare triple {92770#(< ~counter~0 12)} assume true; {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,988 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {92770#(< ~counter~0 12)} is VALID [2022-04-28 05:55:30,988 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 05:55:30,988 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 34 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:55:30,988 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:30,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [815466276] [2022-04-28 05:55:30,988 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:30,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1883705676] [2022-04-28 05:55:30,989 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1883705676] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:30,989 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:30,989 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:55:30,989 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:30,989 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1854252186] [2022-04-28 05:55:30,989 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1854252186] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:30,989 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:30,989 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:55:30,989 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1500759377] [2022-04-28 05:55:30,989 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:30,989 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 05:55:30,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:30,990 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:31,047 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:31,047 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:55:31,047 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:31,048 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:55:31,048 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:55:31,048 INFO L87 Difference]: Start difference. First operand 1027 states and 1375 transitions. Second operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:34,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:34,130 INFO L93 Difference]: Finished difference Result 1062 states and 1410 transitions. [2022-04-28 05:55:34,130 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:55:34,130 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 05:55:34,131 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:34,131 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:34,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 05:55:34,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:34,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 05:55:34,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 208 transitions. [2022-04-28 05:55:34,298 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:34,343 INFO L225 Difference]: With dead ends: 1062 [2022-04-28 05:55:34,343 INFO L226 Difference]: Without dead ends: 1055 [2022-04-28 05:55:34,344 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=312, Invalid=444, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:55:34,344 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 157 mSDsluCounter, 227 mSDsCounter, 0 mSdLazyCounter, 119 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 157 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 119 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:34,344 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [157 Valid, 296 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 119 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:55:34,345 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1055 states. [2022-04-28 05:55:36,758 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1055 to 1038. [2022-04-28 05:55:36,758 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:36,759 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:36,760 INFO L74 IsIncluded]: Start isIncluded. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:36,761 INFO L87 Difference]: Start difference. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:36,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:36,792 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 05:55:36,792 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 05:55:36,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:36,793 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:36,794 INFO L74 IsIncluded]: Start isIncluded. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 05:55:36,795 INFO L87 Difference]: Start difference. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 05:55:36,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:36,826 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 05:55:36,826 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 05:55:36,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:36,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:36,828 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:36,828 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:36,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:36,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1038 states to 1038 states and 1386 transitions. [2022-04-28 05:55:36,877 INFO L78 Accepts]: Start accepts. Automaton has 1038 states and 1386 transitions. Word has length 91 [2022-04-28 05:55:36,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:36,877 INFO L495 AbstractCegarLoop]: Abstraction has 1038 states and 1386 transitions. [2022-04-28 05:55:36,878 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:36,878 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1038 states and 1386 transitions. [2022-04-28 05:55:39,555 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1386 edges. 1386 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:39,555 INFO L276 IsEmpty]: Start isEmpty. Operand 1038 states and 1386 transitions. [2022-04-28 05:55:39,556 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-28 05:55:39,556 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:39,556 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:55:39,572 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-28 05:55:39,771 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:39,771 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:39,771 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:39,772 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 1 times [2022-04-28 05:55:39,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:39,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [702798851] [2022-04-28 05:55:39,772 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:39,772 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 2 times [2022-04-28 05:55:39,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:39,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [889717785] [2022-04-28 05:55:39,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:39,772 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:39,785 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:39,786 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [800456213] [2022-04-28 05:55:39,786 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:55:39,786 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:39,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:39,787 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:55:39,788 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-28 05:55:39,838 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:55:39,839 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:39,840 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:55:39,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:39,859 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:40,239 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 05:55:40,239 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,240 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99154#(<= ~counter~0 0)} {99146#true} #108#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,240 INFO L272 TraceCheckUtils]: 4: Hoare triple {99154#(<= ~counter~0 0)} call #t~ret9 := main(); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,240 INFO L290 TraceCheckUtils]: 5: Hoare triple {99154#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,241 INFO L272 TraceCheckUtils]: 6: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,241 INFO L290 TraceCheckUtils]: 7: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,241 INFO L290 TraceCheckUtils]: 8: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,241 INFO L290 TraceCheckUtils]: 9: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,242 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #94#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,242 INFO L272 TraceCheckUtils]: 11: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,242 INFO L290 TraceCheckUtils]: 12: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,243 INFO L290 TraceCheckUtils]: 13: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,243 INFO L290 TraceCheckUtils]: 14: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,243 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #96#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,244 INFO L290 TraceCheckUtils]: 16: Hoare triple {99154#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:40,245 INFO L290 TraceCheckUtils]: 17: Hoare triple {99154#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:40,245 INFO L290 TraceCheckUtils]: 18: Hoare triple {99203#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:40,246 INFO L290 TraceCheckUtils]: 19: Hoare triple {99203#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:40,246 INFO L290 TraceCheckUtils]: 20: Hoare triple {99203#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:40,247 INFO L290 TraceCheckUtils]: 21: Hoare triple {99213#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:40,247 INFO L290 TraceCheckUtils]: 22: Hoare triple {99213#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:40,247 INFO L290 TraceCheckUtils]: 23: Hoare triple {99213#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:40,248 INFO L290 TraceCheckUtils]: 24: Hoare triple {99213#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:40,248 INFO L290 TraceCheckUtils]: 25: Hoare triple {99226#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:40,248 INFO L290 TraceCheckUtils]: 26: Hoare triple {99226#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:40,249 INFO L290 TraceCheckUtils]: 27: Hoare triple {99226#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:40,249 INFO L290 TraceCheckUtils]: 28: Hoare triple {99236#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:40,250 INFO L290 TraceCheckUtils]: 29: Hoare triple {99236#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:40,250 INFO L290 TraceCheckUtils]: 30: Hoare triple {99236#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,251 INFO L290 TraceCheckUtils]: 31: Hoare triple {99246#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,251 INFO L272 TraceCheckUtils]: 32: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,251 INFO L290 TraceCheckUtils]: 33: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,252 INFO L290 TraceCheckUtils]: 34: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,252 INFO L290 TraceCheckUtils]: 35: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,252 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #98#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,253 INFO L272 TraceCheckUtils]: 37: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,253 INFO L290 TraceCheckUtils]: 38: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,253 INFO L290 TraceCheckUtils]: 39: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,254 INFO L290 TraceCheckUtils]: 40: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,254 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #100#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,255 INFO L272 TraceCheckUtils]: 42: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,255 INFO L290 TraceCheckUtils]: 43: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,255 INFO L290 TraceCheckUtils]: 44: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,255 INFO L290 TraceCheckUtils]: 45: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,256 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #102#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,256 INFO L272 TraceCheckUtils]: 47: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,256 INFO L290 TraceCheckUtils]: 48: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,257 INFO L290 TraceCheckUtils]: 49: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,257 INFO L290 TraceCheckUtils]: 50: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,257 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #104#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,258 INFO L290 TraceCheckUtils]: 52: Hoare triple {99246#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:40,258 INFO L290 TraceCheckUtils]: 53: Hoare triple {99246#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,259 INFO L290 TraceCheckUtils]: 54: Hoare triple {99316#(<= ~counter~0 6)} assume !!(#t~post8 < 20);havoc #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,259 INFO L272 TraceCheckUtils]: 55: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,259 INFO L290 TraceCheckUtils]: 56: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,260 INFO L290 TraceCheckUtils]: 57: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,260 INFO L290 TraceCheckUtils]: 58: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,260 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #98#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,261 INFO L272 TraceCheckUtils]: 60: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,261 INFO L290 TraceCheckUtils]: 61: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,262 INFO L290 TraceCheckUtils]: 62: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,262 INFO L290 TraceCheckUtils]: 63: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,262 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #100#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,263 INFO L272 TraceCheckUtils]: 65: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,263 INFO L290 TraceCheckUtils]: 66: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,263 INFO L290 TraceCheckUtils]: 67: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,263 INFO L290 TraceCheckUtils]: 68: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,264 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #102#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,264 INFO L272 TraceCheckUtils]: 70: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,265 INFO L290 TraceCheckUtils]: 71: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,265 INFO L290 TraceCheckUtils]: 72: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,265 INFO L290 TraceCheckUtils]: 73: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,266 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #104#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,266 INFO L290 TraceCheckUtils]: 75: Hoare triple {99316#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,266 INFO L290 TraceCheckUtils]: 76: Hoare triple {99316#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:40,267 INFO L290 TraceCheckUtils]: 77: Hoare triple {99316#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:40,267 INFO L290 TraceCheckUtils]: 78: Hoare triple {99389#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:40,267 INFO L290 TraceCheckUtils]: 79: Hoare triple {99389#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:40,268 INFO L290 TraceCheckUtils]: 80: Hoare triple {99389#(<= ~counter~0 7)} ~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; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:40,268 INFO L290 TraceCheckUtils]: 81: Hoare triple {99389#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:40,269 INFO L290 TraceCheckUtils]: 82: Hoare triple {99402#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:40,269 INFO L290 TraceCheckUtils]: 83: Hoare triple {99402#(<= ~counter~0 8)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:40,269 INFO L290 TraceCheckUtils]: 84: Hoare triple {99402#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99412#(<= |main_#t~post7| 8)} is VALID [2022-04-28 05:55:40,270 INFO L290 TraceCheckUtils]: 85: Hoare triple {99412#(<= |main_#t~post7| 8)} assume !(#t~post7 < 20);havoc #t~post7; {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#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; {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 20);havoc #t~post6; {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#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)); {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 05:55:40,270 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 96 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:55:40,270 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:40,696 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 05:55:40,697 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 05:55:40,697 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 05:55:40,697 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#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)); {99147#false} is VALID [2022-04-28 05:55:40,697 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 20);havoc #t~post6; {99147#false} is VALID [2022-04-28 05:55:40,697 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 05:55:40,697 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#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; {99147#false} is VALID [2022-04-28 05:55:40,697 INFO L290 TraceCheckUtils]: 85: Hoare triple {99458#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {99147#false} is VALID [2022-04-28 05:55:40,698 INFO L290 TraceCheckUtils]: 84: Hoare triple {99462#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99458#(< |main_#t~post7| 20)} is VALID [2022-04-28 05:55:40,698 INFO L290 TraceCheckUtils]: 83: Hoare triple {99462#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99462#(< ~counter~0 20)} is VALID [2022-04-28 05:55:40,698 INFO L290 TraceCheckUtils]: 82: Hoare triple {99462#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {99462#(< ~counter~0 20)} is VALID [2022-04-28 05:55:40,700 INFO L290 TraceCheckUtils]: 81: Hoare triple {99472#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99462#(< ~counter~0 20)} is VALID [2022-04-28 05:55:40,700 INFO L290 TraceCheckUtils]: 80: Hoare triple {99472#(< ~counter~0 19)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99472#(< ~counter~0 19)} is VALID [2022-04-28 05:55:40,700 INFO L290 TraceCheckUtils]: 79: Hoare triple {99472#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {99472#(< ~counter~0 19)} is VALID [2022-04-28 05:55:40,700 INFO L290 TraceCheckUtils]: 78: Hoare triple {99472#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {99472#(< ~counter~0 19)} is VALID [2022-04-28 05:55:40,701 INFO L290 TraceCheckUtils]: 77: Hoare triple {99485#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99472#(< ~counter~0 19)} is VALID [2022-04-28 05:55:40,701 INFO L290 TraceCheckUtils]: 76: Hoare triple {99485#(< ~counter~0 18)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,702 INFO L290 TraceCheckUtils]: 75: Hoare triple {99485#(< ~counter~0 18)} assume !(~c~0 >= 2 * ~v~0); {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,702 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #104#return; {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,702 INFO L290 TraceCheckUtils]: 73: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,702 INFO L290 TraceCheckUtils]: 72: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,702 INFO L290 TraceCheckUtils]: 71: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,702 INFO L272 TraceCheckUtils]: 70: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,703 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #102#return; {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,703 INFO L290 TraceCheckUtils]: 68: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,703 INFO L290 TraceCheckUtils]: 67: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,703 INFO L290 TraceCheckUtils]: 66: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,703 INFO L272 TraceCheckUtils]: 65: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,704 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #100#return; {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,704 INFO L290 TraceCheckUtils]: 63: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,704 INFO L290 TraceCheckUtils]: 62: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,704 INFO L290 TraceCheckUtils]: 61: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,704 INFO L272 TraceCheckUtils]: 60: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,704 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #98#return; {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,705 INFO L290 TraceCheckUtils]: 58: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,705 INFO L290 TraceCheckUtils]: 57: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,705 INFO L290 TraceCheckUtils]: 56: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,705 INFO L272 TraceCheckUtils]: 55: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,705 INFO L290 TraceCheckUtils]: 54: Hoare triple {99485#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,706 INFO L290 TraceCheckUtils]: 53: Hoare triple {99558#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99485#(< ~counter~0 18)} is VALID [2022-04-28 05:55:40,706 INFO L290 TraceCheckUtils]: 52: Hoare triple {99558#(< ~counter~0 17)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99558#(< ~counter~0 17)} is VALID [2022-04-28 05:55:40,706 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #104#return; {99558#(< ~counter~0 17)} is VALID [2022-04-28 05:55:40,707 INFO L290 TraceCheckUtils]: 50: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,707 INFO L290 TraceCheckUtils]: 49: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,707 INFO L290 TraceCheckUtils]: 48: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,707 INFO L272 TraceCheckUtils]: 47: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,707 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #102#return; {99558#(< ~counter~0 17)} is VALID [2022-04-28 05:55:40,707 INFO L290 TraceCheckUtils]: 45: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,707 INFO L290 TraceCheckUtils]: 44: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,707 INFO L290 TraceCheckUtils]: 43: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,708 INFO L272 TraceCheckUtils]: 42: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,708 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #100#return; {99558#(< ~counter~0 17)} is VALID [2022-04-28 05:55:40,708 INFO L290 TraceCheckUtils]: 40: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,708 INFO L290 TraceCheckUtils]: 39: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,708 INFO L290 TraceCheckUtils]: 38: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,708 INFO L272 TraceCheckUtils]: 37: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,709 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #98#return; {99558#(< ~counter~0 17)} is VALID [2022-04-28 05:55:40,709 INFO L290 TraceCheckUtils]: 35: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,709 INFO L290 TraceCheckUtils]: 34: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,709 INFO L290 TraceCheckUtils]: 33: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,709 INFO L272 TraceCheckUtils]: 32: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,709 INFO L290 TraceCheckUtils]: 31: Hoare triple {99558#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {99558#(< ~counter~0 17)} is VALID [2022-04-28 05:55:40,710 INFO L290 TraceCheckUtils]: 30: Hoare triple {99628#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99558#(< ~counter~0 17)} is VALID [2022-04-28 05:55:40,710 INFO L290 TraceCheckUtils]: 29: Hoare triple {99628#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99628#(< ~counter~0 16)} is VALID [2022-04-28 05:55:40,711 INFO L290 TraceCheckUtils]: 28: Hoare triple {99628#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {99628#(< ~counter~0 16)} is VALID [2022-04-28 05:55:40,711 INFO L290 TraceCheckUtils]: 27: Hoare triple {99638#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99628#(< ~counter~0 16)} is VALID [2022-04-28 05:55:40,712 INFO L290 TraceCheckUtils]: 26: Hoare triple {99638#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99638#(< ~counter~0 15)} is VALID [2022-04-28 05:55:40,712 INFO L290 TraceCheckUtils]: 25: Hoare triple {99638#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {99638#(< ~counter~0 15)} is VALID [2022-04-28 05:55:40,713 INFO L290 TraceCheckUtils]: 24: Hoare triple {99648#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99638#(< ~counter~0 15)} is VALID [2022-04-28 05:55:40,713 INFO L290 TraceCheckUtils]: 23: Hoare triple {99648#(< ~counter~0 14)} ~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; {99648#(< ~counter~0 14)} is VALID [2022-04-28 05:55:40,713 INFO L290 TraceCheckUtils]: 22: Hoare triple {99648#(< ~counter~0 14)} assume !(~c~0 >= ~b~0); {99648#(< ~counter~0 14)} is VALID [2022-04-28 05:55:40,713 INFO L290 TraceCheckUtils]: 21: Hoare triple {99648#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {99648#(< ~counter~0 14)} is VALID [2022-04-28 05:55:40,714 INFO L290 TraceCheckUtils]: 20: Hoare triple {99661#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99648#(< ~counter~0 14)} is VALID [2022-04-28 05:55:40,714 INFO L290 TraceCheckUtils]: 19: Hoare triple {99661#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99661#(< ~counter~0 13)} is VALID [2022-04-28 05:55:40,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {99661#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {99661#(< ~counter~0 13)} is VALID [2022-04-28 05:55:40,715 INFO L290 TraceCheckUtils]: 17: Hoare triple {99671#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99661#(< ~counter~0 13)} is VALID [2022-04-28 05:55:40,716 INFO L290 TraceCheckUtils]: 16: Hoare triple {99671#(< ~counter~0 12)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,716 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99146#true} {99671#(< ~counter~0 12)} #96#return; {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,716 INFO L290 TraceCheckUtils]: 14: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,716 INFO L290 TraceCheckUtils]: 13: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,716 INFO L290 TraceCheckUtils]: 12: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,716 INFO L272 TraceCheckUtils]: 11: Hoare triple {99671#(< ~counter~0 12)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,717 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99146#true} {99671#(< ~counter~0 12)} #94#return; {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,717 INFO L290 TraceCheckUtils]: 9: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:40,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:40,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:40,717 INFO L272 TraceCheckUtils]: 6: Hoare triple {99671#(< ~counter~0 12)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:40,717 INFO L290 TraceCheckUtils]: 5: Hoare triple {99671#(< ~counter~0 12)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,718 INFO L272 TraceCheckUtils]: 4: Hoare triple {99671#(< ~counter~0 12)} call #t~ret9 := main(); {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,718 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99671#(< ~counter~0 12)} {99146#true} #108#return; {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,718 INFO L290 TraceCheckUtils]: 2: Hoare triple {99671#(< ~counter~0 12)} assume true; {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,719 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {99671#(< ~counter~0 12)} is VALID [2022-04-28 05:55:40,719 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 05:55:40,719 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 32 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:55:40,719 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:40,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [889717785] [2022-04-28 05:55:40,719 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:40,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [800456213] [2022-04-28 05:55:40,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [800456213] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:40,719 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:40,720 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:55:40,720 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:40,720 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [702798851] [2022-04-28 05:55:40,720 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [702798851] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:40,720 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:40,720 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:55:40,720 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1712609285] [2022-04-28 05:55:40,720 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:40,720 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 05:55:40,720 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:40,721 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:40,787 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-28 05:55:40,787 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:55:40,788 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:40,788 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:55:40,788 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:55:40,788 INFO L87 Difference]: Start difference. First operand 1038 states and 1386 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:43,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:43,932 INFO L93 Difference]: Finished difference Result 1382 states and 1902 transitions. [2022-04-28 05:55:43,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:55:43,932 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 05:55:43,932 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:43,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:43,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 05:55:43,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:43,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 05:55:43,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 233 transitions. [2022-04-28 05:55:44,131 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 233 edges. 233 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:44,177 INFO L225 Difference]: With dead ends: 1382 [2022-04-28 05:55:44,177 INFO L226 Difference]: Without dead ends: 1062 [2022-04-28 05:55:44,178 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 191 GetRequests, 165 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=310, Invalid=446, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:55:44,179 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 140 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 65 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 140 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 65 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:44,179 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [140 Valid, 310 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [65 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:55:44,179 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1062 states. [2022-04-28 05:55:46,670 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1062 to 1058. [2022-04-28 05:55:46,670 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:46,671 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:46,672 INFO L74 IsIncluded]: Start isIncluded. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:46,673 INFO L87 Difference]: Start difference. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:46,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:46,704 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 05:55:46,704 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 05:55:46,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:46,706 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:46,707 INFO L74 IsIncluded]: Start isIncluded. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 05:55:46,708 INFO L87 Difference]: Start difference. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 05:55:46,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:46,739 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 05:55:46,739 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 05:55:46,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:46,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:46,741 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:46,741 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:46,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:46,796 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1058 states to 1058 states and 1405 transitions. [2022-04-28 05:55:46,797 INFO L78 Accepts]: Start accepts. Automaton has 1058 states and 1405 transitions. Word has length 93 [2022-04-28 05:55:46,797 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:46,797 INFO L495 AbstractCegarLoop]: Abstraction has 1058 states and 1405 transitions. [2022-04-28 05:55:46,797 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:46,797 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1058 states and 1405 transitions. [2022-04-28 05:55:49,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1405 edges. 1405 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:49,817 INFO L276 IsEmpty]: Start isEmpty. Operand 1058 states and 1405 transitions. [2022-04-28 05:55:49,818 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-28 05:55:49,818 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:49,818 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:55:49,834 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Forceful destruction successful, exit code 0 [2022-04-28 05:55:50,019 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:50,019 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:50,019 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:50,020 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 5 times [2022-04-28 05:55:50,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:50,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1484553105] [2022-04-28 05:55:50,020 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:50,020 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 6 times [2022-04-28 05:55:50,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:50,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1760494072] [2022-04-28 05:55:50,020 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:50,020 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:50,032 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:50,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1567113509] [2022-04-28 05:55:50,032 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:55:50,032 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:50,032 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:50,033 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:55:50,034 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-28 05:55:50,158 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:55:50,158 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:50,160 INFO L263 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:55:50,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:50,178 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:50,579 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 05:55:50,580 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,580 INFO L290 TraceCheckUtils]: 2: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,580 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106749#(<= ~counter~0 0)} {106741#true} #108#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,581 INFO L272 TraceCheckUtils]: 4: Hoare triple {106749#(<= ~counter~0 0)} call #t~ret9 := main(); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,581 INFO L290 TraceCheckUtils]: 5: Hoare triple {106749#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,581 INFO L272 TraceCheckUtils]: 6: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,581 INFO L290 TraceCheckUtils]: 7: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,582 INFO L290 TraceCheckUtils]: 8: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,582 INFO L290 TraceCheckUtils]: 9: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,582 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #94#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,583 INFO L272 TraceCheckUtils]: 11: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,583 INFO L290 TraceCheckUtils]: 12: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,583 INFO L290 TraceCheckUtils]: 13: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,583 INFO L290 TraceCheckUtils]: 14: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,584 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #96#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,584 INFO L290 TraceCheckUtils]: 16: Hoare triple {106749#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:50,586 INFO L290 TraceCheckUtils]: 17: Hoare triple {106749#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:50,586 INFO L290 TraceCheckUtils]: 18: Hoare triple {106798#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:50,586 INFO L290 TraceCheckUtils]: 19: Hoare triple {106798#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:50,587 INFO L290 TraceCheckUtils]: 20: Hoare triple {106798#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:50,587 INFO L290 TraceCheckUtils]: 21: Hoare triple {106808#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:50,588 INFO L290 TraceCheckUtils]: 22: Hoare triple {106808#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:50,588 INFO L290 TraceCheckUtils]: 23: Hoare triple {106808#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:50,589 INFO L290 TraceCheckUtils]: 24: Hoare triple {106808#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:50,589 INFO L290 TraceCheckUtils]: 25: Hoare triple {106821#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:50,589 INFO L290 TraceCheckUtils]: 26: Hoare triple {106821#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:50,590 INFO L290 TraceCheckUtils]: 27: Hoare triple {106821#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:50,590 INFO L290 TraceCheckUtils]: 28: Hoare triple {106831#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:50,590 INFO L290 TraceCheckUtils]: 29: Hoare triple {106831#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:50,591 INFO L290 TraceCheckUtils]: 30: Hoare triple {106831#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,591 INFO L290 TraceCheckUtils]: 31: Hoare triple {106841#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,592 INFO L272 TraceCheckUtils]: 32: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,592 INFO L290 TraceCheckUtils]: 33: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,592 INFO L290 TraceCheckUtils]: 34: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,593 INFO L290 TraceCheckUtils]: 35: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,593 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #98#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,594 INFO L272 TraceCheckUtils]: 37: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,594 INFO L290 TraceCheckUtils]: 38: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,594 INFO L290 TraceCheckUtils]: 39: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,594 INFO L290 TraceCheckUtils]: 40: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,595 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #100#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,595 INFO L272 TraceCheckUtils]: 42: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,596 INFO L290 TraceCheckUtils]: 43: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,596 INFO L290 TraceCheckUtils]: 44: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,596 INFO L290 TraceCheckUtils]: 45: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,596 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #102#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,597 INFO L272 TraceCheckUtils]: 47: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,597 INFO L290 TraceCheckUtils]: 48: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,597 INFO L290 TraceCheckUtils]: 49: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,598 INFO L290 TraceCheckUtils]: 50: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,598 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #104#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,598 INFO L290 TraceCheckUtils]: 52: Hoare triple {106841#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,599 INFO L290 TraceCheckUtils]: 53: Hoare triple {106841#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:50,600 INFO L290 TraceCheckUtils]: 54: Hoare triple {106841#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:50,600 INFO L290 TraceCheckUtils]: 55: Hoare triple {106914#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:50,600 INFO L290 TraceCheckUtils]: 56: Hoare triple {106914#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:50,601 INFO L290 TraceCheckUtils]: 57: Hoare triple {106914#(<= ~counter~0 6)} ~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; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:50,601 INFO L290 TraceCheckUtils]: 58: Hoare triple {106914#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:50,602 INFO L290 TraceCheckUtils]: 59: Hoare triple {106927#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:50,602 INFO L290 TraceCheckUtils]: 60: Hoare triple {106927#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:50,603 INFO L290 TraceCheckUtils]: 61: Hoare triple {106927#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:50,603 INFO L290 TraceCheckUtils]: 62: Hoare triple {106937#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:50,603 INFO L290 TraceCheckUtils]: 63: Hoare triple {106937#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:50,604 INFO L290 TraceCheckUtils]: 64: Hoare triple {106937#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,604 INFO L290 TraceCheckUtils]: 65: Hoare triple {106947#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,605 INFO L272 TraceCheckUtils]: 66: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,605 INFO L290 TraceCheckUtils]: 67: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,605 INFO L290 TraceCheckUtils]: 68: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,606 INFO L290 TraceCheckUtils]: 69: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,606 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #98#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,607 INFO L272 TraceCheckUtils]: 71: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,607 INFO L290 TraceCheckUtils]: 72: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,607 INFO L290 TraceCheckUtils]: 73: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,607 INFO L290 TraceCheckUtils]: 74: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,608 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #100#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,608 INFO L272 TraceCheckUtils]: 76: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,608 INFO L290 TraceCheckUtils]: 77: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,609 INFO L290 TraceCheckUtils]: 78: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,609 INFO L290 TraceCheckUtils]: 79: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,609 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #102#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,610 INFO L272 TraceCheckUtils]: 81: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,610 INFO L290 TraceCheckUtils]: 82: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,610 INFO L290 TraceCheckUtils]: 83: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,611 INFO L290 TraceCheckUtils]: 84: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,611 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #104#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,611 INFO L290 TraceCheckUtils]: 86: Hoare triple {106947#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,612 INFO L290 TraceCheckUtils]: 87: Hoare triple {106947#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:50,612 INFO L290 TraceCheckUtils]: 88: Hoare triple {106947#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107020#(<= |main_#t~post7| 9)} is VALID [2022-04-28 05:55:50,612 INFO L290 TraceCheckUtils]: 89: Hoare triple {107020#(<= |main_#t~post7| 9)} assume !(#t~post7 < 20);havoc #t~post7; {106742#false} is VALID [2022-04-28 05:55:50,612 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#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; {106742#false} is VALID [2022-04-28 05:55:50,612 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 05:55:50,612 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 20);havoc #t~post6; {106742#false} is VALID [2022-04-28 05:55:50,612 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#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)); {106742#false} is VALID [2022-04-28 05:55:50,613 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 05:55:50,613 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 05:55:50,613 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 05:55:50,613 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:55:50,613 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:51,101 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 05:55:51,101 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 05:55:51,101 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 05:55:51,101 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#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)); {106742#false} is VALID [2022-04-28 05:55:51,101 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 20);havoc #t~post6; {106742#false} is VALID [2022-04-28 05:55:51,101 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 05:55:51,101 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#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; {106742#false} is VALID [2022-04-28 05:55:51,102 INFO L290 TraceCheckUtils]: 89: Hoare triple {107066#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {106742#false} is VALID [2022-04-28 05:55:51,102 INFO L290 TraceCheckUtils]: 88: Hoare triple {107070#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107066#(< |main_#t~post7| 20)} is VALID [2022-04-28 05:55:51,102 INFO L290 TraceCheckUtils]: 87: Hoare triple {107070#(< ~counter~0 20)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,102 INFO L290 TraceCheckUtils]: 86: Hoare triple {107070#(< ~counter~0 20)} assume !(~c~0 >= 2 * ~v~0); {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,103 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #104#return; {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,103 INFO L290 TraceCheckUtils]: 84: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,103 INFO L290 TraceCheckUtils]: 83: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,103 INFO L290 TraceCheckUtils]: 82: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,103 INFO L272 TraceCheckUtils]: 81: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,104 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #102#return; {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,104 INFO L290 TraceCheckUtils]: 79: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,104 INFO L290 TraceCheckUtils]: 78: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,104 INFO L290 TraceCheckUtils]: 77: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,104 INFO L272 TraceCheckUtils]: 76: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,105 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #100#return; {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,105 INFO L290 TraceCheckUtils]: 74: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,105 INFO L290 TraceCheckUtils]: 73: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,105 INFO L290 TraceCheckUtils]: 72: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,105 INFO L272 TraceCheckUtils]: 71: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,106 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #98#return; {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,106 INFO L290 TraceCheckUtils]: 69: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,106 INFO L290 TraceCheckUtils]: 68: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,106 INFO L290 TraceCheckUtils]: 67: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,106 INFO L272 TraceCheckUtils]: 66: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,106 INFO L290 TraceCheckUtils]: 65: Hoare triple {107070#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,108 INFO L290 TraceCheckUtils]: 64: Hoare triple {107143#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107070#(< ~counter~0 20)} is VALID [2022-04-28 05:55:51,108 INFO L290 TraceCheckUtils]: 63: Hoare triple {107143#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107143#(< ~counter~0 19)} is VALID [2022-04-28 05:55:51,108 INFO L290 TraceCheckUtils]: 62: Hoare triple {107143#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {107143#(< ~counter~0 19)} is VALID [2022-04-28 05:55:51,109 INFO L290 TraceCheckUtils]: 61: Hoare triple {107153#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107143#(< ~counter~0 19)} is VALID [2022-04-28 05:55:51,110 INFO L290 TraceCheckUtils]: 60: Hoare triple {107153#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107153#(< ~counter~0 18)} is VALID [2022-04-28 05:55:51,117 INFO L290 TraceCheckUtils]: 59: Hoare triple {107153#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {107153#(< ~counter~0 18)} is VALID [2022-04-28 05:55:51,119 INFO L290 TraceCheckUtils]: 58: Hoare triple {107163#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107153#(< ~counter~0 18)} is VALID [2022-04-28 05:55:51,120 INFO L290 TraceCheckUtils]: 57: Hoare triple {107163#(< ~counter~0 17)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {107163#(< ~counter~0 17)} is VALID [2022-04-28 05:55:51,120 INFO L290 TraceCheckUtils]: 56: Hoare triple {107163#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {107163#(< ~counter~0 17)} is VALID [2022-04-28 05:55:51,120 INFO L290 TraceCheckUtils]: 55: Hoare triple {107163#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {107163#(< ~counter~0 17)} is VALID [2022-04-28 05:55:51,121 INFO L290 TraceCheckUtils]: 54: Hoare triple {107176#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107163#(< ~counter~0 17)} is VALID [2022-04-28 05:55:51,121 INFO L290 TraceCheckUtils]: 53: Hoare triple {107176#(< ~counter~0 16)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,122 INFO L290 TraceCheckUtils]: 52: Hoare triple {107176#(< ~counter~0 16)} assume !(~c~0 >= 2 * ~v~0); {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,122 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #104#return; {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,122 INFO L290 TraceCheckUtils]: 50: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,122 INFO L290 TraceCheckUtils]: 49: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,122 INFO L290 TraceCheckUtils]: 48: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,122 INFO L272 TraceCheckUtils]: 47: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,123 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #102#return; {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,123 INFO L290 TraceCheckUtils]: 45: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,123 INFO L290 TraceCheckUtils]: 44: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,123 INFO L290 TraceCheckUtils]: 43: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,123 INFO L272 TraceCheckUtils]: 42: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,124 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #100#return; {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,124 INFO L290 TraceCheckUtils]: 40: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,124 INFO L290 TraceCheckUtils]: 39: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,124 INFO L290 TraceCheckUtils]: 38: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,124 INFO L272 TraceCheckUtils]: 37: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,125 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #98#return; {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,125 INFO L290 TraceCheckUtils]: 35: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,125 INFO L290 TraceCheckUtils]: 34: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,125 INFO L290 TraceCheckUtils]: 33: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,125 INFO L272 TraceCheckUtils]: 32: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,125 INFO L290 TraceCheckUtils]: 31: Hoare triple {107176#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,126 INFO L290 TraceCheckUtils]: 30: Hoare triple {107249#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107176#(< ~counter~0 16)} is VALID [2022-04-28 05:55:51,126 INFO L290 TraceCheckUtils]: 29: Hoare triple {107249#(< ~counter~0 15)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107249#(< ~counter~0 15)} is VALID [2022-04-28 05:55:51,127 INFO L290 TraceCheckUtils]: 28: Hoare triple {107249#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {107249#(< ~counter~0 15)} is VALID [2022-04-28 05:55:51,127 INFO L290 TraceCheckUtils]: 27: Hoare triple {107259#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107249#(< ~counter~0 15)} is VALID [2022-04-28 05:55:51,128 INFO L290 TraceCheckUtils]: 26: Hoare triple {107259#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107259#(< ~counter~0 14)} is VALID [2022-04-28 05:55:51,128 INFO L290 TraceCheckUtils]: 25: Hoare triple {107259#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {107259#(< ~counter~0 14)} is VALID [2022-04-28 05:55:51,129 INFO L290 TraceCheckUtils]: 24: Hoare triple {107269#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107259#(< ~counter~0 14)} is VALID [2022-04-28 05:55:51,129 INFO L290 TraceCheckUtils]: 23: Hoare triple {107269#(< ~counter~0 13)} ~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; {107269#(< ~counter~0 13)} is VALID [2022-04-28 05:55:51,129 INFO L290 TraceCheckUtils]: 22: Hoare triple {107269#(< ~counter~0 13)} assume !(~c~0 >= ~b~0); {107269#(< ~counter~0 13)} is VALID [2022-04-28 05:55:51,130 INFO L290 TraceCheckUtils]: 21: Hoare triple {107269#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {107269#(< ~counter~0 13)} is VALID [2022-04-28 05:55:51,130 INFO L290 TraceCheckUtils]: 20: Hoare triple {107282#(< ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107269#(< ~counter~0 13)} is VALID [2022-04-28 05:55:51,131 INFO L290 TraceCheckUtils]: 19: Hoare triple {107282#(< ~counter~0 12)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107282#(< ~counter~0 12)} is VALID [2022-04-28 05:55:51,131 INFO L290 TraceCheckUtils]: 18: Hoare triple {107282#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {107282#(< ~counter~0 12)} is VALID [2022-04-28 05:55:51,132 INFO L290 TraceCheckUtils]: 17: Hoare triple {107292#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107282#(< ~counter~0 12)} is VALID [2022-04-28 05:55:51,132 INFO L290 TraceCheckUtils]: 16: Hoare triple {107292#(< ~counter~0 11)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,132 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106741#true} {107292#(< ~counter~0 11)} #96#return; {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,133 INFO L290 TraceCheckUtils]: 14: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,133 INFO L290 TraceCheckUtils]: 13: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,133 INFO L290 TraceCheckUtils]: 12: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,133 INFO L272 TraceCheckUtils]: 11: Hoare triple {107292#(< ~counter~0 11)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,133 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106741#true} {107292#(< ~counter~0 11)} #94#return; {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,133 INFO L290 TraceCheckUtils]: 9: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:51,133 INFO L290 TraceCheckUtils]: 8: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:51,133 INFO L290 TraceCheckUtils]: 7: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:51,133 INFO L272 TraceCheckUtils]: 6: Hoare triple {107292#(< ~counter~0 11)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:51,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {107292#(< ~counter~0 11)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,134 INFO L272 TraceCheckUtils]: 4: Hoare triple {107292#(< ~counter~0 11)} call #t~ret9 := main(); {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,134 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {107292#(< ~counter~0 11)} {106741#true} #108#return; {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,134 INFO L290 TraceCheckUtils]: 2: Hoare triple {107292#(< ~counter~0 11)} assume true; {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {107292#(< ~counter~0 11)} is VALID [2022-04-28 05:55:51,135 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 05:55:51,135 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:55:51,135 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:51,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1760494072] [2022-04-28 05:55:51,136 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:51,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1567113509] [2022-04-28 05:55:51,136 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1567113509] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:51,136 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:51,136 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 05:55:51,136 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:51,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1484553105] [2022-04-28 05:55:51,136 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1484553105] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:51,136 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:51,136 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:55:51,136 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [756457571] [2022-04-28 05:55:51,136 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:51,137 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 05:55:51,137 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:51,137 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:51,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:51,210 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:55:51,210 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:51,210 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:55:51,211 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:55:51,211 INFO L87 Difference]: Start difference. First operand 1058 states and 1405 transitions. Second operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:54,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:54,849 INFO L93 Difference]: Finished difference Result 1539 states and 2090 transitions. [2022-04-28 05:55:54,849 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 05:55:54,849 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 05:55:54,849 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:54,849 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:54,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:55:54,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:54,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:55:54,852 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 05:55:55,075 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:55,139 INFO L225 Difference]: With dead ends: 1539 [2022-04-28 05:55:55,139 INFO L226 Difference]: Without dead ends: 1219 [2022-04-28 05:55:55,140 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=384, Invalid=546, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:55:55,140 INFO L413 NwaCegarLoop]: 73 mSDtfsCounter, 170 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 69 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 224 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 69 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:55,140 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 328 Invalid, 224 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [69 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:55:55,141 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1219 states. [2022-04-28 05:55:57,921 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1219 to 1164. [2022-04-28 05:55:57,921 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:57,922 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:57,923 INFO L74 IsIncluded]: Start isIncluded. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:57,923 INFO L87 Difference]: Start difference. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:57,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:57,967 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 05:55:57,967 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 05:55:57,968 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:57,968 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:57,970 INFO L74 IsIncluded]: Start isIncluded. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 05:55:57,970 INFO L87 Difference]: Start difference. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 05:55:58,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:58,014 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 05:55:58,014 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 05:55:58,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:58,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:58,016 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:58,016 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:58,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:58,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1164 states to 1164 states and 1539 transitions. [2022-04-28 05:55:58,077 INFO L78 Accepts]: Start accepts. Automaton has 1164 states and 1539 transitions. Word has length 97 [2022-04-28 05:55:58,077 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:58,077 INFO L495 AbstractCegarLoop]: Abstraction has 1164 states and 1539 transitions. [2022-04-28 05:55:58,077 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:58,077 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1164 states and 1539 transitions. [2022-04-28 05:56:01,237 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1539 edges. 1539 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:01,237 INFO L276 IsEmpty]: Start isEmpty. Operand 1164 states and 1539 transitions. [2022-04-28 05:56:01,238 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-28 05:56:01,238 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:01,238 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:01,254 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:01,438 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable33 [2022-04-28 05:56:01,438 INFO L420 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:01,439 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:01,439 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 7 times [2022-04-28 05:56:01,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:01,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [469204030] [2022-04-28 05:56:01,439 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:01,439 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 8 times [2022-04-28 05:56:01,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:01,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [277135144] [2022-04-28 05:56:01,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:01,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:01,452 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:01,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [334723272] [2022-04-28 05:56:01,452 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:01,452 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:01,452 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:01,453 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:01,454 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-28 05:56:01,507 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:01,507 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:01,508 INFO L263 TraceCheckSpWp]: Trace formula consists of 301 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 05:56:01,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:01,528 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:01,967 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 05:56:01,968 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,968 INFO L290 TraceCheckUtils]: 2: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,968 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115212#(<= ~counter~0 0)} {115204#true} #108#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,969 INFO L272 TraceCheckUtils]: 4: Hoare triple {115212#(<= ~counter~0 0)} call #t~ret9 := main(); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,969 INFO L290 TraceCheckUtils]: 5: Hoare triple {115212#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,969 INFO L272 TraceCheckUtils]: 6: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,969 INFO L290 TraceCheckUtils]: 7: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,970 INFO L290 TraceCheckUtils]: 8: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,970 INFO L290 TraceCheckUtils]: 9: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,970 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #94#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,971 INFO L272 TraceCheckUtils]: 11: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,971 INFO L290 TraceCheckUtils]: 12: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,971 INFO L290 TraceCheckUtils]: 13: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,971 INFO L290 TraceCheckUtils]: 14: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,972 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #96#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,972 INFO L290 TraceCheckUtils]: 16: Hoare triple {115212#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:01,974 INFO L290 TraceCheckUtils]: 17: Hoare triple {115212#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:01,974 INFO L290 TraceCheckUtils]: 18: Hoare triple {115261#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:01,974 INFO L290 TraceCheckUtils]: 19: Hoare triple {115261#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:01,975 INFO L290 TraceCheckUtils]: 20: Hoare triple {115261#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:01,976 INFO L290 TraceCheckUtils]: 21: Hoare triple {115271#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:01,976 INFO L290 TraceCheckUtils]: 22: Hoare triple {115271#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:01,976 INFO L290 TraceCheckUtils]: 23: Hoare triple {115271#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:01,978 INFO L290 TraceCheckUtils]: 24: Hoare triple {115271#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:01,978 INFO L290 TraceCheckUtils]: 25: Hoare triple {115284#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:01,979 INFO L290 TraceCheckUtils]: 26: Hoare triple {115284#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:01,979 INFO L290 TraceCheckUtils]: 27: Hoare triple {115284#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:01,980 INFO L290 TraceCheckUtils]: 28: Hoare triple {115294#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:01,981 INFO L290 TraceCheckUtils]: 29: Hoare triple {115294#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:01,981 INFO L290 TraceCheckUtils]: 30: Hoare triple {115294#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,982 INFO L290 TraceCheckUtils]: 31: Hoare triple {115304#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,982 INFO L272 TraceCheckUtils]: 32: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,982 INFO L290 TraceCheckUtils]: 33: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,983 INFO L290 TraceCheckUtils]: 34: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,983 INFO L290 TraceCheckUtils]: 35: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,983 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #98#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,984 INFO L272 TraceCheckUtils]: 37: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,984 INFO L290 TraceCheckUtils]: 38: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,984 INFO L290 TraceCheckUtils]: 39: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,985 INFO L290 TraceCheckUtils]: 40: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,985 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #100#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,986 INFO L272 TraceCheckUtils]: 42: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,986 INFO L290 TraceCheckUtils]: 43: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,986 INFO L290 TraceCheckUtils]: 44: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,987 INFO L290 TraceCheckUtils]: 45: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,987 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #102#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,987 INFO L272 TraceCheckUtils]: 47: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,988 INFO L290 TraceCheckUtils]: 48: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,988 INFO L290 TraceCheckUtils]: 49: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,988 INFO L290 TraceCheckUtils]: 50: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,989 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #104#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,989 INFO L290 TraceCheckUtils]: 52: Hoare triple {115304#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,989 INFO L290 TraceCheckUtils]: 53: Hoare triple {115304#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:01,990 INFO L290 TraceCheckUtils]: 54: Hoare triple {115304#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:01,990 INFO L290 TraceCheckUtils]: 55: Hoare triple {115377#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:01,990 INFO L290 TraceCheckUtils]: 56: Hoare triple {115377#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:01,991 INFO L290 TraceCheckUtils]: 57: Hoare triple {115377#(<= ~counter~0 6)} ~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; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:01,992 INFO L290 TraceCheckUtils]: 58: Hoare triple {115377#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:01,992 INFO L290 TraceCheckUtils]: 59: Hoare triple {115390#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:01,992 INFO L290 TraceCheckUtils]: 60: Hoare triple {115390#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:01,993 INFO L290 TraceCheckUtils]: 61: Hoare triple {115390#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:01,993 INFO L290 TraceCheckUtils]: 62: Hoare triple {115400#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:01,993 INFO L290 TraceCheckUtils]: 63: Hoare triple {115400#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:01,994 INFO L290 TraceCheckUtils]: 64: Hoare triple {115400#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,994 INFO L290 TraceCheckUtils]: 65: Hoare triple {115410#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,995 INFO L272 TraceCheckUtils]: 66: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,995 INFO L290 TraceCheckUtils]: 67: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,995 INFO L290 TraceCheckUtils]: 68: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,996 INFO L290 TraceCheckUtils]: 69: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,996 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #98#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,997 INFO L272 TraceCheckUtils]: 71: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,997 INFO L290 TraceCheckUtils]: 72: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,997 INFO L290 TraceCheckUtils]: 73: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,998 INFO L290 TraceCheckUtils]: 74: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,998 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #100#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,998 INFO L272 TraceCheckUtils]: 76: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,999 INFO L290 TraceCheckUtils]: 77: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,999 INFO L290 TraceCheckUtils]: 78: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:01,999 INFO L290 TraceCheckUtils]: 79: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,000 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #102#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,000 INFO L272 TraceCheckUtils]: 81: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,000 INFO L290 TraceCheckUtils]: 82: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,001 INFO L290 TraceCheckUtils]: 83: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,001 INFO L290 TraceCheckUtils]: 84: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,001 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #104#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,002 INFO L290 TraceCheckUtils]: 86: Hoare triple {115410#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,002 INFO L290 TraceCheckUtils]: 87: Hoare triple {115410#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,003 INFO L290 TraceCheckUtils]: 88: Hoare triple {115410#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:02,003 INFO L290 TraceCheckUtils]: 89: Hoare triple {115483#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:02,003 INFO L290 TraceCheckUtils]: 90: Hoare triple {115483#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:02,004 INFO L290 TraceCheckUtils]: 91: Hoare triple {115483#(<= ~counter~0 10)} ~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; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:02,004 INFO L290 TraceCheckUtils]: 92: Hoare triple {115483#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115496#(<= |main_#t~post6| 10)} is VALID [2022-04-28 05:56:02,004 INFO L290 TraceCheckUtils]: 93: Hoare triple {115496#(<= |main_#t~post6| 10)} assume !(#t~post6 < 20);havoc #t~post6; {115205#false} is VALID [2022-04-28 05:56:02,004 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#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)); {115205#false} is VALID [2022-04-28 05:56:02,004 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 05:56:02,004 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 05:56:02,004 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 05:56:02,005 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 120 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:02,005 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:02,527 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 05:56:02,527 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 05:56:02,527 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 05:56:02,527 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#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)); {115205#false} is VALID [2022-04-28 05:56:02,527 INFO L290 TraceCheckUtils]: 93: Hoare triple {115524#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {115205#false} is VALID [2022-04-28 05:56:02,527 INFO L290 TraceCheckUtils]: 92: Hoare triple {115528#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115524#(< |main_#t~post6| 20)} is VALID [2022-04-28 05:56:02,528 INFO L290 TraceCheckUtils]: 91: Hoare triple {115528#(< ~counter~0 20)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115528#(< ~counter~0 20)} is VALID [2022-04-28 05:56:02,528 INFO L290 TraceCheckUtils]: 90: Hoare triple {115528#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {115528#(< ~counter~0 20)} is VALID [2022-04-28 05:56:02,528 INFO L290 TraceCheckUtils]: 89: Hoare triple {115528#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {115528#(< ~counter~0 20)} is VALID [2022-04-28 05:56:02,530 INFO L290 TraceCheckUtils]: 88: Hoare triple {115541#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115528#(< ~counter~0 20)} is VALID [2022-04-28 05:56:02,530 INFO L290 TraceCheckUtils]: 87: Hoare triple {115541#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,530 INFO L290 TraceCheckUtils]: 86: Hoare triple {115541#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,531 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #104#return; {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,531 INFO L290 TraceCheckUtils]: 84: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,531 INFO L290 TraceCheckUtils]: 83: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,531 INFO L290 TraceCheckUtils]: 82: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,531 INFO L272 TraceCheckUtils]: 81: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,532 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #102#return; {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,532 INFO L290 TraceCheckUtils]: 79: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,532 INFO L290 TraceCheckUtils]: 78: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,532 INFO L290 TraceCheckUtils]: 77: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,532 INFO L272 TraceCheckUtils]: 76: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,532 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #100#return; {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,532 INFO L290 TraceCheckUtils]: 74: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,533 INFO L290 TraceCheckUtils]: 73: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,533 INFO L290 TraceCheckUtils]: 72: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,533 INFO L272 TraceCheckUtils]: 71: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,533 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #98#return; {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,533 INFO L290 TraceCheckUtils]: 69: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,533 INFO L290 TraceCheckUtils]: 68: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,533 INFO L290 TraceCheckUtils]: 67: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,533 INFO L272 TraceCheckUtils]: 66: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,534 INFO L290 TraceCheckUtils]: 65: Hoare triple {115541#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,535 INFO L290 TraceCheckUtils]: 64: Hoare triple {115614#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115541#(< ~counter~0 19)} is VALID [2022-04-28 05:56:02,535 INFO L290 TraceCheckUtils]: 63: Hoare triple {115614#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115614#(< ~counter~0 18)} is VALID [2022-04-28 05:56:02,535 INFO L290 TraceCheckUtils]: 62: Hoare triple {115614#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {115614#(< ~counter~0 18)} is VALID [2022-04-28 05:56:02,536 INFO L290 TraceCheckUtils]: 61: Hoare triple {115624#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115614#(< ~counter~0 18)} is VALID [2022-04-28 05:56:02,536 INFO L290 TraceCheckUtils]: 60: Hoare triple {115624#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115624#(< ~counter~0 17)} is VALID [2022-04-28 05:56:02,536 INFO L290 TraceCheckUtils]: 59: Hoare triple {115624#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {115624#(< ~counter~0 17)} is VALID [2022-04-28 05:56:02,537 INFO L290 TraceCheckUtils]: 58: Hoare triple {115634#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115624#(< ~counter~0 17)} is VALID [2022-04-28 05:56:02,537 INFO L290 TraceCheckUtils]: 57: Hoare triple {115634#(< ~counter~0 16)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115634#(< ~counter~0 16)} is VALID [2022-04-28 05:56:02,538 INFO L290 TraceCheckUtils]: 56: Hoare triple {115634#(< ~counter~0 16)} assume !(~c~0 >= ~b~0); {115634#(< ~counter~0 16)} is VALID [2022-04-28 05:56:02,538 INFO L290 TraceCheckUtils]: 55: Hoare triple {115634#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {115634#(< ~counter~0 16)} is VALID [2022-04-28 05:56:02,539 INFO L290 TraceCheckUtils]: 54: Hoare triple {115647#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115634#(< ~counter~0 16)} is VALID [2022-04-28 05:56:02,539 INFO L290 TraceCheckUtils]: 53: Hoare triple {115647#(< ~counter~0 15)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,539 INFO L290 TraceCheckUtils]: 52: Hoare triple {115647#(< ~counter~0 15)} assume !(~c~0 >= 2 * ~v~0); {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,540 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #104#return; {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,540 INFO L290 TraceCheckUtils]: 50: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,540 INFO L290 TraceCheckUtils]: 49: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,540 INFO L290 TraceCheckUtils]: 48: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,540 INFO L272 TraceCheckUtils]: 47: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,540 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #102#return; {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,540 INFO L290 TraceCheckUtils]: 45: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,540 INFO L290 TraceCheckUtils]: 44: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,540 INFO L290 TraceCheckUtils]: 43: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,541 INFO L272 TraceCheckUtils]: 42: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,541 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #100#return; {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,541 INFO L290 TraceCheckUtils]: 40: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,541 INFO L290 TraceCheckUtils]: 39: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,541 INFO L290 TraceCheckUtils]: 38: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,541 INFO L272 TraceCheckUtils]: 37: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,556 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #98#return; {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,556 INFO L290 TraceCheckUtils]: 35: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,557 INFO L290 TraceCheckUtils]: 34: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,557 INFO L290 TraceCheckUtils]: 33: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,557 INFO L272 TraceCheckUtils]: 32: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,557 INFO L290 TraceCheckUtils]: 31: Hoare triple {115647#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,559 INFO L290 TraceCheckUtils]: 30: Hoare triple {115720#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115647#(< ~counter~0 15)} is VALID [2022-04-28 05:56:02,559 INFO L290 TraceCheckUtils]: 29: Hoare triple {115720#(< ~counter~0 14)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115720#(< ~counter~0 14)} is VALID [2022-04-28 05:56:02,559 INFO L290 TraceCheckUtils]: 28: Hoare triple {115720#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {115720#(< ~counter~0 14)} is VALID [2022-04-28 05:56:02,560 INFO L290 TraceCheckUtils]: 27: Hoare triple {115730#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115720#(< ~counter~0 14)} is VALID [2022-04-28 05:56:02,561 INFO L290 TraceCheckUtils]: 26: Hoare triple {115730#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115730#(< ~counter~0 13)} is VALID [2022-04-28 05:56:02,561 INFO L290 TraceCheckUtils]: 25: Hoare triple {115730#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {115730#(< ~counter~0 13)} is VALID [2022-04-28 05:56:02,562 INFO L290 TraceCheckUtils]: 24: Hoare triple {115740#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115730#(< ~counter~0 13)} is VALID [2022-04-28 05:56:02,562 INFO L290 TraceCheckUtils]: 23: Hoare triple {115740#(< ~counter~0 12)} ~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; {115740#(< ~counter~0 12)} is VALID [2022-04-28 05:56:02,563 INFO L290 TraceCheckUtils]: 22: Hoare triple {115740#(< ~counter~0 12)} assume !(~c~0 >= ~b~0); {115740#(< ~counter~0 12)} is VALID [2022-04-28 05:56:02,563 INFO L290 TraceCheckUtils]: 21: Hoare triple {115740#(< ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {115740#(< ~counter~0 12)} is VALID [2022-04-28 05:56:02,564 INFO L290 TraceCheckUtils]: 20: Hoare triple {115483#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115740#(< ~counter~0 12)} is VALID [2022-04-28 05:56:02,565 INFO L290 TraceCheckUtils]: 19: Hoare triple {115483#(<= ~counter~0 10)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:02,565 INFO L290 TraceCheckUtils]: 18: Hoare triple {115483#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:02,566 INFO L290 TraceCheckUtils]: 17: Hoare triple {115410#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:56:02,566 INFO L290 TraceCheckUtils]: 16: Hoare triple {115410#(<= ~counter~0 9)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,567 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115204#true} {115410#(<= ~counter~0 9)} #96#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,567 INFO L290 TraceCheckUtils]: 14: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,567 INFO L290 TraceCheckUtils]: 13: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,567 INFO L290 TraceCheckUtils]: 12: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,567 INFO L272 TraceCheckUtils]: 11: Hoare triple {115410#(<= ~counter~0 9)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,567 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115204#true} {115410#(<= ~counter~0 9)} #94#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,567 INFO L290 TraceCheckUtils]: 9: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:56:02,567 INFO L290 TraceCheckUtils]: 8: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:56:02,567 INFO L290 TraceCheckUtils]: 7: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:56:02,568 INFO L272 TraceCheckUtils]: 6: Hoare triple {115410#(<= ~counter~0 9)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:56:02,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {115410#(<= ~counter~0 9)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,568 INFO L272 TraceCheckUtils]: 4: Hoare triple {115410#(<= ~counter~0 9)} call #t~ret9 := main(); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,568 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115410#(<= ~counter~0 9)} {115204#true} #108#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,569 INFO L290 TraceCheckUtils]: 2: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,569 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:02,569 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 05:56:02,569 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 56 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:02,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:02,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [277135144] [2022-04-28 05:56:02,570 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:02,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [334723272] [2022-04-28 05:56:02,570 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [334723272] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:02,570 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:02,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-28 05:56:02,570 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:02,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [469204030] [2022-04-28 05:56:02,570 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [469204030] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:02,570 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:02,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:56:02,570 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2087147248] [2022-04-28 05:56:02,570 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:02,571 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 05:56:02,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:02,571 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:02,633 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-28 05:56:02,634 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:56:02,634 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:02,634 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:56:02,634 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:56:02,634 INFO L87 Difference]: Start difference. First operand 1164 states and 1539 transitions. Second operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:07,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:07,092 INFO L93 Difference]: Finished difference Result 1434 states and 1877 transitions. [2022-04-28 05:56:07,092 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 05:56:07,092 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 05:56:07,093 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:07,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:07,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 05:56:07,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:07,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 05:56:07,096 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 266 transitions. [2022-04-28 05:56:07,332 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 266 edges. 266 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:07,416 INFO L225 Difference]: With dead ends: 1434 [2022-04-28 05:56:07,416 INFO L226 Difference]: Without dead ends: 1427 [2022-04-28 05:56:07,417 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 203 GetRequests, 172 SyntacticMatches, 1 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=407, Invalid=585, Unknown=0, NotChecked=0, Total=992 [2022-04-28 05:56:07,417 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 243 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 156 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 333 SdHoareTripleChecker+Invalid, 335 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 156 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:07,417 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [243 Valid, 333 Invalid, 335 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [156 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:56:07,418 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1427 states. [2022-04-28 05:56:10,665 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1427 to 1358. [2022-04-28 05:56:10,665 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:10,666 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:10,667 INFO L74 IsIncluded]: Start isIncluded. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:10,668 INFO L87 Difference]: Start difference. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:10,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:10,719 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 05:56:10,719 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 05:56:10,720 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:10,720 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:10,721 INFO L74 IsIncluded]: Start isIncluded. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 05:56:10,722 INFO L87 Difference]: Start difference. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 05:56:10,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:10,773 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 05:56:10,773 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 05:56:10,774 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:10,774 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:10,775 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:10,775 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:10,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:10,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1358 states to 1358 states and 1786 transitions. [2022-04-28 05:56:10,847 INFO L78 Accepts]: Start accepts. Automaton has 1358 states and 1786 transitions. Word has length 98 [2022-04-28 05:56:10,847 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:10,847 INFO L495 AbstractCegarLoop]: Abstraction has 1358 states and 1786 transitions. [2022-04-28 05:56:10,847 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:10,847 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1358 states and 1786 transitions. [2022-04-28 05:56:14,604 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1786 edges. 1786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:14,604 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1786 transitions. [2022-04-28 05:56:14,605 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-28 05:56:14,605 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:14,605 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:14,622 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:14,819 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-28 05:56:14,819 INFO L420 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:14,819 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:14,820 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 1 times [2022-04-28 05:56:14,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:14,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [4001516] [2022-04-28 05:56:14,820 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:14,820 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 2 times [2022-04-28 05:56:14,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:14,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1287904972] [2022-04-28 05:56:14,820 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:14,820 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:14,832 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:14,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [774423234] [2022-04-28 05:56:14,832 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:14,832 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:14,832 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:14,833 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:14,834 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-28 05:56:14,890 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:14,891 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:14,892 INFO L263 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:56:14,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:14,912 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:15,323 INFO L272 TraceCheckUtils]: 0: Hoare triple {124269#true} call ULTIMATE.init(); {124269#true} is VALID [2022-04-28 05:56:15,323 INFO L290 TraceCheckUtils]: 1: Hoare triple {124269#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,324 INFO L290 TraceCheckUtils]: 2: Hoare triple {124277#(<= ~counter~0 0)} assume true; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,324 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124277#(<= ~counter~0 0)} {124269#true} #108#return; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,324 INFO L272 TraceCheckUtils]: 4: Hoare triple {124277#(<= ~counter~0 0)} call #t~ret9 := main(); {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,325 INFO L290 TraceCheckUtils]: 5: Hoare triple {124277#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,325 INFO L272 TraceCheckUtils]: 6: Hoare triple {124277#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,325 INFO L290 TraceCheckUtils]: 7: Hoare triple {124277#(<= ~counter~0 0)} ~cond := #in~cond; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {124277#(<= ~counter~0 0)} assume !(0 == ~cond); {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,326 INFO L290 TraceCheckUtils]: 9: Hoare triple {124277#(<= ~counter~0 0)} assume true; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,326 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124277#(<= ~counter~0 0)} {124277#(<= ~counter~0 0)} #94#return; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,326 INFO L272 TraceCheckUtils]: 11: Hoare triple {124277#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,327 INFO L290 TraceCheckUtils]: 12: Hoare triple {124277#(<= ~counter~0 0)} ~cond := #in~cond; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,327 INFO L290 TraceCheckUtils]: 13: Hoare triple {124277#(<= ~counter~0 0)} assume !(0 == ~cond); {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {124277#(<= ~counter~0 0)} assume true; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,327 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124277#(<= ~counter~0 0)} {124277#(<= ~counter~0 0)} #96#return; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,328 INFO L290 TraceCheckUtils]: 16: Hoare triple {124277#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124277#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:15,329 INFO L290 TraceCheckUtils]: 17: Hoare triple {124277#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124326#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:15,330 INFO L290 TraceCheckUtils]: 18: Hoare triple {124326#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {124326#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:15,330 INFO L290 TraceCheckUtils]: 19: Hoare triple {124326#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124326#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:15,331 INFO L290 TraceCheckUtils]: 20: Hoare triple {124326#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124336#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:15,331 INFO L290 TraceCheckUtils]: 21: Hoare triple {124336#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {124336#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:15,331 INFO L290 TraceCheckUtils]: 22: Hoare triple {124336#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {124336#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:15,331 INFO L290 TraceCheckUtils]: 23: Hoare triple {124336#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124336#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:15,332 INFO L290 TraceCheckUtils]: 24: Hoare triple {124336#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124349#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:15,332 INFO L290 TraceCheckUtils]: 25: Hoare triple {124349#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {124349#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:15,333 INFO L290 TraceCheckUtils]: 26: Hoare triple {124349#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124349#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:15,334 INFO L290 TraceCheckUtils]: 27: Hoare triple {124349#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124359#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:15,334 INFO L290 TraceCheckUtils]: 28: Hoare triple {124359#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {124359#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:15,334 INFO L290 TraceCheckUtils]: 29: Hoare triple {124359#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124359#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:15,335 INFO L290 TraceCheckUtils]: 30: Hoare triple {124359#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,335 INFO L290 TraceCheckUtils]: 31: Hoare triple {124369#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,336 INFO L272 TraceCheckUtils]: 32: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,336 INFO L290 TraceCheckUtils]: 33: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,336 INFO L290 TraceCheckUtils]: 34: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,336 INFO L290 TraceCheckUtils]: 35: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,337 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #98#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,337 INFO L272 TraceCheckUtils]: 37: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,338 INFO L290 TraceCheckUtils]: 38: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,338 INFO L290 TraceCheckUtils]: 39: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,338 INFO L290 TraceCheckUtils]: 40: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,339 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #100#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,339 INFO L272 TraceCheckUtils]: 42: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,339 INFO L290 TraceCheckUtils]: 43: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,339 INFO L290 TraceCheckUtils]: 44: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,340 INFO L290 TraceCheckUtils]: 45: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,340 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #102#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,341 INFO L272 TraceCheckUtils]: 47: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,341 INFO L290 TraceCheckUtils]: 48: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,341 INFO L290 TraceCheckUtils]: 49: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,341 INFO L290 TraceCheckUtils]: 50: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,342 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #104#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,342 INFO L290 TraceCheckUtils]: 52: Hoare triple {124369#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,342 INFO L290 TraceCheckUtils]: 53: Hoare triple {124369#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124369#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:15,343 INFO L290 TraceCheckUtils]: 54: Hoare triple {124369#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124442#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:15,343 INFO L290 TraceCheckUtils]: 55: Hoare triple {124442#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {124442#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:15,344 INFO L290 TraceCheckUtils]: 56: Hoare triple {124442#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {124442#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:15,344 INFO L290 TraceCheckUtils]: 57: Hoare triple {124442#(<= ~counter~0 6)} ~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; {124442#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:15,345 INFO L290 TraceCheckUtils]: 58: Hoare triple {124442#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124455#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:15,345 INFO L290 TraceCheckUtils]: 59: Hoare triple {124455#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {124455#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:15,345 INFO L290 TraceCheckUtils]: 60: Hoare triple {124455#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124455#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:15,346 INFO L290 TraceCheckUtils]: 61: Hoare triple {124455#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124465#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:15,346 INFO L290 TraceCheckUtils]: 62: Hoare triple {124465#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {124465#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:15,346 INFO L290 TraceCheckUtils]: 63: Hoare triple {124465#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124465#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:15,347 INFO L290 TraceCheckUtils]: 64: Hoare triple {124465#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,347 INFO L290 TraceCheckUtils]: 65: Hoare triple {124475#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,348 INFO L272 TraceCheckUtils]: 66: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,348 INFO L290 TraceCheckUtils]: 67: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,348 INFO L290 TraceCheckUtils]: 68: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,349 INFO L290 TraceCheckUtils]: 69: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,349 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #98#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,350 INFO L272 TraceCheckUtils]: 71: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,350 INFO L290 TraceCheckUtils]: 72: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,350 INFO L290 TraceCheckUtils]: 73: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,350 INFO L290 TraceCheckUtils]: 74: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,351 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #100#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,351 INFO L272 TraceCheckUtils]: 76: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,352 INFO L290 TraceCheckUtils]: 77: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,352 INFO L290 TraceCheckUtils]: 78: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,352 INFO L290 TraceCheckUtils]: 79: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,352 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #102#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,353 INFO L272 TraceCheckUtils]: 81: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,353 INFO L290 TraceCheckUtils]: 82: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,353 INFO L290 TraceCheckUtils]: 83: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,354 INFO L290 TraceCheckUtils]: 84: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,354 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #104#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,354 INFO L290 TraceCheckUtils]: 86: Hoare triple {124475#(<= ~counter~0 9)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124475#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 87: Hoare triple {124475#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124545#(<= |main_#t~post8| 9)} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 88: Hoare triple {124545#(<= |main_#t~post8| 9)} assume !(#t~post8 < 20);havoc #t~post8; {124270#false} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 89: Hoare triple {124270#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124270#false} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 90: Hoare triple {124270#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124270#false} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 91: Hoare triple {124270#false} assume !(#t~post7 < 20);havoc #t~post7; {124270#false} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 92: Hoare triple {124270#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; {124270#false} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 93: Hoare triple {124270#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124270#false} is VALID [2022-04-28 05:56:15,355 INFO L290 TraceCheckUtils]: 94: Hoare triple {124270#false} assume !(#t~post6 < 20);havoc #t~post6; {124270#false} is VALID [2022-04-28 05:56:15,355 INFO L272 TraceCheckUtils]: 95: Hoare triple {124270#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)); {124270#false} is VALID [2022-04-28 05:56:15,356 INFO L290 TraceCheckUtils]: 96: Hoare triple {124270#false} ~cond := #in~cond; {124270#false} is VALID [2022-04-28 05:56:15,356 INFO L290 TraceCheckUtils]: 97: Hoare triple {124270#false} assume 0 == ~cond; {124270#false} is VALID [2022-04-28 05:56:15,356 INFO L290 TraceCheckUtils]: 98: Hoare triple {124270#false} assume !false; {124270#false} is VALID [2022-04-28 05:56:15,356 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 103 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:15,356 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:15,875 INFO L290 TraceCheckUtils]: 98: Hoare triple {124270#false} assume !false; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 97: Hoare triple {124270#false} assume 0 == ~cond; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 96: Hoare triple {124270#false} ~cond := #in~cond; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L272 TraceCheckUtils]: 95: Hoare triple {124270#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)); {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 94: Hoare triple {124270#false} assume !(#t~post6 < 20);havoc #t~post6; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 93: Hoare triple {124270#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 92: Hoare triple {124270#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; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 91: Hoare triple {124270#false} assume !(#t~post7 < 20);havoc #t~post7; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 90: Hoare triple {124270#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 89: Hoare triple {124270#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124270#false} is VALID [2022-04-28 05:56:15,876 INFO L290 TraceCheckUtils]: 88: Hoare triple {124609#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {124270#false} is VALID [2022-04-28 05:56:15,877 INFO L290 TraceCheckUtils]: 87: Hoare triple {124613#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124609#(< |main_#t~post8| 20)} is VALID [2022-04-28 05:56:15,877 INFO L290 TraceCheckUtils]: 86: Hoare triple {124613#(< ~counter~0 20)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124613#(< ~counter~0 20)} is VALID [2022-04-28 05:56:15,877 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #104#return; {124613#(< ~counter~0 20)} is VALID [2022-04-28 05:56:15,878 INFO L290 TraceCheckUtils]: 84: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,878 INFO L290 TraceCheckUtils]: 83: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,878 INFO L290 TraceCheckUtils]: 82: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,878 INFO L272 TraceCheckUtils]: 81: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,878 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #102#return; {124613#(< ~counter~0 20)} is VALID [2022-04-28 05:56:15,878 INFO L290 TraceCheckUtils]: 79: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,878 INFO L290 TraceCheckUtils]: 78: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,878 INFO L290 TraceCheckUtils]: 77: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,878 INFO L272 TraceCheckUtils]: 76: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,879 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #100#return; {124613#(< ~counter~0 20)} is VALID [2022-04-28 05:56:15,879 INFO L290 TraceCheckUtils]: 74: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,879 INFO L290 TraceCheckUtils]: 73: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,879 INFO L290 TraceCheckUtils]: 72: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,879 INFO L272 TraceCheckUtils]: 71: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,880 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #98#return; {124613#(< ~counter~0 20)} is VALID [2022-04-28 05:56:15,880 INFO L290 TraceCheckUtils]: 69: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,880 INFO L290 TraceCheckUtils]: 68: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,880 INFO L290 TraceCheckUtils]: 67: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,880 INFO L272 TraceCheckUtils]: 66: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,880 INFO L290 TraceCheckUtils]: 65: Hoare triple {124613#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {124613#(< ~counter~0 20)} is VALID [2022-04-28 05:56:15,882 INFO L290 TraceCheckUtils]: 64: Hoare triple {124683#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124613#(< ~counter~0 20)} is VALID [2022-04-28 05:56:15,882 INFO L290 TraceCheckUtils]: 63: Hoare triple {124683#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124683#(< ~counter~0 19)} is VALID [2022-04-28 05:56:15,882 INFO L290 TraceCheckUtils]: 62: Hoare triple {124683#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {124683#(< ~counter~0 19)} is VALID [2022-04-28 05:56:15,883 INFO L290 TraceCheckUtils]: 61: Hoare triple {124693#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124683#(< ~counter~0 19)} is VALID [2022-04-28 05:56:15,884 INFO L290 TraceCheckUtils]: 60: Hoare triple {124693#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124693#(< ~counter~0 18)} is VALID [2022-04-28 05:56:15,884 INFO L290 TraceCheckUtils]: 59: Hoare triple {124693#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {124693#(< ~counter~0 18)} is VALID [2022-04-28 05:56:15,885 INFO L290 TraceCheckUtils]: 58: Hoare triple {124703#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124693#(< ~counter~0 18)} is VALID [2022-04-28 05:56:15,885 INFO L290 TraceCheckUtils]: 57: Hoare triple {124703#(< ~counter~0 17)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124703#(< ~counter~0 17)} is VALID [2022-04-28 05:56:15,885 INFO L290 TraceCheckUtils]: 56: Hoare triple {124703#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {124703#(< ~counter~0 17)} is VALID [2022-04-28 05:56:15,885 INFO L290 TraceCheckUtils]: 55: Hoare triple {124703#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {124703#(< ~counter~0 17)} is VALID [2022-04-28 05:56:15,886 INFO L290 TraceCheckUtils]: 54: Hoare triple {124716#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124703#(< ~counter~0 17)} is VALID [2022-04-28 05:56:15,887 INFO L290 TraceCheckUtils]: 53: Hoare triple {124716#(< ~counter~0 16)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,887 INFO L290 TraceCheckUtils]: 52: Hoare triple {124716#(< ~counter~0 16)} assume !(~c~0 >= 2 * ~v~0); {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,887 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #104#return; {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,887 INFO L290 TraceCheckUtils]: 50: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,887 INFO L290 TraceCheckUtils]: 49: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,887 INFO L290 TraceCheckUtils]: 48: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,887 INFO L272 TraceCheckUtils]: 47: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,888 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #102#return; {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,888 INFO L290 TraceCheckUtils]: 45: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,888 INFO L290 TraceCheckUtils]: 44: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,888 INFO L290 TraceCheckUtils]: 43: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,888 INFO L272 TraceCheckUtils]: 42: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,889 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #100#return; {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,889 INFO L290 TraceCheckUtils]: 40: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,889 INFO L290 TraceCheckUtils]: 39: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,889 INFO L290 TraceCheckUtils]: 38: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,889 INFO L272 TraceCheckUtils]: 37: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,889 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #98#return; {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,890 INFO L290 TraceCheckUtils]: 35: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,890 INFO L290 TraceCheckUtils]: 34: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,890 INFO L290 TraceCheckUtils]: 33: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,890 INFO L272 TraceCheckUtils]: 32: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,890 INFO L290 TraceCheckUtils]: 31: Hoare triple {124716#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,891 INFO L290 TraceCheckUtils]: 30: Hoare triple {124789#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124716#(< ~counter~0 16)} is VALID [2022-04-28 05:56:15,891 INFO L290 TraceCheckUtils]: 29: Hoare triple {124789#(< ~counter~0 15)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124789#(< ~counter~0 15)} is VALID [2022-04-28 05:56:15,891 INFO L290 TraceCheckUtils]: 28: Hoare triple {124789#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {124789#(< ~counter~0 15)} is VALID [2022-04-28 05:56:15,892 INFO L290 TraceCheckUtils]: 27: Hoare triple {124799#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124789#(< ~counter~0 15)} is VALID [2022-04-28 05:56:15,892 INFO L290 TraceCheckUtils]: 26: Hoare triple {124799#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124799#(< ~counter~0 14)} is VALID [2022-04-28 05:56:15,893 INFO L290 TraceCheckUtils]: 25: Hoare triple {124799#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {124799#(< ~counter~0 14)} is VALID [2022-04-28 05:56:15,893 INFO L290 TraceCheckUtils]: 24: Hoare triple {124809#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124799#(< ~counter~0 14)} is VALID [2022-04-28 05:56:15,894 INFO L290 TraceCheckUtils]: 23: Hoare triple {124809#(< ~counter~0 13)} ~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; {124809#(< ~counter~0 13)} is VALID [2022-04-28 05:56:15,894 INFO L290 TraceCheckUtils]: 22: Hoare triple {124809#(< ~counter~0 13)} assume !(~c~0 >= ~b~0); {124809#(< ~counter~0 13)} is VALID [2022-04-28 05:56:15,894 INFO L290 TraceCheckUtils]: 21: Hoare triple {124809#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {124809#(< ~counter~0 13)} is VALID [2022-04-28 05:56:15,895 INFO L290 TraceCheckUtils]: 20: Hoare triple {124822#(< ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124809#(< ~counter~0 13)} is VALID [2022-04-28 05:56:15,895 INFO L290 TraceCheckUtils]: 19: Hoare triple {124822#(< ~counter~0 12)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124822#(< ~counter~0 12)} is VALID [2022-04-28 05:56:15,896 INFO L290 TraceCheckUtils]: 18: Hoare triple {124822#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {124822#(< ~counter~0 12)} is VALID [2022-04-28 05:56:15,896 INFO L290 TraceCheckUtils]: 17: Hoare triple {124832#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124822#(< ~counter~0 12)} is VALID [2022-04-28 05:56:15,897 INFO L290 TraceCheckUtils]: 16: Hoare triple {124832#(< ~counter~0 11)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,897 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124269#true} {124832#(< ~counter~0 11)} #96#return; {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,897 INFO L290 TraceCheckUtils]: 14: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,897 INFO L290 TraceCheckUtils]: 13: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,897 INFO L290 TraceCheckUtils]: 12: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,897 INFO L272 TraceCheckUtils]: 11: Hoare triple {124832#(< ~counter~0 11)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,898 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124269#true} {124832#(< ~counter~0 11)} #94#return; {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,898 INFO L290 TraceCheckUtils]: 9: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-28 05:56:15,898 INFO L290 TraceCheckUtils]: 8: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-28 05:56:15,898 INFO L290 TraceCheckUtils]: 7: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-28 05:56:15,898 INFO L272 TraceCheckUtils]: 6: Hoare triple {124832#(< ~counter~0 11)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124269#true} is VALID [2022-04-28 05:56:15,898 INFO L290 TraceCheckUtils]: 5: Hoare triple {124832#(< ~counter~0 11)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,898 INFO L272 TraceCheckUtils]: 4: Hoare triple {124832#(< ~counter~0 11)} call #t~ret9 := main(); {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124832#(< ~counter~0 11)} {124269#true} #108#return; {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,899 INFO L290 TraceCheckUtils]: 2: Hoare triple {124832#(< ~counter~0 11)} assume true; {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,899 INFO L290 TraceCheckUtils]: 1: Hoare triple {124269#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {124832#(< ~counter~0 11)} is VALID [2022-04-28 05:56:15,899 INFO L272 TraceCheckUtils]: 0: Hoare triple {124269#true} call ULTIMATE.init(); {124269#true} is VALID [2022-04-28 05:56:15,900 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 39 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:15,900 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:15,900 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1287904972] [2022-04-28 05:56:15,900 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:15,900 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [774423234] [2022-04-28 05:56:15,900 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [774423234] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:15,900 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:15,900 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 05:56:15,900 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:15,900 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [4001516] [2022-04-28 05:56:15,901 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [4001516] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:15,901 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:15,901 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:56:15,901 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [643403179] [2022-04-28 05:56:15,901 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:15,901 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 05:56:15,901 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:15,901 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:15,967 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:15,968 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:56:15,968 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:15,968 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:56:15,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:56:15,968 INFO L87 Difference]: Start difference. First operand 1358 states and 1786 transitions. Second operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:20,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:20,184 INFO L93 Difference]: Finished difference Result 1838 states and 2503 transitions. [2022-04-28 05:56:20,184 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 05:56:20,184 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 05:56:20,184 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:20,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:20,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:56:20,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:20,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:56:20,187 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 05:56:20,416 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:20,492 INFO L225 Difference]: With dead ends: 1838 [2022-04-28 05:56:20,492 INFO L226 Difference]: Without dead ends: 1358 [2022-04-28 05:56:20,494 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 204 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=383, Invalid=547, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:56:20,495 INFO L413 NwaCegarLoop]: 72 mSDtfsCounter, 185 mSDsluCounter, 270 mSDsCounter, 0 mSdLazyCounter, 172 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 185 SdHoareTripleChecker+Valid, 342 SdHoareTripleChecker+Invalid, 273 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 172 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:20,495 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [185 Valid, 342 Invalid, 273 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 172 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:56:20,496 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1358 states. [2022-04-28 05:56:23,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1358 to 1334. [2022-04-28 05:56:23,714 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:23,715 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:23,716 INFO L74 IsIncluded]: Start isIncluded. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:23,717 INFO L87 Difference]: Start difference. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:23,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:23,764 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 05:56:23,764 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 05:56:23,765 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:23,765 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:23,766 INFO L74 IsIncluded]: Start isIncluded. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 05:56:23,767 INFO L87 Difference]: Start difference. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 05:56:23,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:23,814 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 05:56:23,814 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 05:56:23,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:23,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:23,816 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:23,816 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:23,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:23,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1334 states to 1334 states and 1736 transitions. [2022-04-28 05:56:23,885 INFO L78 Accepts]: Start accepts. Automaton has 1334 states and 1736 transitions. Word has length 99 [2022-04-28 05:56:23,885 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:23,885 INFO L495 AbstractCegarLoop]: Abstraction has 1334 states and 1736 transitions. [2022-04-28 05:56:23,886 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:23,886 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1334 states and 1736 transitions. [2022-04-28 05:56:27,670 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1736 edges. 1736 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:27,670 INFO L276 IsEmpty]: Start isEmpty. Operand 1334 states and 1736 transitions. [2022-04-28 05:56:27,671 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 05:56:27,671 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:27,671 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:27,687 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:27,871 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable35 [2022-04-28 05:56:27,872 INFO L420 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:27,872 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:27,872 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 5 times [2022-04-28 05:56:27,872 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:27,872 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1670885015] [2022-04-28 05:56:27,872 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:27,872 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 6 times [2022-04-28 05:56:27,872 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:27,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2009178438] [2022-04-28 05:56:27,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:27,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:27,881 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:27,881 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [317330498] [2022-04-28 05:56:27,881 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:56:27,881 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:27,882 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:27,882 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:27,893 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-28 05:56:27,985 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:56:27,985 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:27,986 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-28 05:56:28,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:28,005 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:28,991 INFO L272 TraceCheckUtils]: 0: Hoare triple {133960#true} call ULTIMATE.init(); {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L290 TraceCheckUtils]: 1: Hoare triple {133960#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L290 TraceCheckUtils]: 2: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133960#true} {133960#true} #108#return; {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L272 TraceCheckUtils]: 4: Hoare triple {133960#true} call #t~ret9 := main(); {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L290 TraceCheckUtils]: 5: Hoare triple {133960#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L272 TraceCheckUtils]: 6: Hoare triple {133960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L290 TraceCheckUtils]: 7: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L290 TraceCheckUtils]: 8: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L290 TraceCheckUtils]: 9: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133960#true} {133960#true} #94#return; {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L272 TraceCheckUtils]: 11: Hoare triple {133960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {133960#true} is VALID [2022-04-28 05:56:28,991 INFO L290 TraceCheckUtils]: 12: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:28,992 INFO L290 TraceCheckUtils]: 13: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:28,992 INFO L290 TraceCheckUtils]: 14: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:28,992 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {133960#true} {133960#true} #96#return; {133960#true} is VALID [2022-04-28 05:56:28,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {133960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {134013#(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-28 05:56:28,998 INFO L290 TraceCheckUtils]: 17: Hoare triple {134013#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134013#(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-28 05:56:28,999 INFO L290 TraceCheckUtils]: 18: Hoare triple {134013#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {134013#(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-28 05:56:28,999 INFO L290 TraceCheckUtils]: 19: Hoare triple {134013#(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; {134023#(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-28 05:56:29,000 INFO L290 TraceCheckUtils]: 20: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134023#(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-28 05:56:29,000 INFO L290 TraceCheckUtils]: 21: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {134023#(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-28 05:56:29,001 INFO L290 TraceCheckUtils]: 22: Hoare triple {134023#(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; {134023#(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-28 05:56:29,001 INFO L290 TraceCheckUtils]: 23: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134023#(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-28 05:56:29,001 INFO L290 TraceCheckUtils]: 24: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {134023#(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-28 05:56:29,002 INFO L272 TraceCheckUtils]: 25: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,002 INFO L290 TraceCheckUtils]: 26: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,002 INFO L290 TraceCheckUtils]: 27: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,002 INFO L290 TraceCheckUtils]: 28: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,003 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {133960#true} {134023#(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))} #98#return; {134023#(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-28 05:56:29,003 INFO L272 TraceCheckUtils]: 30: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,003 INFO L290 TraceCheckUtils]: 31: Hoare triple {133960#true} ~cond := #in~cond; {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:29,003 INFO L290 TraceCheckUtils]: 32: Hoare triple {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:29,004 INFO L290 TraceCheckUtils]: 33: Hoare triple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:29,004 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} {134023#(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))} #100#return; {134023#(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-28 05:56:29,004 INFO L272 TraceCheckUtils]: 35: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,005 INFO L290 TraceCheckUtils]: 36: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,005 INFO L290 TraceCheckUtils]: 37: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,005 INFO L290 TraceCheckUtils]: 38: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,005 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {133960#true} {134023#(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; {134023#(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-28 05:56:29,006 INFO L272 TraceCheckUtils]: 40: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,006 INFO L290 TraceCheckUtils]: 41: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,006 INFO L290 TraceCheckUtils]: 42: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,006 INFO L290 TraceCheckUtils]: 43: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,007 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {133960#true} {134023#(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; {134023#(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-28 05:56:29,007 INFO L290 TraceCheckUtils]: 45: Hoare triple {134023#(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; {134023#(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-28 05:56:29,007 INFO L290 TraceCheckUtils]: 46: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134023#(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-28 05:56:29,008 INFO L290 TraceCheckUtils]: 47: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {134023#(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-28 05:56:29,008 INFO L272 TraceCheckUtils]: 48: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,008 INFO L290 TraceCheckUtils]: 49: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,008 INFO L290 TraceCheckUtils]: 50: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,008 INFO L290 TraceCheckUtils]: 51: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,009 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {133960#true} {134023#(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))} #98#return; {134023#(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-28 05:56:29,009 INFO L272 TraceCheckUtils]: 53: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,009 INFO L290 TraceCheckUtils]: 54: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,009 INFO L290 TraceCheckUtils]: 55: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,009 INFO L290 TraceCheckUtils]: 56: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,010 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {133960#true} {134023#(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))} #100#return; {134023#(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-28 05:56:29,010 INFO L272 TraceCheckUtils]: 58: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,010 INFO L290 TraceCheckUtils]: 59: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,010 INFO L290 TraceCheckUtils]: 60: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,010 INFO L290 TraceCheckUtils]: 61: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,011 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {133960#true} {134023#(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; {134023#(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-28 05:56:29,011 INFO L272 TraceCheckUtils]: 63: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,011 INFO L290 TraceCheckUtils]: 64: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,011 INFO L290 TraceCheckUtils]: 65: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,011 INFO L290 TraceCheckUtils]: 66: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,012 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {133960#true} {134023#(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; {134023#(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-28 05:56:29,013 INFO L290 TraceCheckUtils]: 68: Hoare triple {134023#(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; {134023#(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-28 05:56:29,013 INFO L290 TraceCheckUtils]: 69: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134023#(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-28 05:56:29,013 INFO L290 TraceCheckUtils]: 70: Hoare triple {134023#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {134023#(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-28 05:56:29,013 INFO L272 TraceCheckUtils]: 71: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,013 INFO L290 TraceCheckUtils]: 72: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,014 INFO L290 TraceCheckUtils]: 73: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,014 INFO L290 TraceCheckUtils]: 74: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,014 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {133960#true} {134023#(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))} #98#return; {134023#(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-28 05:56:29,014 INFO L272 TraceCheckUtils]: 76: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,014 INFO L290 TraceCheckUtils]: 77: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,014 INFO L290 TraceCheckUtils]: 78: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,015 INFO L290 TraceCheckUtils]: 79: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,015 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {133960#true} {134023#(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))} #100#return; {134023#(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-28 05:56:29,015 INFO L272 TraceCheckUtils]: 81: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,015 INFO L290 TraceCheckUtils]: 82: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-28 05:56:29,015 INFO L290 TraceCheckUtils]: 83: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-28 05:56:29,016 INFO L290 TraceCheckUtils]: 84: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-28 05:56:29,016 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {133960#true} {134023#(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; {134023#(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-28 05:56:29,016 INFO L272 TraceCheckUtils]: 86: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-28 05:56:29,017 INFO L290 TraceCheckUtils]: 87: Hoare triple {133960#true} ~cond := #in~cond; {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:29,017 INFO L290 TraceCheckUtils]: 88: Hoare triple {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:29,017 INFO L290 TraceCheckUtils]: 89: Hoare triple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:29,018 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} {134023#(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; {134239#(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-28 05:56:29,019 INFO L290 TraceCheckUtils]: 91: Hoare triple {134239#(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); {134239#(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-28 05:56:29,023 INFO L290 TraceCheckUtils]: 92: Hoare triple {134239#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:29,023 INFO L290 TraceCheckUtils]: 93: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:29,024 INFO L290 TraceCheckUtils]: 94: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:29,024 INFO L290 TraceCheckUtils]: 95: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:29,026 INFO L290 TraceCheckUtils]: 96: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:29,027 INFO L290 TraceCheckUtils]: 97: Hoare triple {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:29,027 INFO L290 TraceCheckUtils]: 98: Hoare triple {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:29,028 INFO L290 TraceCheckUtils]: 99: Hoare triple {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !(0 != ~b~0); {134269#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:29,028 INFO L272 TraceCheckUtils]: 100: Hoare triple {134269#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~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)); {134273#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:29,029 INFO L290 TraceCheckUtils]: 101: Hoare triple {134273#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {134277#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:29,029 INFO L290 TraceCheckUtils]: 102: Hoare triple {134277#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {133961#false} is VALID [2022-04-28 05:56:29,029 INFO L290 TraceCheckUtils]: 103: Hoare triple {133961#false} assume !false; {133961#false} is VALID [2022-04-28 05:56:29,030 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 57 proven. 35 refuted. 0 times theorem prover too weak. 227 trivial. 0 not checked. [2022-04-28 05:56:29,030 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:42,807 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:56:43,239 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:43,240 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2009178438] [2022-04-28 05:56:43,240 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:43,240 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [317330498] [2022-04-28 05:56:43,240 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [317330498] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:56:43,240 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:56:43,240 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-28 05:56:43,240 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:43,240 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1670885015] [2022-04-28 05:56:43,240 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1670885015] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:43,240 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:43,240 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:56:43,240 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2127086446] [2022-04-28 05:56:43,241 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:43,241 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 05:56:43,241 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:43,241 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:43,305 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-28 05:56:43,306 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:56:43,306 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:43,306 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:56:43,306 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:56:43,306 INFO L87 Difference]: Start difference. First operand 1334 states and 1736 transitions. Second operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:48,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:48,797 INFO L93 Difference]: Finished difference Result 1565 states and 2045 transitions. [2022-04-28 05:56:48,797 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:56:48,797 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 05:56:48,797 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:48,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:48,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 05:56:48,798 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:48,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 05:56:48,799 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 135 transitions. [2022-04-28 05:56:48,966 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:49,088 INFO L225 Difference]: With dead ends: 1565 [2022-04-28 05:56:49,089 INFO L226 Difference]: Without dead ends: 1556 [2022-04-28 05:56:49,089 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:56:49,089 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 67 mSDsluCounter, 296 mSDsCounter, 0 mSdLazyCounter, 379 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 74 SdHoareTripleChecker+Valid, 347 SdHoareTripleChecker+Invalid, 418 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 379 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:49,089 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [74 Valid, 347 Invalid, 418 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 379 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 05:56:49,090 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1556 states. [2022-04-28 05:56:52,799 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1556 to 1518. [2022-04-28 05:56:52,799 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:52,800 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:52,801 INFO L74 IsIncluded]: Start isIncluded. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:52,802 INFO L87 Difference]: Start difference. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:52,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:52,868 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 05:56:52,868 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 05:56:52,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:52,870 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:52,871 INFO L74 IsIncluded]: Start isIncluded. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 05:56:52,872 INFO L87 Difference]: Start difference. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 05:56:52,937 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:52,937 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 05:56:52,937 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 05:56:52,939 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:52,939 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:52,939 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:52,939 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:52,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:53,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1518 states to 1518 states and 1985 transitions. [2022-04-28 05:56:53,035 INFO L78 Accepts]: Start accepts. Automaton has 1518 states and 1985 transitions. Word has length 104 [2022-04-28 05:56:53,035 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:53,035 INFO L495 AbstractCegarLoop]: Abstraction has 1518 states and 1985 transitions. [2022-04-28 05:56:53,035 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:53,035 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1518 states and 1985 transitions. [2022-04-28 05:56:57,595 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1985 edges. 1985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:57,596 INFO L276 IsEmpty]: Start isEmpty. Operand 1518 states and 1985 transitions. [2022-04-28 05:56:57,596 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 05:56:57,596 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:57,597 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:57,613 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Ended with exit code 0 [2022-04-28 05:56:57,798 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable36,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:57,799 INFO L420 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:57,799 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:57,799 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 5 times [2022-04-28 05:56:57,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:57,799 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [786014348] [2022-04-28 05:56:57,799 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:57,799 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 6 times [2022-04-28 05:56:57,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:57,800 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [334434243] [2022-04-28 05:56:57,800 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:57,800 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:57,810 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:57,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1388768659] [2022-04-28 05:56:57,810 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:56:57,810 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:57,810 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:57,811 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:57,817 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-28 05:56:57,871 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:56:57,871 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:57,872 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:56:57,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:57,910 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:12,859 INFO L272 TraceCheckUtils]: 0: Hoare triple {143620#true} call ULTIMATE.init(); {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 1: Hoare triple {143620#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143620#true} {143620#true} #108#return; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L272 TraceCheckUtils]: 4: Hoare triple {143620#true} call #t~ret9 := main(); {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {143620#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L272 TraceCheckUtils]: 6: Hoare triple {143620#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 7: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 9: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143620#true} {143620#true} #94#return; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L272 TraceCheckUtils]: 11: Hoare triple {143620#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 12: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 13: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,860 INFO L290 TraceCheckUtils]: 14: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,861 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143620#true} {143620#true} #96#return; {143620#true} is VALID [2022-04-28 05:57:12,861 INFO L290 TraceCheckUtils]: 16: Hoare triple {143620#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,861 INFO L290 TraceCheckUtils]: 17: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,862 INFO L290 TraceCheckUtils]: 18: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,862 INFO L290 TraceCheckUtils]: 19: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,862 INFO L290 TraceCheckUtils]: 20: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,863 INFO L290 TraceCheckUtils]: 21: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,863 INFO L290 TraceCheckUtils]: 22: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,863 INFO L290 TraceCheckUtils]: 23: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,864 INFO L290 TraceCheckUtils]: 24: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post8 < 20);havoc #t~post8; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,864 INFO L272 TraceCheckUtils]: 25: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,864 INFO L290 TraceCheckUtils]: 26: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,864 INFO L290 TraceCheckUtils]: 27: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,864 INFO L290 TraceCheckUtils]: 28: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,865 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143620#true} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #98#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,865 INFO L272 TraceCheckUtils]: 30: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,865 INFO L290 TraceCheckUtils]: 31: Hoare triple {143620#true} ~cond := #in~cond; {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:12,865 INFO L290 TraceCheckUtils]: 32: Hoare triple {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:12,866 INFO L290 TraceCheckUtils]: 33: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:12,866 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #100#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,866 INFO L272 TraceCheckUtils]: 35: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,866 INFO L290 TraceCheckUtils]: 36: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,866 INFO L290 TraceCheckUtils]: 37: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,866 INFO L290 TraceCheckUtils]: 38: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,867 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143620#true} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #102#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,867 INFO L272 TraceCheckUtils]: 40: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,867 INFO L290 TraceCheckUtils]: 41: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,867 INFO L290 TraceCheckUtils]: 42: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,867 INFO L290 TraceCheckUtils]: 43: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,868 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143620#true} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #104#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,868 INFO L290 TraceCheckUtils]: 45: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= 2 * ~v~0); {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,869 INFO L290 TraceCheckUtils]: 46: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,869 INFO L290 TraceCheckUtils]: 47: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,869 INFO L290 TraceCheckUtils]: 48: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,870 INFO L290 TraceCheckUtils]: 49: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:12,870 INFO L290 TraceCheckUtils]: 50: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:12,870 INFO L290 TraceCheckUtils]: 51: Hoare triple {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:12,871 INFO L290 TraceCheckUtils]: 52: Hoare triple {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:12,871 INFO L290 TraceCheckUtils]: 53: Hoare triple {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:12,871 INFO L290 TraceCheckUtils]: 54: Hoare triple {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:12,872 INFO L290 TraceCheckUtils]: 55: Hoare triple {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:12,872 INFO L290 TraceCheckUtils]: 56: Hoare triple {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,872 INFO L290 TraceCheckUtils]: 57: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,873 INFO L290 TraceCheckUtils]: 58: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,873 INFO L272 TraceCheckUtils]: 59: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,873 INFO L290 TraceCheckUtils]: 60: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,873 INFO L290 TraceCheckUtils]: 61: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,873 INFO L290 TraceCheckUtils]: 62: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,874 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #98#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,874 INFO L272 TraceCheckUtils]: 64: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,874 INFO L290 TraceCheckUtils]: 65: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,874 INFO L290 TraceCheckUtils]: 66: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,874 INFO L290 TraceCheckUtils]: 67: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,875 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #100#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,875 INFO L272 TraceCheckUtils]: 69: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,875 INFO L290 TraceCheckUtils]: 70: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,875 INFO L290 TraceCheckUtils]: 71: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,875 INFO L290 TraceCheckUtils]: 72: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,876 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #102#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,876 INFO L272 TraceCheckUtils]: 74: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,876 INFO L290 TraceCheckUtils]: 75: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:12,876 INFO L290 TraceCheckUtils]: 76: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:12,876 INFO L290 TraceCheckUtils]: 77: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:12,876 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #104#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,877 INFO L290 TraceCheckUtils]: 79: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:12,877 INFO L290 TraceCheckUtils]: 80: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:12,877 INFO L290 TraceCheckUtils]: 81: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:12,878 INFO L290 TraceCheckUtils]: 82: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:12,878 INFO L290 TraceCheckUtils]: 83: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:12,879 INFO L290 TraceCheckUtils]: 84: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= 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; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,879 INFO L290 TraceCheckUtils]: 85: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,879 INFO L290 TraceCheckUtils]: 86: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,880 INFO L290 TraceCheckUtils]: 87: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,880 INFO L290 TraceCheckUtils]: 88: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,880 INFO L290 TraceCheckUtils]: 89: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post7 < 20);havoc #t~post7; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,881 INFO L290 TraceCheckUtils]: 90: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,881 INFO L290 TraceCheckUtils]: 91: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,882 INFO L290 TraceCheckUtils]: 92: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post8 < 20);havoc #t~post8; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:12,882 INFO L272 TraceCheckUtils]: 93: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:12,882 INFO L290 TraceCheckUtils]: 94: Hoare triple {143620#true} ~cond := #in~cond; {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:12,882 INFO L290 TraceCheckUtils]: 95: Hoare triple {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:12,882 INFO L290 TraceCheckUtils]: 96: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:12,891 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #98#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:12,892 INFO L272 TraceCheckUtils]: 98: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:12,892 INFO L290 TraceCheckUtils]: 99: Hoare triple {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143932#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:12,892 INFO L290 TraceCheckUtils]: 100: Hoare triple {143932#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143621#false} is VALID [2022-04-28 05:57:12,893 INFO L290 TraceCheckUtils]: 101: Hoare triple {143621#false} assume !false; {143621#false} is VALID [2022-04-28 05:57:12,893 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 40 proven. 73 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 05:57:12,893 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:57:44,739 INFO L290 TraceCheckUtils]: 101: Hoare triple {143621#false} assume !false; {143621#false} is VALID [2022-04-28 05:57:44,740 INFO L290 TraceCheckUtils]: 100: Hoare triple {143932#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143621#false} is VALID [2022-04-28 05:57:44,740 INFO L290 TraceCheckUtils]: 99: Hoare triple {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143932#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:44,741 INFO L272 TraceCheckUtils]: 98: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:44,741 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #98#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,742 INFO L290 TraceCheckUtils]: 96: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:44,742 INFO L290 TraceCheckUtils]: 95: Hoare triple {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:44,742 INFO L290 TraceCheckUtils]: 94: Hoare triple {143620#true} ~cond := #in~cond; {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:44,742 INFO L272 TraceCheckUtils]: 93: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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)); {143620#true} is VALID [2022-04-28 05:57:44,743 INFO L290 TraceCheckUtils]: 92: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 20);havoc #t~post8; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,743 INFO L290 TraceCheckUtils]: 91: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,744 INFO L290 TraceCheckUtils]: 90: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,744 INFO L290 TraceCheckUtils]: 89: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 20);havoc #t~post7; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,744 INFO L290 TraceCheckUtils]: 88: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,745 INFO L290 TraceCheckUtils]: 87: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,745 INFO L290 TraceCheckUtils]: 86: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 20);havoc #t~post6; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,746 INFO L290 TraceCheckUtils]: 85: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,902 INFO L290 TraceCheckUtils]: 84: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~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; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:44,903 INFO L290 TraceCheckUtils]: 83: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !(~c~0 >= ~b~0); {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:44,903 INFO L290 TraceCheckUtils]: 82: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 20);havoc #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:44,904 INFO L290 TraceCheckUtils]: 81: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:44,938 INFO L290 TraceCheckUtils]: 80: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:44,938 INFO L290 TraceCheckUtils]: 79: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !(~c~0 >= 2 * ~v~0); {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,939 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #104#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,939 INFO L290 TraceCheckUtils]: 77: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,939 INFO L290 TraceCheckUtils]: 76: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,939 INFO L290 TraceCheckUtils]: 75: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,939 INFO L272 TraceCheckUtils]: 74: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,940 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #102#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,940 INFO L290 TraceCheckUtils]: 72: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,940 INFO L290 TraceCheckUtils]: 71: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,940 INFO L290 TraceCheckUtils]: 70: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,940 INFO L272 TraceCheckUtils]: 69: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,941 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #100#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,941 INFO L290 TraceCheckUtils]: 67: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,941 INFO L290 TraceCheckUtils]: 66: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,941 INFO L290 TraceCheckUtils]: 65: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,941 INFO L272 TraceCheckUtils]: 64: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,942 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #98#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,942 INFO L290 TraceCheckUtils]: 62: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,942 INFO L290 TraceCheckUtils]: 61: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,942 INFO L290 TraceCheckUtils]: 60: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,942 INFO L272 TraceCheckUtils]: 59: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,943 INFO L290 TraceCheckUtils]: 58: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,943 INFO L290 TraceCheckUtils]: 57: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,944 INFO L290 TraceCheckUtils]: 56: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:44,944 INFO L290 TraceCheckUtils]: 55: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 20);havoc #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:44,945 INFO L290 TraceCheckUtils]: 54: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:44,945 INFO L290 TraceCheckUtils]: 53: Hoare triple {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= 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; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:44,946 INFO L290 TraceCheckUtils]: 52: Hoare triple {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 20);havoc #t~post6; {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:44,946 INFO L290 TraceCheckUtils]: 51: Hoare triple {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:44,947 INFO L290 TraceCheckUtils]: 50: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~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; {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:44,947 INFO L290 TraceCheckUtils]: 49: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= ~b~0); {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,947 INFO L290 TraceCheckUtils]: 48: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !!(#t~post7 < 20);havoc #t~post7; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,948 INFO L290 TraceCheckUtils]: 47: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,948 INFO L290 TraceCheckUtils]: 46: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,948 INFO L290 TraceCheckUtils]: 45: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= 2 * ~v~0); {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,949 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143620#true} {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #104#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,949 INFO L290 TraceCheckUtils]: 43: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,949 INFO L290 TraceCheckUtils]: 42: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,949 INFO L290 TraceCheckUtils]: 41: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,949 INFO L272 TraceCheckUtils]: 40: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,950 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143620#true} {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #102#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,950 INFO L290 TraceCheckUtils]: 38: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,950 INFO L290 TraceCheckUtils]: 37: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,950 INFO L290 TraceCheckUtils]: 36: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,950 INFO L272 TraceCheckUtils]: 35: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,951 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143620#true} #100#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:44,951 INFO L290 TraceCheckUtils]: 33: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:44,958 INFO L290 TraceCheckUtils]: 32: Hoare triple {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:44,958 INFO L290 TraceCheckUtils]: 31: Hoare triple {143620#true} ~cond := #in~cond; {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:44,958 INFO L272 TraceCheckUtils]: 30: Hoare triple {143620#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,958 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143620#true} {143620#true} #98#return; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 28: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 27: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 26: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L272 TraceCheckUtils]: 25: Hoare triple {143620#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 24: Hoare triple {143620#true} assume !!(#t~post8 < 20);havoc #t~post8; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 23: Hoare triple {143620#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 22: Hoare triple {143620#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 21: Hoare triple {143620#true} assume !!(#t~post7 < 20);havoc #t~post7; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 20: Hoare triple {143620#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 19: Hoare triple {143620#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 18: Hoare triple {143620#true} assume !!(#t~post6 < 20);havoc #t~post6; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 17: Hoare triple {143620#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 16: Hoare triple {143620#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143620#true} {143620#true} #96#return; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 14: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,959 INFO L290 TraceCheckUtils]: 13: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L290 TraceCheckUtils]: 12: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L272 TraceCheckUtils]: 11: Hoare triple {143620#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143620#true} {143620#true} #94#return; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L290 TraceCheckUtils]: 9: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L290 TraceCheckUtils]: 8: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L290 TraceCheckUtils]: 7: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L272 TraceCheckUtils]: 6: Hoare triple {143620#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L290 TraceCheckUtils]: 5: Hoare triple {143620#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L272 TraceCheckUtils]: 4: Hoare triple {143620#true} call #t~ret9 := main(); {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143620#true} {143620#true} #108#return; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L290 TraceCheckUtils]: 2: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L290 TraceCheckUtils]: 1: Hoare triple {143620#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {143620#true} is VALID [2022-04-28 05:57:44,960 INFO L272 TraceCheckUtils]: 0: Hoare triple {143620#true} call ULTIMATE.init(); {143620#true} is VALID [2022-04-28 05:57:44,961 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 66 proven. 47 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 05:57:44,961 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:44,961 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [334434243] [2022-04-28 05:57:44,961 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:44,961 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1388768659] [2022-04-28 05:57:44,961 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1388768659] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:57:44,961 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:57:44,961 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 18 [2022-04-28 05:57:44,962 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:44,962 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [786014348] [2022-04-28 05:57:44,962 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [786014348] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:44,962 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:44,962 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:57:44,962 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1283971299] [2022-04-28 05:57:44,962 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:44,962 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 05:57:44,962 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:44,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:45,046 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:45,046 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:57:45,046 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:45,046 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:57:45,046 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=258, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:57:45,046 INFO L87 Difference]: Start difference. First operand 1518 states and 1985 transitions. Second operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:52,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:52,926 INFO L93 Difference]: Finished difference Result 1833 states and 2418 transitions. [2022-04-28 05:57:52,926 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:57:52,926 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 05:57:52,926 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:52,926 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:52,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 05:57:52,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:52,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 05:57:52,936 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 245 transitions. [2022-04-28 05:57:53,275 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:53,415 INFO L225 Difference]: With dead ends: 1833 [2022-04-28 05:57:53,415 INFO L226 Difference]: Without dead ends: 1831 [2022-04-28 05:57:53,415 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 183 SyntacticMatches, 4 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=128, Invalid=628, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:57:53,416 INFO L413 NwaCegarLoop]: 92 mSDtfsCounter, 149 mSDsluCounter, 498 mSDsCounter, 0 mSdLazyCounter, 779 mSolverCounterSat, 98 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 590 SdHoareTripleChecker+Invalid, 877 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 98 IncrementalHoareTripleChecker+Valid, 779 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:57:53,416 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [156 Valid, 590 Invalid, 877 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [98 Valid, 779 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-28 05:57:53,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1831 states. [2022-04-28 05:57:57,761 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1831 to 1765. [2022-04-28 05:57:57,761 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:57,763 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:57:57,764 INFO L74 IsIncluded]: Start isIncluded. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:57:57,765 INFO L87 Difference]: Start difference. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:57:57,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:57,856 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 05:57:57,856 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 05:57:57,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:57,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:57,859 INFO L74 IsIncluded]: Start isIncluded. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 05:57:57,860 INFO L87 Difference]: Start difference. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 05:57:57,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:57,954 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 05:57:57,954 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 05:57:57,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:57,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:57,957 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:57,957 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:57,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:57:58,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1765 states to 1765 states and 2340 transitions. [2022-04-28 05:57:58,120 INFO L78 Accepts]: Start accepts. Automaton has 1765 states and 2340 transitions. Word has length 102 [2022-04-28 05:57:58,120 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:58,120 INFO L495 AbstractCegarLoop]: Abstraction has 1765 states and 2340 transitions. [2022-04-28 05:57:58,120 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:58,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1765 states and 2340 transitions. [2022-04-28 05:58:03,769 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2340 edges. 2340 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:03,769 INFO L276 IsEmpty]: Start isEmpty. Operand 1765 states and 2340 transitions. [2022-04-28 05:58:03,770 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-28 05:58:03,770 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:03,770 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:03,786 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:03,970 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-28 05:58:03,971 INFO L420 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:03,971 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:03,971 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 7 times [2022-04-28 05:58:03,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:03,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2137290289] [2022-04-28 05:58:03,971 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:03,971 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 8 times [2022-04-28 05:58:03,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:03,972 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [161256201] [2022-04-28 05:58:03,972 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:03,972 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:03,982 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:03,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [693610373] [2022-04-28 05:58:03,982 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:03,982 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:03,982 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:03,983 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:03,984 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-28 05:58:04,043 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:04,043 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:04,044 INFO L263 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 05:58:04,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:04,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:04,516 INFO L272 TraceCheckUtils]: 0: Hoare triple {155127#true} call ULTIMATE.init(); {155127#true} is VALID [2022-04-28 05:58:04,516 INFO L290 TraceCheckUtils]: 1: Hoare triple {155127#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,516 INFO L290 TraceCheckUtils]: 2: Hoare triple {155135#(<= ~counter~0 0)} assume true; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,517 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155135#(<= ~counter~0 0)} {155127#true} #108#return; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,517 INFO L272 TraceCheckUtils]: 4: Hoare triple {155135#(<= ~counter~0 0)} call #t~ret9 := main(); {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,517 INFO L290 TraceCheckUtils]: 5: Hoare triple {155135#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,518 INFO L272 TraceCheckUtils]: 6: Hoare triple {155135#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,518 INFO L290 TraceCheckUtils]: 7: Hoare triple {155135#(<= ~counter~0 0)} ~cond := #in~cond; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,518 INFO L290 TraceCheckUtils]: 8: Hoare triple {155135#(<= ~counter~0 0)} assume !(0 == ~cond); {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,518 INFO L290 TraceCheckUtils]: 9: Hoare triple {155135#(<= ~counter~0 0)} assume true; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,519 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155135#(<= ~counter~0 0)} {155135#(<= ~counter~0 0)} #94#return; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,519 INFO L272 TraceCheckUtils]: 11: Hoare triple {155135#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,519 INFO L290 TraceCheckUtils]: 12: Hoare triple {155135#(<= ~counter~0 0)} ~cond := #in~cond; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,520 INFO L290 TraceCheckUtils]: 13: Hoare triple {155135#(<= ~counter~0 0)} assume !(0 == ~cond); {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,520 INFO L290 TraceCheckUtils]: 14: Hoare triple {155135#(<= ~counter~0 0)} assume true; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,520 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155135#(<= ~counter~0 0)} {155135#(<= ~counter~0 0)} #96#return; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,521 INFO L290 TraceCheckUtils]: 16: Hoare triple {155135#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155135#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:04,523 INFO L290 TraceCheckUtils]: 17: Hoare triple {155135#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155184#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:04,523 INFO L290 TraceCheckUtils]: 18: Hoare triple {155184#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {155184#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:04,523 INFO L290 TraceCheckUtils]: 19: Hoare triple {155184#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155184#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:04,524 INFO L290 TraceCheckUtils]: 20: Hoare triple {155184#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155194#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:04,524 INFO L290 TraceCheckUtils]: 21: Hoare triple {155194#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {155194#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:04,525 INFO L290 TraceCheckUtils]: 22: Hoare triple {155194#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155194#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:04,526 INFO L290 TraceCheckUtils]: 23: Hoare triple {155194#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,526 INFO L290 TraceCheckUtils]: 24: Hoare triple {155204#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,526 INFO L272 TraceCheckUtils]: 25: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,527 INFO L290 TraceCheckUtils]: 26: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,527 INFO L290 TraceCheckUtils]: 27: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,527 INFO L290 TraceCheckUtils]: 28: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,528 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #98#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,528 INFO L272 TraceCheckUtils]: 30: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,528 INFO L290 TraceCheckUtils]: 31: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,529 INFO L290 TraceCheckUtils]: 32: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,529 INFO L290 TraceCheckUtils]: 33: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,529 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #100#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,530 INFO L272 TraceCheckUtils]: 35: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,530 INFO L290 TraceCheckUtils]: 36: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,530 INFO L290 TraceCheckUtils]: 37: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,531 INFO L290 TraceCheckUtils]: 38: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,531 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #102#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,531 INFO L272 TraceCheckUtils]: 40: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,532 INFO L290 TraceCheckUtils]: 41: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,532 INFO L290 TraceCheckUtils]: 42: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,532 INFO L290 TraceCheckUtils]: 43: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,533 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #104#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,533 INFO L290 TraceCheckUtils]: 45: Hoare triple {155204#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,533 INFO L290 TraceCheckUtils]: 46: Hoare triple {155204#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155204#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:04,534 INFO L290 TraceCheckUtils]: 47: Hoare triple {155204#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155277#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:04,534 INFO L290 TraceCheckUtils]: 48: Hoare triple {155277#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {155277#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:04,535 INFO L290 TraceCheckUtils]: 49: Hoare triple {155277#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {155277#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:04,535 INFO L290 TraceCheckUtils]: 50: Hoare triple {155277#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155277#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:04,536 INFO L290 TraceCheckUtils]: 51: Hoare triple {155277#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155290#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:04,536 INFO L290 TraceCheckUtils]: 52: Hoare triple {155290#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {155290#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:04,536 INFO L290 TraceCheckUtils]: 53: Hoare triple {155290#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155290#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:04,537 INFO L290 TraceCheckUtils]: 54: Hoare triple {155290#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155300#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:04,537 INFO L290 TraceCheckUtils]: 55: Hoare triple {155300#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {155300#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:04,538 INFO L290 TraceCheckUtils]: 56: Hoare triple {155300#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155300#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:04,539 INFO L290 TraceCheckUtils]: 57: Hoare triple {155300#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,539 INFO L290 TraceCheckUtils]: 58: Hoare triple {155310#(<= ~counter~0 7)} assume !!(#t~post8 < 20);havoc #t~post8; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,539 INFO L272 TraceCheckUtils]: 59: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,540 INFO L290 TraceCheckUtils]: 60: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,540 INFO L290 TraceCheckUtils]: 61: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,540 INFO L290 TraceCheckUtils]: 62: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,541 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #98#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,541 INFO L272 TraceCheckUtils]: 64: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,541 INFO L290 TraceCheckUtils]: 65: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,542 INFO L290 TraceCheckUtils]: 66: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,542 INFO L290 TraceCheckUtils]: 67: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,542 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #100#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,543 INFO L272 TraceCheckUtils]: 69: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,543 INFO L290 TraceCheckUtils]: 70: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,543 INFO L290 TraceCheckUtils]: 71: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,544 INFO L290 TraceCheckUtils]: 72: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,544 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #102#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,544 INFO L272 TraceCheckUtils]: 74: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,545 INFO L290 TraceCheckUtils]: 75: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,545 INFO L290 TraceCheckUtils]: 76: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,545 INFO L290 TraceCheckUtils]: 77: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,546 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #104#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,546 INFO L290 TraceCheckUtils]: 79: Hoare triple {155310#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,546 INFO L290 TraceCheckUtils]: 80: Hoare triple {155310#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155310#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:04,547 INFO L290 TraceCheckUtils]: 81: Hoare triple {155310#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155383#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:04,547 INFO L290 TraceCheckUtils]: 82: Hoare triple {155383#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {155383#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:04,548 INFO L290 TraceCheckUtils]: 83: Hoare triple {155383#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {155383#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:04,548 INFO L290 TraceCheckUtils]: 84: Hoare triple {155383#(<= ~counter~0 8)} ~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; {155383#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:04,549 INFO L290 TraceCheckUtils]: 85: Hoare triple {155383#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:04,551 INFO L290 TraceCheckUtils]: 86: Hoare triple {155396#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:04,551 INFO L290 TraceCheckUtils]: 87: Hoare triple {155396#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:04,552 INFO L290 TraceCheckUtils]: 88: Hoare triple {155396#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155406#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:04,553 INFO L290 TraceCheckUtils]: 89: Hoare triple {155406#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {155406#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:04,553 INFO L290 TraceCheckUtils]: 90: Hoare triple {155406#(<= ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155406#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:04,553 INFO L290 TraceCheckUtils]: 91: Hoare triple {155406#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155416#(<= |main_#t~post8| 10)} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 92: Hoare triple {155416#(<= |main_#t~post8| 10)} assume !(#t~post8 < 20);havoc #t~post8; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 93: Hoare triple {155128#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 94: Hoare triple {155128#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 95: Hoare triple {155128#false} assume !(#t~post7 < 20);havoc #t~post7; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 96: Hoare triple {155128#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; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 97: Hoare triple {155128#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 98: Hoare triple {155128#false} assume !(#t~post6 < 20);havoc #t~post6; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L272 TraceCheckUtils]: 99: Hoare triple {155128#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)); {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 100: Hoare triple {155128#false} ~cond := #in~cond; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 101: Hoare triple {155128#false} assume 0 == ~cond; {155128#false} is VALID [2022-04-28 05:58:04,554 INFO L290 TraceCheckUtils]: 102: Hoare triple {155128#false} assume !false; {155128#false} is VALID [2022-04-28 05:58:04,555 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 116 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:58:04,555 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 102: Hoare triple {155128#false} assume !false; {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 101: Hoare triple {155128#false} assume 0 == ~cond; {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 100: Hoare triple {155128#false} ~cond := #in~cond; {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L272 TraceCheckUtils]: 99: Hoare triple {155128#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)); {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 98: Hoare triple {155128#false} assume !(#t~post6 < 20);havoc #t~post6; {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 97: Hoare triple {155128#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 96: Hoare triple {155128#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; {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 95: Hoare triple {155128#false} assume !(#t~post7 < 20);havoc #t~post7; {155128#false} is VALID [2022-04-28 05:58:05,061 INFO L290 TraceCheckUtils]: 94: Hoare triple {155128#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155128#false} is VALID [2022-04-28 05:58:05,062 INFO L290 TraceCheckUtils]: 93: Hoare triple {155128#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155128#false} is VALID [2022-04-28 05:58:05,062 INFO L290 TraceCheckUtils]: 92: Hoare triple {155480#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {155128#false} is VALID [2022-04-28 05:58:05,062 INFO L290 TraceCheckUtils]: 91: Hoare triple {155484#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155480#(< |main_#t~post8| 20)} is VALID [2022-04-28 05:58:05,062 INFO L290 TraceCheckUtils]: 90: Hoare triple {155484#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155484#(< ~counter~0 20)} is VALID [2022-04-28 05:58:05,063 INFO L290 TraceCheckUtils]: 89: Hoare triple {155484#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {155484#(< ~counter~0 20)} is VALID [2022-04-28 05:58:05,065 INFO L290 TraceCheckUtils]: 88: Hoare triple {155494#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155484#(< ~counter~0 20)} is VALID [2022-04-28 05:58:05,065 INFO L290 TraceCheckUtils]: 87: Hoare triple {155494#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155494#(< ~counter~0 19)} is VALID [2022-04-28 05:58:05,065 INFO L290 TraceCheckUtils]: 86: Hoare triple {155494#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {155494#(< ~counter~0 19)} is VALID [2022-04-28 05:58:05,066 INFO L290 TraceCheckUtils]: 85: Hoare triple {155504#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155494#(< ~counter~0 19)} is VALID [2022-04-28 05:58:05,067 INFO L290 TraceCheckUtils]: 84: Hoare triple {155504#(< ~counter~0 18)} ~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; {155504#(< ~counter~0 18)} is VALID [2022-04-28 05:58:05,067 INFO L290 TraceCheckUtils]: 83: Hoare triple {155504#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {155504#(< ~counter~0 18)} is VALID [2022-04-28 05:58:05,067 INFO L290 TraceCheckUtils]: 82: Hoare triple {155504#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {155504#(< ~counter~0 18)} is VALID [2022-04-28 05:58:05,068 INFO L290 TraceCheckUtils]: 81: Hoare triple {155517#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155504#(< ~counter~0 18)} is VALID [2022-04-28 05:58:05,068 INFO L290 TraceCheckUtils]: 80: Hoare triple {155517#(< ~counter~0 17)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,069 INFO L290 TraceCheckUtils]: 79: Hoare triple {155517#(< ~counter~0 17)} assume !(~c~0 >= 2 * ~v~0); {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,069 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #104#return; {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,069 INFO L290 TraceCheckUtils]: 77: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,069 INFO L290 TraceCheckUtils]: 76: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,069 INFO L290 TraceCheckUtils]: 75: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,069 INFO L272 TraceCheckUtils]: 74: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,070 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #102#return; {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,070 INFO L290 TraceCheckUtils]: 72: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,070 INFO L290 TraceCheckUtils]: 71: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,070 INFO L290 TraceCheckUtils]: 70: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,070 INFO L272 TraceCheckUtils]: 69: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,070 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #100#return; {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,071 INFO L290 TraceCheckUtils]: 67: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,071 INFO L290 TraceCheckUtils]: 66: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,071 INFO L290 TraceCheckUtils]: 65: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,071 INFO L272 TraceCheckUtils]: 64: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,071 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #98#return; {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,071 INFO L290 TraceCheckUtils]: 62: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,071 INFO L290 TraceCheckUtils]: 61: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,071 INFO L290 TraceCheckUtils]: 60: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,072 INFO L272 TraceCheckUtils]: 59: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,072 INFO L290 TraceCheckUtils]: 58: Hoare triple {155517#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,073 INFO L290 TraceCheckUtils]: 57: Hoare triple {155590#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155517#(< ~counter~0 17)} is VALID [2022-04-28 05:58:05,073 INFO L290 TraceCheckUtils]: 56: Hoare triple {155590#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155590#(< ~counter~0 16)} is VALID [2022-04-28 05:58:05,073 INFO L290 TraceCheckUtils]: 55: Hoare triple {155590#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {155590#(< ~counter~0 16)} is VALID [2022-04-28 05:58:05,074 INFO L290 TraceCheckUtils]: 54: Hoare triple {155600#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155590#(< ~counter~0 16)} is VALID [2022-04-28 05:58:05,074 INFO L290 TraceCheckUtils]: 53: Hoare triple {155600#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155600#(< ~counter~0 15)} is VALID [2022-04-28 05:58:05,075 INFO L290 TraceCheckUtils]: 52: Hoare triple {155600#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {155600#(< ~counter~0 15)} is VALID [2022-04-28 05:58:05,076 INFO L290 TraceCheckUtils]: 51: Hoare triple {155610#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155600#(< ~counter~0 15)} is VALID [2022-04-28 05:58:05,076 INFO L290 TraceCheckUtils]: 50: Hoare triple {155610#(< ~counter~0 14)} ~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; {155610#(< ~counter~0 14)} is VALID [2022-04-28 05:58:05,076 INFO L290 TraceCheckUtils]: 49: Hoare triple {155610#(< ~counter~0 14)} assume !(~c~0 >= ~b~0); {155610#(< ~counter~0 14)} is VALID [2022-04-28 05:58:05,076 INFO L290 TraceCheckUtils]: 48: Hoare triple {155610#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {155610#(< ~counter~0 14)} is VALID [2022-04-28 05:58:05,077 INFO L290 TraceCheckUtils]: 47: Hoare triple {155623#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155610#(< ~counter~0 14)} is VALID [2022-04-28 05:58:05,077 INFO L290 TraceCheckUtils]: 46: Hoare triple {155623#(< ~counter~0 13)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,078 INFO L290 TraceCheckUtils]: 45: Hoare triple {155623#(< ~counter~0 13)} assume !(~c~0 >= 2 * ~v~0); {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,078 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #104#return; {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,078 INFO L290 TraceCheckUtils]: 43: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,078 INFO L290 TraceCheckUtils]: 42: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,078 INFO L290 TraceCheckUtils]: 41: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,078 INFO L272 TraceCheckUtils]: 40: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,079 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #102#return; {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,079 INFO L290 TraceCheckUtils]: 38: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,079 INFO L290 TraceCheckUtils]: 37: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,079 INFO L290 TraceCheckUtils]: 36: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,079 INFO L272 TraceCheckUtils]: 35: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,080 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #100#return; {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,080 INFO L290 TraceCheckUtils]: 33: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,080 INFO L290 TraceCheckUtils]: 32: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,080 INFO L290 TraceCheckUtils]: 31: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,080 INFO L272 TraceCheckUtils]: 30: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,080 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #98#return; {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,080 INFO L290 TraceCheckUtils]: 28: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,081 INFO L290 TraceCheckUtils]: 27: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,081 INFO L290 TraceCheckUtils]: 26: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,081 INFO L272 TraceCheckUtils]: 25: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,081 INFO L290 TraceCheckUtils]: 24: Hoare triple {155623#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,082 INFO L290 TraceCheckUtils]: 23: Hoare triple {155696#(< ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155623#(< ~counter~0 13)} is VALID [2022-04-28 05:58:05,082 INFO L290 TraceCheckUtils]: 22: Hoare triple {155696#(< ~counter~0 12)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155696#(< ~counter~0 12)} is VALID [2022-04-28 05:58:05,082 INFO L290 TraceCheckUtils]: 21: Hoare triple {155696#(< ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {155696#(< ~counter~0 12)} is VALID [2022-04-28 05:58:05,083 INFO L290 TraceCheckUtils]: 20: Hoare triple {155406#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155696#(< ~counter~0 12)} is VALID [2022-04-28 05:58:05,083 INFO L290 TraceCheckUtils]: 19: Hoare triple {155406#(<= ~counter~0 10)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155406#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:05,084 INFO L290 TraceCheckUtils]: 18: Hoare triple {155406#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {155406#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:05,085 INFO L290 TraceCheckUtils]: 17: Hoare triple {155396#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155406#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:05,085 INFO L290 TraceCheckUtils]: 16: Hoare triple {155396#(<= ~counter~0 9)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,085 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155127#true} {155396#(<= ~counter~0 9)} #96#return; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,085 INFO L290 TraceCheckUtils]: 14: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,085 INFO L290 TraceCheckUtils]: 13: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,085 INFO L290 TraceCheckUtils]: 12: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,086 INFO L272 TraceCheckUtils]: 11: Hoare triple {155396#(<= ~counter~0 9)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,086 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155127#true} {155396#(<= ~counter~0 9)} #94#return; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,086 INFO L290 TraceCheckUtils]: 9: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-28 05:58:05,086 INFO L290 TraceCheckUtils]: 8: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-28 05:58:05,086 INFO L290 TraceCheckUtils]: 7: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-28 05:58:05,086 INFO L272 TraceCheckUtils]: 6: Hoare triple {155396#(<= ~counter~0 9)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155127#true} is VALID [2022-04-28 05:58:05,086 INFO L290 TraceCheckUtils]: 5: Hoare triple {155396#(<= ~counter~0 9)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,087 INFO L272 TraceCheckUtils]: 4: Hoare triple {155396#(<= ~counter~0 9)} call #t~ret9 := main(); {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,087 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155396#(<= ~counter~0 9)} {155127#true} #108#return; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,087 INFO L290 TraceCheckUtils]: 2: Hoare triple {155396#(<= ~counter~0 9)} assume true; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {155127#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {155396#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:05,088 INFO L272 TraceCheckUtils]: 0: Hoare triple {155127#true} call ULTIMATE.init(); {155127#true} is VALID [2022-04-28 05:58:05,088 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 52 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:58:05,088 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:05,088 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [161256201] [2022-04-28 05:58:05,088 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:05,088 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [693610373] [2022-04-28 05:58:05,088 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [693610373] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:05,088 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:05,089 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-28 05:58:05,089 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:05,089 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2137290289] [2022-04-28 05:58:05,089 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2137290289] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:05,089 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:05,089 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:58:05,089 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [336056282] [2022-04-28 05:58:05,089 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:05,089 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 05:58:05,089 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:05,090 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:05,163 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:05,163 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:58:05,163 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:05,164 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:58:05,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:58:05,164 INFO L87 Difference]: Start difference. First operand 1765 states and 2340 transitions. Second operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:11,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:11,109 INFO L93 Difference]: Finished difference Result 2634 states and 3640 transitions. [2022-04-28 05:58:11,109 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 05:58:11,109 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 05:58:11,110 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:11,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:11,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 05:58:11,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:11,113 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 05:58:11,113 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 285 transitions. [2022-04-28 05:58:11,421 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 285 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:11,575 INFO L225 Difference]: With dead ends: 2634 [2022-04-28 05:58:11,575 INFO L226 Difference]: Without dead ends: 1870 [2022-04-28 05:58:11,577 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 182 SyntacticMatches, 1 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=404, Invalid=588, Unknown=0, NotChecked=0, Total=992 [2022-04-28 05:58:11,577 INFO L413 NwaCegarLoop]: 76 mSDtfsCounter, 232 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 156 mSolverCounterSat, 132 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 232 SdHoareTripleChecker+Valid, 332 SdHoareTripleChecker+Invalid, 288 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 132 IncrementalHoareTripleChecker+Valid, 156 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:11,577 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [232 Valid, 332 Invalid, 288 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [132 Valid, 156 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:58:11,578 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1870 states. [2022-04-28 05:58:16,200 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1870 to 1825. [2022-04-28 05:58:16,200 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:16,202 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:16,203 INFO L74 IsIncluded]: Start isIncluded. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:16,204 INFO L87 Difference]: Start difference. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:16,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:16,295 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 05:58:16,295 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 05:58:16,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:16,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:16,299 INFO L74 IsIncluded]: Start isIncluded. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 05:58:16,300 INFO L87 Difference]: Start difference. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 05:58:16,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:16,391 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 05:58:16,391 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 05:58:16,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:16,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:16,393 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:16,393 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:16,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:16,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1825 states to 1825 states and 2413 transitions. [2022-04-28 05:58:16,536 INFO L78 Accepts]: Start accepts. Automaton has 1825 states and 2413 transitions. Word has length 103 [2022-04-28 05:58:16,536 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:16,536 INFO L495 AbstractCegarLoop]: Abstraction has 1825 states and 2413 transitions. [2022-04-28 05:58:16,536 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:16,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1825 states and 2413 transitions. [2022-04-28 05:58:22,953 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2413 edges. 2413 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:22,954 INFO L276 IsEmpty]: Start isEmpty. Operand 1825 states and 2413 transitions. [2022-04-28 05:58:22,954 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 05:58:22,955 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:22,955 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 5, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:22,971 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:23,155 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-28 05:58:23,155 INFO L420 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:23,156 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:23,156 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 7 times [2022-04-28 05:58:23,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:23,156 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1310948912] [2022-04-28 05:58:23,156 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:23,156 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 8 times [2022-04-28 05:58:23,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:23,156 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [33225062] [2022-04-28 05:58:23,156 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:23,156 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:23,167 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:23,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1482416686] [2022-04-28 05:58:23,167 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:23,167 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:23,167 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:23,168 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:23,169 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-28 05:58:23,229 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:23,229 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:23,230 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 05:58:23,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:23,251 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:23,721 INFO L272 TraceCheckUtils]: 0: Hoare triple {168442#true} call ULTIMATE.init(); {168442#true} is VALID [2022-04-28 05:58:23,722 INFO L290 TraceCheckUtils]: 1: Hoare triple {168442#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {168450#(<= ~counter~0 0)} assume true; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,722 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168450#(<= ~counter~0 0)} {168442#true} #108#return; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,723 INFO L272 TraceCheckUtils]: 4: Hoare triple {168450#(<= ~counter~0 0)} call #t~ret9 := main(); {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,723 INFO L290 TraceCheckUtils]: 5: Hoare triple {168450#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,723 INFO L272 TraceCheckUtils]: 6: Hoare triple {168450#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,723 INFO L290 TraceCheckUtils]: 7: Hoare triple {168450#(<= ~counter~0 0)} ~cond := #in~cond; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,724 INFO L290 TraceCheckUtils]: 8: Hoare triple {168450#(<= ~counter~0 0)} assume !(0 == ~cond); {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,724 INFO L290 TraceCheckUtils]: 9: Hoare triple {168450#(<= ~counter~0 0)} assume true; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,724 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168450#(<= ~counter~0 0)} {168450#(<= ~counter~0 0)} #94#return; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,725 INFO L272 TraceCheckUtils]: 11: Hoare triple {168450#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,725 INFO L290 TraceCheckUtils]: 12: Hoare triple {168450#(<= ~counter~0 0)} ~cond := #in~cond; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,725 INFO L290 TraceCheckUtils]: 13: Hoare triple {168450#(<= ~counter~0 0)} assume !(0 == ~cond); {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,726 INFO L290 TraceCheckUtils]: 14: Hoare triple {168450#(<= ~counter~0 0)} assume true; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,726 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168450#(<= ~counter~0 0)} {168450#(<= ~counter~0 0)} #96#return; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,726 INFO L290 TraceCheckUtils]: 16: Hoare triple {168450#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {168450#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:23,728 INFO L290 TraceCheckUtils]: 17: Hoare triple {168450#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168499#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:23,729 INFO L290 TraceCheckUtils]: 18: Hoare triple {168499#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {168499#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:23,729 INFO L290 TraceCheckUtils]: 19: Hoare triple {168499#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168499#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:23,730 INFO L290 TraceCheckUtils]: 20: Hoare triple {168499#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168509#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:23,730 INFO L290 TraceCheckUtils]: 21: Hoare triple {168509#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {168509#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:23,730 INFO L290 TraceCheckUtils]: 22: Hoare triple {168509#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {168509#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:23,731 INFO L290 TraceCheckUtils]: 23: Hoare triple {168509#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168509#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:23,732 INFO L290 TraceCheckUtils]: 24: Hoare triple {168509#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168522#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:23,732 INFO L290 TraceCheckUtils]: 25: Hoare triple {168522#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {168522#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:23,732 INFO L290 TraceCheckUtils]: 26: Hoare triple {168522#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168522#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:23,733 INFO L290 TraceCheckUtils]: 27: Hoare triple {168522#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168532#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:23,733 INFO L290 TraceCheckUtils]: 28: Hoare triple {168532#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {168532#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:23,734 INFO L290 TraceCheckUtils]: 29: Hoare triple {168532#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168532#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:23,735 INFO L290 TraceCheckUtils]: 30: Hoare triple {168532#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,735 INFO L290 TraceCheckUtils]: 31: Hoare triple {168542#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,735 INFO L272 TraceCheckUtils]: 32: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,736 INFO L290 TraceCheckUtils]: 33: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,736 INFO L290 TraceCheckUtils]: 34: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,736 INFO L290 TraceCheckUtils]: 35: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,737 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #98#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,737 INFO L272 TraceCheckUtils]: 37: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,737 INFO L290 TraceCheckUtils]: 38: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,738 INFO L290 TraceCheckUtils]: 39: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,738 INFO L290 TraceCheckUtils]: 40: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,738 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #100#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,739 INFO L272 TraceCheckUtils]: 42: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,739 INFO L290 TraceCheckUtils]: 43: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,739 INFO L290 TraceCheckUtils]: 44: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,740 INFO L290 TraceCheckUtils]: 45: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,740 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #102#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,741 INFO L272 TraceCheckUtils]: 47: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,741 INFO L290 TraceCheckUtils]: 48: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,741 INFO L290 TraceCheckUtils]: 49: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,741 INFO L290 TraceCheckUtils]: 50: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,742 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #104#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,742 INFO L290 TraceCheckUtils]: 52: Hoare triple {168542#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,742 INFO L290 TraceCheckUtils]: 53: Hoare triple {168542#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168542#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:23,744 INFO L290 TraceCheckUtils]: 54: Hoare triple {168542#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168615#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:23,744 INFO L290 TraceCheckUtils]: 55: Hoare triple {168615#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {168615#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:23,744 INFO L290 TraceCheckUtils]: 56: Hoare triple {168615#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {168615#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:23,745 INFO L290 TraceCheckUtils]: 57: Hoare triple {168615#(<= ~counter~0 6)} ~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; {168615#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:23,746 INFO L290 TraceCheckUtils]: 58: Hoare triple {168615#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168628#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:23,746 INFO L290 TraceCheckUtils]: 59: Hoare triple {168628#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {168628#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:23,746 INFO L290 TraceCheckUtils]: 60: Hoare triple {168628#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168628#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:23,747 INFO L290 TraceCheckUtils]: 61: Hoare triple {168628#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:23,747 INFO L290 TraceCheckUtils]: 62: Hoare triple {168638#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:23,748 INFO L290 TraceCheckUtils]: 63: Hoare triple {168638#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:23,749 INFO L290 TraceCheckUtils]: 64: Hoare triple {168638#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,749 INFO L290 TraceCheckUtils]: 65: Hoare triple {168648#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,749 INFO L272 TraceCheckUtils]: 66: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,750 INFO L290 TraceCheckUtils]: 67: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,750 INFO L290 TraceCheckUtils]: 68: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,750 INFO L290 TraceCheckUtils]: 69: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,751 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #98#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,751 INFO L272 TraceCheckUtils]: 71: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,751 INFO L290 TraceCheckUtils]: 72: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,752 INFO L290 TraceCheckUtils]: 73: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,752 INFO L290 TraceCheckUtils]: 74: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,752 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #100#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,753 INFO L272 TraceCheckUtils]: 76: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,753 INFO L290 TraceCheckUtils]: 77: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,753 INFO L290 TraceCheckUtils]: 78: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,754 INFO L290 TraceCheckUtils]: 79: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,754 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #102#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,754 INFO L272 TraceCheckUtils]: 81: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,755 INFO L290 TraceCheckUtils]: 82: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,755 INFO L290 TraceCheckUtils]: 83: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,755 INFO L290 TraceCheckUtils]: 84: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,756 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #104#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,756 INFO L290 TraceCheckUtils]: 86: Hoare triple {168648#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,756 INFO L290 TraceCheckUtils]: 87: Hoare triple {168648#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:23,757 INFO L290 TraceCheckUtils]: 88: Hoare triple {168648#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:23,758 INFO L290 TraceCheckUtils]: 89: Hoare triple {168721#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:23,758 INFO L290 TraceCheckUtils]: 90: Hoare triple {168721#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:23,758 INFO L290 TraceCheckUtils]: 91: Hoare triple {168721#(<= ~counter~0 10)} ~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; {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:23,759 INFO L290 TraceCheckUtils]: 92: Hoare triple {168721#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:23,759 INFO L290 TraceCheckUtils]: 93: Hoare triple {168734#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:23,760 INFO L290 TraceCheckUtils]: 94: Hoare triple {168734#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168734#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:23,760 INFO L290 TraceCheckUtils]: 95: Hoare triple {168734#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168744#(<= |main_#t~post7| 11)} is VALID [2022-04-28 05:58:23,760 INFO L290 TraceCheckUtils]: 96: Hoare triple {168744#(<= |main_#t~post7| 11)} assume !(#t~post7 < 20);havoc #t~post7; {168443#false} is VALID [2022-04-28 05:58:23,760 INFO L290 TraceCheckUtils]: 97: Hoare triple {168443#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; {168443#false} is VALID [2022-04-28 05:58:23,760 INFO L290 TraceCheckUtils]: 98: Hoare triple {168443#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168443#false} is VALID [2022-04-28 05:58:23,760 INFO L290 TraceCheckUtils]: 99: Hoare triple {168443#false} assume !(#t~post6 < 20);havoc #t~post6; {168443#false} is VALID [2022-04-28 05:58:23,761 INFO L272 TraceCheckUtils]: 100: Hoare triple {168443#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)); {168443#false} is VALID [2022-04-28 05:58:23,761 INFO L290 TraceCheckUtils]: 101: Hoare triple {168443#false} ~cond := #in~cond; {168443#false} is VALID [2022-04-28 05:58:23,761 INFO L290 TraceCheckUtils]: 102: Hoare triple {168443#false} assume 0 == ~cond; {168443#false} is VALID [2022-04-28 05:58:23,761 INFO L290 TraceCheckUtils]: 103: Hoare triple {168443#false} assume !false; {168443#false} is VALID [2022-04-28 05:58:23,777 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 133 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:58:23,777 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:24,303 INFO L290 TraceCheckUtils]: 103: Hoare triple {168443#false} assume !false; {168443#false} is VALID [2022-04-28 05:58:24,303 INFO L290 TraceCheckUtils]: 102: Hoare triple {168443#false} assume 0 == ~cond; {168443#false} is VALID [2022-04-28 05:58:24,303 INFO L290 TraceCheckUtils]: 101: Hoare triple {168443#false} ~cond := #in~cond; {168443#false} is VALID [2022-04-28 05:58:24,303 INFO L272 TraceCheckUtils]: 100: Hoare triple {168443#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)); {168443#false} is VALID [2022-04-28 05:58:24,303 INFO L290 TraceCheckUtils]: 99: Hoare triple {168443#false} assume !(#t~post6 < 20);havoc #t~post6; {168443#false} is VALID [2022-04-28 05:58:24,303 INFO L290 TraceCheckUtils]: 98: Hoare triple {168443#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168443#false} is VALID [2022-04-28 05:58:24,303 INFO L290 TraceCheckUtils]: 97: Hoare triple {168443#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; {168443#false} is VALID [2022-04-28 05:58:24,303 INFO L290 TraceCheckUtils]: 96: Hoare triple {168790#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {168443#false} is VALID [2022-04-28 05:58:24,304 INFO L290 TraceCheckUtils]: 95: Hoare triple {168794#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168790#(< |main_#t~post7| 20)} is VALID [2022-04-28 05:58:24,304 INFO L290 TraceCheckUtils]: 94: Hoare triple {168794#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168794#(< ~counter~0 20)} is VALID [2022-04-28 05:58:24,305 INFO L290 TraceCheckUtils]: 93: Hoare triple {168794#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {168794#(< ~counter~0 20)} is VALID [2022-04-28 05:58:24,307 INFO L290 TraceCheckUtils]: 92: Hoare triple {168804#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168794#(< ~counter~0 20)} is VALID [2022-04-28 05:58:24,308 INFO L290 TraceCheckUtils]: 91: Hoare triple {168804#(< ~counter~0 19)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168804#(< ~counter~0 19)} is VALID [2022-04-28 05:58:24,308 INFO L290 TraceCheckUtils]: 90: Hoare triple {168804#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {168804#(< ~counter~0 19)} is VALID [2022-04-28 05:58:24,309 INFO L290 TraceCheckUtils]: 89: Hoare triple {168804#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {168804#(< ~counter~0 19)} is VALID [2022-04-28 05:58:24,310 INFO L290 TraceCheckUtils]: 88: Hoare triple {168817#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168804#(< ~counter~0 19)} is VALID [2022-04-28 05:58:24,311 INFO L290 TraceCheckUtils]: 87: Hoare triple {168817#(< ~counter~0 18)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,311 INFO L290 TraceCheckUtils]: 86: Hoare triple {168817#(< ~counter~0 18)} assume !(~c~0 >= 2 * ~v~0); {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,312 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #104#return; {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,312 INFO L290 TraceCheckUtils]: 84: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,312 INFO L290 TraceCheckUtils]: 83: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,312 INFO L290 TraceCheckUtils]: 82: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,312 INFO L272 TraceCheckUtils]: 81: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,313 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #102#return; {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,313 INFO L290 TraceCheckUtils]: 79: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,313 INFO L290 TraceCheckUtils]: 78: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,313 INFO L290 TraceCheckUtils]: 77: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,313 INFO L272 TraceCheckUtils]: 76: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,314 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #100#return; {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,314 INFO L290 TraceCheckUtils]: 74: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,314 INFO L290 TraceCheckUtils]: 73: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,314 INFO L290 TraceCheckUtils]: 72: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,314 INFO L272 TraceCheckUtils]: 71: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,315 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #98#return; {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,315 INFO L290 TraceCheckUtils]: 69: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,315 INFO L290 TraceCheckUtils]: 68: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,315 INFO L290 TraceCheckUtils]: 67: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,315 INFO L272 TraceCheckUtils]: 66: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,315 INFO L290 TraceCheckUtils]: 65: Hoare triple {168817#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,317 INFO L290 TraceCheckUtils]: 64: Hoare triple {168890#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168817#(< ~counter~0 18)} is VALID [2022-04-28 05:58:24,318 INFO L290 TraceCheckUtils]: 63: Hoare triple {168890#(< ~counter~0 17)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168890#(< ~counter~0 17)} is VALID [2022-04-28 05:58:24,318 INFO L290 TraceCheckUtils]: 62: Hoare triple {168890#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {168890#(< ~counter~0 17)} is VALID [2022-04-28 05:58:24,319 INFO L290 TraceCheckUtils]: 61: Hoare triple {168900#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168890#(< ~counter~0 17)} is VALID [2022-04-28 05:58:24,319 INFO L290 TraceCheckUtils]: 60: Hoare triple {168900#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168900#(< ~counter~0 16)} is VALID [2022-04-28 05:58:24,319 INFO L290 TraceCheckUtils]: 59: Hoare triple {168900#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {168900#(< ~counter~0 16)} is VALID [2022-04-28 05:58:24,320 INFO L290 TraceCheckUtils]: 58: Hoare triple {168910#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168900#(< ~counter~0 16)} is VALID [2022-04-28 05:58:24,321 INFO L290 TraceCheckUtils]: 57: Hoare triple {168910#(< ~counter~0 15)} ~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; {168910#(< ~counter~0 15)} is VALID [2022-04-28 05:58:24,321 INFO L290 TraceCheckUtils]: 56: Hoare triple {168910#(< ~counter~0 15)} assume !(~c~0 >= ~b~0); {168910#(< ~counter~0 15)} is VALID [2022-04-28 05:58:24,321 INFO L290 TraceCheckUtils]: 55: Hoare triple {168910#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {168910#(< ~counter~0 15)} is VALID [2022-04-28 05:58:24,322 INFO L290 TraceCheckUtils]: 54: Hoare triple {168923#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168910#(< ~counter~0 15)} is VALID [2022-04-28 05:58:24,322 INFO L290 TraceCheckUtils]: 53: Hoare triple {168923#(< ~counter~0 14)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,323 INFO L290 TraceCheckUtils]: 52: Hoare triple {168923#(< ~counter~0 14)} assume !(~c~0 >= 2 * ~v~0); {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,323 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #104#return; {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,323 INFO L290 TraceCheckUtils]: 50: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,323 INFO L290 TraceCheckUtils]: 49: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,323 INFO L290 TraceCheckUtils]: 48: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,324 INFO L272 TraceCheckUtils]: 47: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,324 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #102#return; {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,324 INFO L290 TraceCheckUtils]: 45: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,324 INFO L290 TraceCheckUtils]: 44: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,324 INFO L290 TraceCheckUtils]: 43: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,324 INFO L272 TraceCheckUtils]: 42: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,325 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #100#return; {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,325 INFO L290 TraceCheckUtils]: 40: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,325 INFO L290 TraceCheckUtils]: 39: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,325 INFO L290 TraceCheckUtils]: 38: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,325 INFO L272 TraceCheckUtils]: 37: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,326 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #98#return; {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,326 INFO L290 TraceCheckUtils]: 35: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,326 INFO L290 TraceCheckUtils]: 34: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,326 INFO L290 TraceCheckUtils]: 33: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,326 INFO L272 TraceCheckUtils]: 32: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,326 INFO L290 TraceCheckUtils]: 31: Hoare triple {168923#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,327 INFO L290 TraceCheckUtils]: 30: Hoare triple {168996#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168923#(< ~counter~0 14)} is VALID [2022-04-28 05:58:24,328 INFO L290 TraceCheckUtils]: 29: Hoare triple {168996#(< ~counter~0 13)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168996#(< ~counter~0 13)} is VALID [2022-04-28 05:58:24,328 INFO L290 TraceCheckUtils]: 28: Hoare triple {168996#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {168996#(< ~counter~0 13)} is VALID [2022-04-28 05:58:24,329 INFO L290 TraceCheckUtils]: 27: Hoare triple {168734#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168996#(< ~counter~0 13)} is VALID [2022-04-28 05:58:24,329 INFO L290 TraceCheckUtils]: 26: Hoare triple {168734#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168734#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:24,330 INFO L290 TraceCheckUtils]: 25: Hoare triple {168734#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:24,331 INFO L290 TraceCheckUtils]: 24: Hoare triple {168721#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:24,331 INFO L290 TraceCheckUtils]: 23: Hoare triple {168721#(<= ~counter~0 10)} ~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; {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:24,331 INFO L290 TraceCheckUtils]: 22: Hoare triple {168721#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:24,331 INFO L290 TraceCheckUtils]: 21: Hoare triple {168721#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:24,332 INFO L290 TraceCheckUtils]: 20: Hoare triple {168648#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:24,333 INFO L290 TraceCheckUtils]: 19: Hoare triple {168648#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:24,333 INFO L290 TraceCheckUtils]: 18: Hoare triple {168648#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:24,334 INFO L290 TraceCheckUtils]: 17: Hoare triple {168638#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168648#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:24,334 INFO L290 TraceCheckUtils]: 16: Hoare triple {168638#(<= ~counter~0 8)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,335 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168442#true} {168638#(<= ~counter~0 8)} #96#return; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,335 INFO L290 TraceCheckUtils]: 14: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,335 INFO L290 TraceCheckUtils]: 13: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,335 INFO L290 TraceCheckUtils]: 12: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,335 INFO L272 TraceCheckUtils]: 11: Hoare triple {168638#(<= ~counter~0 8)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,335 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168442#true} {168638#(<= ~counter~0 8)} #94#return; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,335 INFO L290 TraceCheckUtils]: 9: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-28 05:58:24,335 INFO L290 TraceCheckUtils]: 8: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-28 05:58:24,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-28 05:58:24,336 INFO L272 TraceCheckUtils]: 6: Hoare triple {168638#(<= ~counter~0 8)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168442#true} is VALID [2022-04-28 05:58:24,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {168638#(<= ~counter~0 8)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,336 INFO L272 TraceCheckUtils]: 4: Hoare triple {168638#(<= ~counter~0 8)} call #t~ret9 := main(); {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,336 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168638#(<= ~counter~0 8)} {168442#true} #108#return; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {168638#(<= ~counter~0 8)} assume true; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {168442#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {168638#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:24,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {168442#true} call ULTIMATE.init(); {168442#true} is VALID [2022-04-28 05:58:24,338 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 69 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:58:24,338 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:24,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [33225062] [2022-04-28 05:58:24,338 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:24,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1482416686] [2022-04-28 05:58:24,338 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1482416686] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:24,338 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:24,338 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 24 [2022-04-28 05:58:24,338 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:24,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1310948912] [2022-04-28 05:58:24,338 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1310948912] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:24,338 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:24,338 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:58:24,339 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [217538269] [2022-04-28 05:58:24,339 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:24,339 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 05:58:24,339 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:24,339 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:24,420 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:24,421 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:58:24,421 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:24,421 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:58:24,421 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:58:24,421 INFO L87 Difference]: Start difference. First operand 1825 states and 2413 transitions. Second operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:31,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:31,692 INFO L93 Difference]: Finished difference Result 2758 states and 3762 transitions. [2022-04-28 05:58:31,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 05:58:31,692 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 05:58:31,693 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:31,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:31,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 05:58:31,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:31,697 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 05:58:31,697 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 314 transitions. [2022-04-28 05:58:32,021 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 314 edges. 314 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:32,230 INFO L225 Difference]: With dead ends: 2758 [2022-04-28 05:58:32,230 INFO L226 Difference]: Without dead ends: 2189 [2022-04-28 05:58:32,231 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 184 SyntacticMatches, 1 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 79 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=426, Invalid=630, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 05:58:32,231 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 308 mSDsluCounter, 272 mSDsCounter, 0 mSdLazyCounter, 206 mSolverCounterSat, 192 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 308 SdHoareTripleChecker+Valid, 349 SdHoareTripleChecker+Invalid, 398 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 192 IncrementalHoareTripleChecker+Valid, 206 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:32,232 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [308 Valid, 349 Invalid, 398 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [192 Valid, 206 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 05:58:32,232 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2189 states. [2022-04-28 05:58:37,565 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2189 to 2064. [2022-04-28 05:58:37,566 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:37,568 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:37,569 INFO L74 IsIncluded]: Start isIncluded. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:37,570 INFO L87 Difference]: Start difference. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:37,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:37,691 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 05:58:37,691 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 05:58:37,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:37,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:37,695 INFO L74 IsIncluded]: Start isIncluded. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 05:58:37,696 INFO L87 Difference]: Start difference. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 05:58:37,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:37,817 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 05:58:37,817 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 05:58:37,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:37,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:37,820 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:37,820 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:37,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:38,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2064 states to 2064 states and 2722 transitions. [2022-04-28 05:58:38,001 INFO L78 Accepts]: Start accepts. Automaton has 2064 states and 2722 transitions. Word has length 104 [2022-04-28 05:58:38,001 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:38,002 INFO L495 AbstractCegarLoop]: Abstraction has 2064 states and 2722 transitions. [2022-04-28 05:58:38,002 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:38,002 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2064 states and 2722 transitions. [2022-04-28 05:58:45,289 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2722 edges. 2722 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:45,289 INFO L276 IsEmpty]: Start isEmpty. Operand 2064 states and 2722 transitions. [2022-04-28 05:58:45,290 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 05:58:45,290 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:45,290 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:45,306 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:45,503 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-28 05:58:45,503 INFO L420 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:45,503 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:45,504 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 7 times [2022-04-28 05:58:45,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:45,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [577068445] [2022-04-28 05:58:45,504 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:45,504 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 8 times [2022-04-28 05:58:45,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:45,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [257231206] [2022-04-28 05:58:45,504 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:45,504 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:45,513 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:45,513 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2013439175] [2022-04-28 05:58:45,513 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:45,513 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:45,514 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:45,514 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:45,515 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-28 05:58:45,565 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:45,566 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:45,567 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-28 05:58:45,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:45,584 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:46,899 INFO L272 TraceCheckUtils]: 0: Hoare triple {183129#true} call ULTIMATE.init(); {183129#true} is VALID [2022-04-28 05:58:46,899 INFO L290 TraceCheckUtils]: 1: Hoare triple {183129#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 2: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183129#true} {183129#true} #108#return; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L272 TraceCheckUtils]: 4: Hoare triple {183129#true} call #t~ret9 := main(); {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 5: Hoare triple {183129#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L272 TraceCheckUtils]: 6: Hoare triple {183129#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 7: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 8: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 9: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183129#true} {183129#true} #94#return; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L272 TraceCheckUtils]: 11: Hoare triple {183129#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 12: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 13: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L290 TraceCheckUtils]: 14: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,900 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183129#true} {183129#true} #96#return; {183129#true} is VALID [2022-04-28 05:58:46,901 INFO L290 TraceCheckUtils]: 16: Hoare triple {183129#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183182#(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-28 05:58:46,901 INFO L290 TraceCheckUtils]: 17: Hoare triple {183182#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183182#(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-28 05:58:46,901 INFO L290 TraceCheckUtils]: 18: Hoare triple {183182#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {183182#(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-28 05:58:46,902 INFO L290 TraceCheckUtils]: 19: Hoare triple {183182#(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; {183192#(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-28 05:58:46,902 INFO L290 TraceCheckUtils]: 20: Hoare triple {183192#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183192#(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-28 05:58:46,903 INFO L290 TraceCheckUtils]: 21: Hoare triple {183192#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {183192#(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-28 05:58:46,903 INFO L290 TraceCheckUtils]: 22: Hoare triple {183192#(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; {183202#(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-28 05:58:46,903 INFO L290 TraceCheckUtils]: 23: Hoare triple {183202#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183202#(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-28 05:58:46,904 INFO L290 TraceCheckUtils]: 24: Hoare triple {183202#(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 !!(#t~post8 < 20);havoc #t~post8; {183202#(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-28 05:58:46,904 INFO L272 TraceCheckUtils]: 25: Hoare triple {183202#(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)); {183129#true} is VALID [2022-04-28 05:58:46,904 INFO L290 TraceCheckUtils]: 26: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,904 INFO L290 TraceCheckUtils]: 27: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,904 INFO L290 TraceCheckUtils]: 28: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,905 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183129#true} {183202#(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))} #98#return; {183202#(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-28 05:58:46,905 INFO L272 TraceCheckUtils]: 30: Hoare triple {183202#(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)); {183129#true} is VALID [2022-04-28 05:58:46,905 INFO L290 TraceCheckUtils]: 31: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,905 INFO L290 TraceCheckUtils]: 32: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,905 INFO L290 TraceCheckUtils]: 33: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,906 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183129#true} {183202#(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))} #100#return; {183202#(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-28 05:58:46,906 INFO L272 TraceCheckUtils]: 35: Hoare triple {183202#(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)); {183129#true} is VALID [2022-04-28 05:58:46,906 INFO L290 TraceCheckUtils]: 36: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,906 INFO L290 TraceCheckUtils]: 37: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,906 INFO L290 TraceCheckUtils]: 38: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,907 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183129#true} {183202#(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; {183202#(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-28 05:58:46,907 INFO L272 TraceCheckUtils]: 40: Hoare triple {183202#(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)); {183129#true} is VALID [2022-04-28 05:58:46,907 INFO L290 TraceCheckUtils]: 41: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,907 INFO L290 TraceCheckUtils]: 42: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,907 INFO L290 TraceCheckUtils]: 43: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,908 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183129#true} {183202#(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; {183202#(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-28 05:58:46,908 INFO L290 TraceCheckUtils]: 45: Hoare triple {183202#(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; {183272#(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-28 05:58:46,909 INFO L290 TraceCheckUtils]: 46: Hoare triple {183272#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183272#(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-28 05:58:46,909 INFO L290 TraceCheckUtils]: 47: Hoare triple {183272#(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 !!(#t~post8 < 20);havoc #t~post8; {183272#(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-28 05:58:46,909 INFO L272 TraceCheckUtils]: 48: Hoare triple {183272#(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)); {183129#true} is VALID [2022-04-28 05:58:46,909 INFO L290 TraceCheckUtils]: 49: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,909 INFO L290 TraceCheckUtils]: 50: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,909 INFO L290 TraceCheckUtils]: 51: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,910 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183129#true} {183272#(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))} #98#return; {183272#(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-28 05:58:46,910 INFO L272 TraceCheckUtils]: 53: Hoare triple {183272#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,910 INFO L290 TraceCheckUtils]: 55: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,910 INFO L290 TraceCheckUtils]: 56: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,911 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183129#true} {183272#(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))} #100#return; {183272#(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-28 05:58:46,911 INFO L272 TraceCheckUtils]: 58: Hoare triple {183272#(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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,911 INFO L290 TraceCheckUtils]: 59: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,911 INFO L290 TraceCheckUtils]: 60: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,911 INFO L290 TraceCheckUtils]: 61: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,912 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183129#true} {183272#(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; {183272#(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-28 05:58:46,912 INFO L272 TraceCheckUtils]: 63: Hoare triple {183272#(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 ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,912 INFO L290 TraceCheckUtils]: 64: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,912 INFO L290 TraceCheckUtils]: 65: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,912 INFO L290 TraceCheckUtils]: 66: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,913 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183129#true} {183272#(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))} #104#return; {183272#(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-28 05:58:46,913 INFO L290 TraceCheckUtils]: 68: Hoare triple {183272#(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 !(~c~0 >= 2 * ~v~0); {183272#(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-28 05:58:46,914 INFO L290 TraceCheckUtils]: 69: Hoare triple {183272#(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))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,915 INFO L290 TraceCheckUtils]: 70: Hoare triple {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,915 INFO L290 TraceCheckUtils]: 71: Hoare triple {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,916 INFO L290 TraceCheckUtils]: 72: Hoare triple {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~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; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,916 INFO L290 TraceCheckUtils]: 73: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,917 INFO L290 TraceCheckUtils]: 74: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,917 INFO L272 TraceCheckUtils]: 75: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,917 INFO L290 TraceCheckUtils]: 76: Hoare triple {183129#true} ~cond := #in~cond; {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:46,917 INFO L290 TraceCheckUtils]: 77: Hoare triple {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:46,918 INFO L290 TraceCheckUtils]: 78: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:46,918 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,918 INFO L272 TraceCheckUtils]: 80: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,919 INFO L290 TraceCheckUtils]: 81: Hoare triple {183129#true} ~cond := #in~cond; {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:46,919 INFO L290 TraceCheckUtils]: 82: Hoare triple {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:46,919 INFO L290 TraceCheckUtils]: 83: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:46,920 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,920 INFO L272 TraceCheckUtils]: 85: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,920 INFO L290 TraceCheckUtils]: 86: Hoare triple {183129#true} ~cond := #in~cond; {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:46,920 INFO L290 TraceCheckUtils]: 87: Hoare triple {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:46,921 INFO L290 TraceCheckUtils]: 88: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:46,922 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,922 INFO L272 TraceCheckUtils]: 90: Hoare triple {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:58:46,922 INFO L290 TraceCheckUtils]: 91: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:58:46,922 INFO L290 TraceCheckUtils]: 92: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:58:46,922 INFO L290 TraceCheckUtils]: 93: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:58:46,923 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183129#true} {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #104#return; {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,923 INFO L290 TraceCheckUtils]: 95: Hoare triple {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,924 INFO L290 TraceCheckUtils]: 96: Hoare triple {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,924 INFO L290 TraceCheckUtils]: 97: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,925 INFO L290 TraceCheckUtils]: 98: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,925 INFO L290 TraceCheckUtils]: 99: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:46,925 INFO L290 TraceCheckUtils]: 100: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= 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; {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:46,926 INFO L290 TraceCheckUtils]: 101: Hoare triple {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:46,926 INFO L290 TraceCheckUtils]: 102: Hoare triple {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:46,927 INFO L290 TraceCheckUtils]: 103: Hoare triple {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !(0 != ~b~0); {183454#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:46,927 INFO L272 TraceCheckUtils]: 104: Hoare triple {183454#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 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)); {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:58:46,928 INFO L290 TraceCheckUtils]: 105: Hoare triple {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:46,928 INFO L290 TraceCheckUtils]: 106: Hoare triple {183462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183130#false} is VALID [2022-04-28 05:58:46,928 INFO L290 TraceCheckUtils]: 107: Hoare triple {183130#false} assume !false; {183130#false} is VALID [2022-04-28 05:58:46,929 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 93 proven. 46 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2022-04-28 05:58:46,929 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:44,942 INFO L290 TraceCheckUtils]: 107: Hoare triple {183130#false} assume !false; {183130#false} is VALID [2022-04-28 05:59:44,943 INFO L290 TraceCheckUtils]: 106: Hoare triple {183462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183130#false} is VALID [2022-04-28 05:59:44,943 INFO L290 TraceCheckUtils]: 105: Hoare triple {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:44,944 INFO L272 TraceCheckUtils]: 104: Hoare triple {183478#(= (+ (* 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)); {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:59:44,944 INFO L290 TraceCheckUtils]: 103: Hoare triple {183482#(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); {183478#(= (+ (* 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-28 05:59:44,945 INFO L290 TraceCheckUtils]: 102: Hoare triple {183482#(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 !!(#t~post6 < 20);havoc #t~post6; {183482#(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-28 05:59:44,945 INFO L290 TraceCheckUtils]: 101: Hoare triple {183482#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183482#(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-28 05:59:45,111 INFO L290 TraceCheckUtils]: 100: Hoare triple {183492#(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; {183482#(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-28 05:59:45,111 INFO L290 TraceCheckUtils]: 99: Hoare triple {183492#(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); {183492#(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-28 05:59:45,112 INFO L290 TraceCheckUtils]: 98: Hoare triple {183492#(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 !!(#t~post7 < 20);havoc #t~post7; {183492#(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-28 05:59:45,112 INFO L290 TraceCheckUtils]: 97: Hoare triple {183492#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183492#(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-28 05:59:45,137 INFO L290 TraceCheckUtils]: 96: Hoare triple {183505#(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; {183492#(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-28 05:59:45,137 INFO L290 TraceCheckUtils]: 95: Hoare triple {183505#(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); {183505#(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-28 05:59:45,138 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183129#true} {183505#(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))))} #104#return; {183505#(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-28 05:59:45,138 INFO L290 TraceCheckUtils]: 93: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,138 INFO L290 TraceCheckUtils]: 92: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,138 INFO L290 TraceCheckUtils]: 91: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,138 INFO L272 TraceCheckUtils]: 90: Hoare triple {183505#(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)); {183129#true} is VALID [2022-04-28 05:59:45,139 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183527#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {183505#(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-28 05:59:45,139 INFO L290 TraceCheckUtils]: 88: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:45,140 INFO L290 TraceCheckUtils]: 87: Hoare triple {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:45,140 INFO L290 TraceCheckUtils]: 86: Hoare triple {183129#true} ~cond := #in~cond; {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:45,140 INFO L272 TraceCheckUtils]: 85: Hoare triple {183527#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {183129#true} is VALID [2022-04-28 05:59:45,141 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183544#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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))))} #100#return; {183527#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-28 05:59:45,141 INFO L290 TraceCheckUtils]: 83: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:45,142 INFO L290 TraceCheckUtils]: 82: Hoare triple {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:45,142 INFO L290 TraceCheckUtils]: 81: Hoare triple {183129#true} ~cond := #in~cond; {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:45,142 INFO L272 TraceCheckUtils]: 80: Hoare triple {183544#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {183129#true} is VALID [2022-04-28 05:59:45,143 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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))))} #98#return; {183544#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-28 05:59:45,143 INFO L290 TraceCheckUtils]: 78: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:45,144 INFO L290 TraceCheckUtils]: 77: Hoare triple {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:45,144 INFO L290 TraceCheckUtils]: 76: Hoare triple {183129#true} ~cond := #in~cond; {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:45,144 INFO L272 TraceCheckUtils]: 75: Hoare triple {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {183129#true} is VALID [2022-04-28 05:59:45,144 INFO L290 TraceCheckUtils]: 74: Hoare triple {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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 !!(#t~post8 < 20);havoc #t~post8; {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-28 05:59:45,145 INFO L290 TraceCheckUtils]: 73: Hoare triple {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-28 05:59:45,436 INFO L290 TraceCheckUtils]: 72: Hoare triple {183129#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-28 05:59:45,436 INFO L290 TraceCheckUtils]: 71: Hoare triple {183129#true} assume !!(#t~post7 < 20);havoc #t~post7; {183129#true} is VALID [2022-04-28 05:59:45,436 INFO L290 TraceCheckUtils]: 70: Hoare triple {183129#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183129#true} is VALID [2022-04-28 05:59:45,436 INFO L290 TraceCheckUtils]: 69: Hoare triple {183129#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 68: Hoare triple {183129#true} assume !(~c~0 >= 2 * ~v~0); {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183129#true} {183129#true} #104#return; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 66: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 65: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 64: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L272 TraceCheckUtils]: 63: Hoare triple {183129#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183129#true} {183129#true} #102#return; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 61: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 60: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 59: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L272 TraceCheckUtils]: 58: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183129#true} {183129#true} #100#return; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 56: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 55: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,437 INFO L290 TraceCheckUtils]: 54: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L272 TraceCheckUtils]: 53: Hoare triple {183129#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183129#true} {183129#true} #98#return; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 51: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 50: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 49: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L272 TraceCheckUtils]: 48: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 47: Hoare triple {183129#true} assume !!(#t~post8 < 20);havoc #t~post8; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 46: Hoare triple {183129#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 45: Hoare triple {183129#true} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183129#true} {183129#true} #104#return; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 43: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 42: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 41: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L272 TraceCheckUtils]: 40: Hoare triple {183129#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183129#true} {183129#true} #102#return; {183129#true} is VALID [2022-04-28 05:59:45,438 INFO L290 TraceCheckUtils]: 38: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 37: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 36: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L272 TraceCheckUtils]: 35: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183129#true} {183129#true} #100#return; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 33: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 32: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 31: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L272 TraceCheckUtils]: 30: Hoare triple {183129#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183129#true} {183129#true} #98#return; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 28: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 27: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 26: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L272 TraceCheckUtils]: 25: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 24: Hoare triple {183129#true} assume !!(#t~post8 < 20);havoc #t~post8; {183129#true} is VALID [2022-04-28 05:59:45,439 INFO L290 TraceCheckUtils]: 23: Hoare triple {183129#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 22: Hoare triple {183129#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 21: Hoare triple {183129#true} assume !!(#t~post7 < 20);havoc #t~post7; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {183129#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 19: Hoare triple {183129#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {183129#true} assume !!(#t~post6 < 20);havoc #t~post6; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 17: Hoare triple {183129#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 16: Hoare triple {183129#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183129#true} {183129#true} #96#return; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L272 TraceCheckUtils]: 11: Hoare triple {183129#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183129#true} {183129#true} #94#return; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 9: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 8: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-28 05:59:45,440 INFO L290 TraceCheckUtils]: 7: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L272 TraceCheckUtils]: 6: Hoare triple {183129#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {183129#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L272 TraceCheckUtils]: 4: Hoare triple {183129#true} call #t~ret9 := main(); {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183129#true} {183129#true} #108#return; {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L290 TraceCheckUtils]: 2: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L290 TraceCheckUtils]: 1: Hoare triple {183129#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L272 TraceCheckUtils]: 0: Hoare triple {183129#true} call ULTIMATE.init(); {183129#true} is VALID [2022-04-28 05:59:45,441 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 117 proven. 12 refuted. 0 times theorem prover too weak. 197 trivial. 0 not checked. [2022-04-28 05:59:45,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:45,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [257231206] [2022-04-28 05:59:45,442 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:45,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2013439175] [2022-04-28 05:59:45,442 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2013439175] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:45,442 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:45,442 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 13] total 24 [2022-04-28 05:59:45,442 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:45,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [577068445] [2022-04-28 05:59:45,442 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [577068445] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:45,442 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:45,442 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 05:59:45,442 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1731536848] [2022-04-28 05:59:45,442 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:45,443 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 05:59:45,443 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:45,443 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:59:45,554 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:45,554 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 05:59:45,554 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:45,554 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 05:59:45,554 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=455, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:59:45,555 INFO L87 Difference]: Start difference. First operand 2064 states and 2722 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:59:54,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:54,643 INFO L93 Difference]: Finished difference Result 2130 states and 2803 transitions. [2022-04-28 05:59:54,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:59:54,643 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 05:59:54,643 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:54,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:59:54,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 05:59:54,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:59:54,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 05:59:54,646 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 179 transitions. [2022-04-28 05:59:54,929 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 179 edges. 179 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:55,119 INFO L225 Difference]: With dead ends: 2130 [2022-04-28 05:59:55,119 INFO L226 Difference]: Without dead ends: 2125 [2022-04-28 05:59:55,119 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 192 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 163 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=122, Invalid=634, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:59:55,120 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 80 mSDsluCounter, 482 mSDsCounter, 0 mSdLazyCounter, 903 mSolverCounterSat, 86 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 547 SdHoareTripleChecker+Invalid, 989 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 86 IncrementalHoareTripleChecker+Valid, 903 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-28 05:59:55,120 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [98 Valid, 547 Invalid, 989 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [86 Valid, 903 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-28 05:59:55,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2125 states. [2022-04-28 06:00:00,361 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2125 to 2071. [2022-04-28 06:00:00,361 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:00,363 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:00,364 INFO L74 IsIncluded]: Start isIncluded. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:00,366 INFO L87 Difference]: Start difference. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:00,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:00,481 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 06:00:00,481 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 06:00:00,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:00,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:00,485 INFO L74 IsIncluded]: Start isIncluded. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 06:00:00,486 INFO L87 Difference]: Start difference. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 06:00:00,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:00,602 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 06:00:00,602 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 06:00:00,604 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:00,605 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:00,605 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:00,605 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:00,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:00,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2071 states to 2071 states and 2721 transitions. [2022-04-28 06:00:00,793 INFO L78 Accepts]: Start accepts. Automaton has 2071 states and 2721 transitions. Word has length 108 [2022-04-28 06:00:00,793 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:00,793 INFO L495 AbstractCegarLoop]: Abstraction has 2071 states and 2721 transitions. [2022-04-28 06:00:00,793 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:00,793 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2071 states and 2721 transitions. [2022-04-28 06:00:10,264 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2721 edges. 2721 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:10,264 INFO L276 IsEmpty]: Start isEmpty. Operand 2071 states and 2721 transitions. [2022-04-28 06:00:10,265 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-28 06:00:10,265 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:10,265 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:00:10,282 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:10,482 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable40 [2022-04-28 06:00:10,483 INFO L420 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:10,483 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:10,483 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 9 times [2022-04-28 06:00:10,483 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:10,483 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [773575535] [2022-04-28 06:00:10,483 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:10,484 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 10 times [2022-04-28 06:00:10,484 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:10,484 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [549228864] [2022-04-28 06:00:10,484 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:10,484 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:10,494 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:10,494 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [90104771] [2022-04-28 06:00:10,494 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:00:10,494 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:10,494 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:10,495 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:10,496 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-28 06:00:10,561 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:00:10,561 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:10,563 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-28 06:00:10,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:10,585 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:37,350 INFO L272 TraceCheckUtils]: 0: Hoare triple {196460#true} call ULTIMATE.init(); {196460#true} is VALID [2022-04-28 06:00:37,350 INFO L290 TraceCheckUtils]: 1: Hoare triple {196460#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {196460#true} is VALID [2022-04-28 06:00:37,350 INFO L290 TraceCheckUtils]: 2: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,350 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196460#true} {196460#true} #108#return; {196460#true} is VALID [2022-04-28 06:00:37,350 INFO L272 TraceCheckUtils]: 4: Hoare triple {196460#true} call #t~ret9 := main(); {196460#true} is VALID [2022-04-28 06:00:37,350 INFO L290 TraceCheckUtils]: 5: Hoare triple {196460#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196460#true} is VALID [2022-04-28 06:00:37,350 INFO L272 TraceCheckUtils]: 6: Hoare triple {196460#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,351 INFO L290 TraceCheckUtils]: 7: Hoare triple {196460#true} ~cond := #in~cond; {196486#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 06:00:37,351 INFO L290 TraceCheckUtils]: 8: Hoare triple {196486#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {196490#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:00:37,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {196490#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {196490#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:00:37,352 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196490#(not (= |assume_abort_if_not_#in~cond| 0))} {196460#true} #94#return; {196497#(<= 1 main_~x~0)} is VALID [2022-04-28 06:00:37,352 INFO L272 TraceCheckUtils]: 11: Hoare triple {196497#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,352 INFO L290 TraceCheckUtils]: 12: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,352 INFO L290 TraceCheckUtils]: 14: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,352 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196460#true} {196497#(<= 1 main_~x~0)} #96#return; {196497#(<= 1 main_~x~0)} is VALID [2022-04-28 06:00:37,353 INFO L290 TraceCheckUtils]: 16: Hoare triple {196497#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196516#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:37,353 INFO L290 TraceCheckUtils]: 17: Hoare triple {196516#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196516#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:37,353 INFO L290 TraceCheckUtils]: 18: Hoare triple {196516#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {196516#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:37,354 INFO L290 TraceCheckUtils]: 19: Hoare triple {196516#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:37,354 INFO L290 TraceCheckUtils]: 20: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:37,355 INFO L290 TraceCheckUtils]: 21: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:37,355 INFO L290 TraceCheckUtils]: 22: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:37,355 INFO L290 TraceCheckUtils]: 23: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~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; {196539#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:37,356 INFO L290 TraceCheckUtils]: 24: Hoare triple {196539#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196539#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:37,356 INFO L290 TraceCheckUtils]: 25: Hoare triple {196539#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {196539#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:37,357 INFO L290 TraceCheckUtils]: 26: Hoare triple {196539#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:37,357 INFO L290 TraceCheckUtils]: 27: Hoare triple {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:37,357 INFO L290 TraceCheckUtils]: 28: Hoare triple {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:37,358 INFO L290 TraceCheckUtils]: 29: Hoare triple {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:37,358 INFO L290 TraceCheckUtils]: 30: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:37,359 INFO L290 TraceCheckUtils]: 31: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:37,359 INFO L272 TraceCheckUtils]: 32: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,359 INFO L290 TraceCheckUtils]: 33: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,359 INFO L290 TraceCheckUtils]: 34: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,359 INFO L290 TraceCheckUtils]: 35: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,360 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #98#return; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:37,360 INFO L272 TraceCheckUtils]: 37: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,360 INFO L290 TraceCheckUtils]: 38: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,360 INFO L290 TraceCheckUtils]: 39: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,360 INFO L290 TraceCheckUtils]: 40: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,361 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #100#return; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:37,361 INFO L272 TraceCheckUtils]: 42: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,361 INFO L290 TraceCheckUtils]: 43: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,361 INFO L290 TraceCheckUtils]: 44: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,361 INFO L290 TraceCheckUtils]: 45: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,362 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:37,362 INFO L272 TraceCheckUtils]: 47: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,362 INFO L290 TraceCheckUtils]: 48: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,362 INFO L290 TraceCheckUtils]: 49: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,362 INFO L290 TraceCheckUtils]: 50: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,363 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:37,363 INFO L290 TraceCheckUtils]: 52: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:00:37,364 INFO L290 TraceCheckUtils]: 53: Hoare triple {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:00:37,364 INFO L290 TraceCheckUtils]: 54: Hoare triple {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !!(#t~post8 < 20);havoc #t~post8; {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:00:37,364 INFO L272 TraceCheckUtils]: 55: Hoare triple {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,364 INFO L290 TraceCheckUtils]: 56: Hoare triple {196460#true} ~cond := #in~cond; {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:37,365 INFO L290 TraceCheckUtils]: 57: Hoare triple {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:37,365 INFO L290 TraceCheckUtils]: 58: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:37,366 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #98#return; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,366 INFO L272 TraceCheckUtils]: 60: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,366 INFO L290 TraceCheckUtils]: 61: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,366 INFO L290 TraceCheckUtils]: 62: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,366 INFO L290 TraceCheckUtils]: 63: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,367 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196460#true} {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,367 INFO L272 TraceCheckUtils]: 65: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,367 INFO L290 TraceCheckUtils]: 66: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,367 INFO L290 TraceCheckUtils]: 67: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,367 INFO L290 TraceCheckUtils]: 68: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,368 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196460#true} {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,368 INFO L272 TraceCheckUtils]: 70: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:00:37,368 INFO L290 TraceCheckUtils]: 71: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,368 INFO L290 TraceCheckUtils]: 72: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,368 INFO L290 TraceCheckUtils]: 73: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,369 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196460#true} {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,371 INFO L290 TraceCheckUtils]: 75: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,371 INFO L290 TraceCheckUtils]: 76: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,372 INFO L290 TraceCheckUtils]: 77: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post8 < 20);havoc #t~post8; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,372 INFO L272 TraceCheckUtils]: 78: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~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)); {196460#true} is VALID [2022-04-28 06:00:37,372 INFO L290 TraceCheckUtils]: 79: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,372 INFO L290 TraceCheckUtils]: 80: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,372 INFO L290 TraceCheckUtils]: 81: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,373 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196460#true} {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #98#return; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,373 INFO L272 TraceCheckUtils]: 83: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {196460#true} is VALID [2022-04-28 06:00:37,373 INFO L290 TraceCheckUtils]: 84: Hoare triple {196460#true} ~cond := #in~cond; {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:37,373 INFO L290 TraceCheckUtils]: 85: Hoare triple {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:37,373 INFO L290 TraceCheckUtils]: 86: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:37,374 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,375 INFO L272 TraceCheckUtils]: 88: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {196460#true} is VALID [2022-04-28 06:00:37,375 INFO L290 TraceCheckUtils]: 89: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:00:37,375 INFO L290 TraceCheckUtils]: 90: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:00:37,375 INFO L290 TraceCheckUtils]: 91: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:00:37,375 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196460#true} {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,376 INFO L272 TraceCheckUtils]: 93: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {196460#true} is VALID [2022-04-28 06:00:37,376 INFO L290 TraceCheckUtils]: 94: Hoare triple {196460#true} ~cond := #in~cond; {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:37,376 INFO L290 TraceCheckUtils]: 95: Hoare triple {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:37,376 INFO L290 TraceCheckUtils]: 96: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:37,377 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,378 INFO L290 TraceCheckUtils]: 98: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,379 INFO L290 TraceCheckUtils]: 99: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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; {196776#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,379 INFO L290 TraceCheckUtils]: 100: Hoare triple {196776#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196776#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,380 INFO L290 TraceCheckUtils]: 101: Hoare triple {196776#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {196776#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,380 INFO L290 TraceCheckUtils]: 102: Hoare triple {196776#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {196786#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:37,383 INFO L290 TraceCheckUtils]: 103: Hoare triple {196786#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:37,383 INFO L290 TraceCheckUtils]: 104: Hoare triple {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:37,384 INFO L290 TraceCheckUtils]: 105: Hoare triple {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:37,384 INFO L290 TraceCheckUtils]: 106: Hoare triple {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !(0 != ~b~0); {196800#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:37,386 INFO L272 TraceCheckUtils]: 107: Hoare triple {196800#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~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)); {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:00:37,386 INFO L290 TraceCheckUtils]: 108: Hoare triple {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196808#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:37,386 INFO L290 TraceCheckUtils]: 109: Hoare triple {196808#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196461#false} is VALID [2022-04-28 06:00:37,386 INFO L290 TraceCheckUtils]: 110: Hoare triple {196461#false} assume !false; {196461#false} is VALID [2022-04-28 06:00:37,387 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 84 proven. 64 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 06:00:37,387 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:25,349 INFO L290 TraceCheckUtils]: 110: Hoare triple {196461#false} assume !false; {196461#false} is VALID [2022-04-28 06:01:25,349 INFO L290 TraceCheckUtils]: 109: Hoare triple {196808#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196461#false} is VALID [2022-04-28 06:01:25,349 INFO L290 TraceCheckUtils]: 108: Hoare triple {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196808#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:25,350 INFO L272 TraceCheckUtils]: 107: Hoare triple {196824#(= (+ (* 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)); {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:01:25,351 INFO L290 TraceCheckUtils]: 106: Hoare triple {196828#(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); {196824#(= (+ (* 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-28 06:01:25,351 INFO L290 TraceCheckUtils]: 105: Hoare triple {196828#(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 !!(#t~post6 < 20);havoc #t~post6; {196828#(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-28 06:01:25,352 INFO L290 TraceCheckUtils]: 104: Hoare triple {196828#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196828#(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-28 06:01:25,502 INFO L290 TraceCheckUtils]: 103: Hoare triple {196838#(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; {196828#(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-28 06:01:25,503 INFO L290 TraceCheckUtils]: 102: Hoare triple {196842#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~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); {196838#(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-28 06:01:25,503 INFO L290 TraceCheckUtils]: 101: Hoare triple {196842#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~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 !!(#t~post7 < 20);havoc #t~post7; {196842#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~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-28 06:01:25,504 INFO L290 TraceCheckUtils]: 100: Hoare triple {196842#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196842#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~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-28 06:01:26,027 INFO L290 TraceCheckUtils]: 99: Hoare triple {196852#(or (<= (+ main_~b~0 main_~v~0) 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))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {196842#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~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-28 06:01:26,028 INFO L290 TraceCheckUtils]: 98: Hoare triple {196852#(or (<= (+ main_~b~0 main_~v~0) 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); {196852#(or (<= (+ main_~b~0 main_~v~0) 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 VALID [2022-04-28 06:01:26,029 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196859#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {196852#(or (<= (+ main_~b~0 main_~v~0) 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 VALID [2022-04-28 06:01:26,029 INFO L290 TraceCheckUtils]: 96: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:26,029 INFO L290 TraceCheckUtils]: 95: Hoare triple {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:26,030 INFO L290 TraceCheckUtils]: 94: Hoare triple {196460#true} ~cond := #in~cond; {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:01:26,030 INFO L272 TraceCheckUtils]: 93: Hoare triple {196859#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,031 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196460#true} {196859#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {196859#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:26,031 INFO L290 TraceCheckUtils]: 91: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,031 INFO L290 TraceCheckUtils]: 90: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,031 INFO L290 TraceCheckUtils]: 89: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,031 INFO L272 TraceCheckUtils]: 88: Hoare triple {196859#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,032 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {196859#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:26,032 INFO L290 TraceCheckUtils]: 86: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:26,033 INFO L290 TraceCheckUtils]: 85: Hoare triple {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:26,033 INFO L290 TraceCheckUtils]: 84: Hoare triple {196460#true} ~cond := #in~cond; {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:01:26,033 INFO L272 TraceCheckUtils]: 83: Hoare triple {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,034 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196460#true} {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:26,034 INFO L290 TraceCheckUtils]: 81: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,034 INFO L290 TraceCheckUtils]: 80: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,034 INFO L290 TraceCheckUtils]: 79: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,034 INFO L272 TraceCheckUtils]: 78: Hoare triple {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,035 INFO L290 TraceCheckUtils]: 77: Hoare triple {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 20);havoc #t~post8; {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:26,035 INFO L290 TraceCheckUtils]: 76: Hoare triple {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:26,115 INFO L290 TraceCheckUtils]: 75: Hoare triple {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196891#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:26,116 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196460#true} {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:26,116 INFO L290 TraceCheckUtils]: 73: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,116 INFO L290 TraceCheckUtils]: 72: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,116 INFO L290 TraceCheckUtils]: 71: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,116 INFO L272 TraceCheckUtils]: 70: Hoare triple {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,117 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196460#true} {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:26,117 INFO L290 TraceCheckUtils]: 68: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,117 INFO L290 TraceCheckUtils]: 67: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,117 INFO L290 TraceCheckUtils]: 66: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,117 INFO L272 TraceCheckUtils]: 65: Hoare triple {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,118 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196460#true} {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #100#return; {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:26,118 INFO L290 TraceCheckUtils]: 63: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,118 INFO L290 TraceCheckUtils]: 62: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,118 INFO L290 TraceCheckUtils]: 61: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,118 INFO L272 TraceCheckUtils]: 60: Hoare triple {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,119 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196977#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #98#return; {196928#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:26,120 INFO L290 TraceCheckUtils]: 58: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:26,120 INFO L290 TraceCheckUtils]: 57: Hoare triple {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:26,120 INFO L290 TraceCheckUtils]: 56: Hoare triple {196460#true} ~cond := #in~cond; {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:01:26,121 INFO L272 TraceCheckUtils]: 55: Hoare triple {196977#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,121 INFO L290 TraceCheckUtils]: 54: Hoare triple {196977#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(#t~post8 < 20);havoc #t~post8; {196977#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:26,122 INFO L290 TraceCheckUtils]: 53: Hoare triple {196977#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196977#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:26,150 INFO L290 TraceCheckUtils]: 52: Hoare triple {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196977#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:26,151 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196460#true} {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #104#return; {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:26,151 INFO L290 TraceCheckUtils]: 50: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,152 INFO L290 TraceCheckUtils]: 49: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,152 INFO L290 TraceCheckUtils]: 48: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,152 INFO L272 TraceCheckUtils]: 47: Hoare triple {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,152 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196460#true} {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #102#return; {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:26,153 INFO L290 TraceCheckUtils]: 45: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,153 INFO L290 TraceCheckUtils]: 44: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,153 INFO L290 TraceCheckUtils]: 43: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,153 INFO L272 TraceCheckUtils]: 42: Hoare triple {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,163 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196460#true} {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #100#return; {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:26,164 INFO L290 TraceCheckUtils]: 40: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,164 INFO L290 TraceCheckUtils]: 39: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,164 INFO L290 TraceCheckUtils]: 38: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,164 INFO L272 TraceCheckUtils]: 37: Hoare triple {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,165 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196460#true} {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #98#return; {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:26,165 INFO L290 TraceCheckUtils]: 35: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,165 INFO L290 TraceCheckUtils]: 34: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,165 INFO L290 TraceCheckUtils]: 33: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,165 INFO L272 TraceCheckUtils]: 32: Hoare triple {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,166 INFO L290 TraceCheckUtils]: 31: Hoare triple {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(#t~post8 < 20);havoc #t~post8; {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:26,166 INFO L290 TraceCheckUtils]: 30: Hoare triple {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:26,167 INFO L290 TraceCheckUtils]: 29: Hoare triple {197069#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {196999#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:26,168 INFO L290 TraceCheckUtils]: 28: Hoare triple {197069#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(#t~post7 < 20);havoc #t~post7; {197069#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:01:26,168 INFO L290 TraceCheckUtils]: 27: Hoare triple {197069#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {197069#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:01:26,171 INFO L290 TraceCheckUtils]: 26: Hoare triple {196460#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {197069#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 25: Hoare triple {196460#true} assume !!(#t~post6 < 20);havoc #t~post6; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 24: Hoare triple {196460#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 23: Hoare triple {196460#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; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 22: Hoare triple {196460#true} assume !(~c~0 >= ~b~0); {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 21: Hoare triple {196460#true} assume !!(#t~post7 < 20);havoc #t~post7; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 20: Hoare triple {196460#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 19: Hoare triple {196460#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 18: Hoare triple {196460#true} assume !!(#t~post6 < 20);havoc #t~post6; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 17: Hoare triple {196460#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 16: Hoare triple {196460#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196460#true} {196460#true} #96#return; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 14: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,172 INFO L290 TraceCheckUtils]: 13: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L290 TraceCheckUtils]: 12: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L272 TraceCheckUtils]: 11: Hoare triple {196460#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196460#true} {196460#true} #94#return; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L272 TraceCheckUtils]: 6: Hoare triple {196460#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L290 TraceCheckUtils]: 5: Hoare triple {196460#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L272 TraceCheckUtils]: 4: Hoare triple {196460#true} call #t~ret9 := main(); {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196460#true} {196460#true} #108#return; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L290 TraceCheckUtils]: 1: Hoare triple {196460#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {196460#true} is VALID [2022-04-28 06:01:26,173 INFO L272 TraceCheckUtils]: 0: Hoare triple {196460#true} call ULTIMATE.init(); {196460#true} is VALID [2022-04-28 06:01:26,174 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 97 proven. 45 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-04-28 06:01:26,174 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:01:26,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [549228864] [2022-04-28 06:01:26,174 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:01:26,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [90104771] [2022-04-28 06:01:26,174 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [90104771] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:01:26,174 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:01:26,175 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 34 [2022-04-28 06:01:26,175 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:01:26,175 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [773575535] [2022-04-28 06:01:26,175 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [773575535] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:01:26,175 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:01:26,175 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 06:01:26,175 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [800560275] [2022-04-28 06:01:26,175 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:01:26,176 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 06:01:26,176 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:01:26,176 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:01:26,335 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:26,335 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 06:01:26,335 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:26,336 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 06:01:26,336 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=170, Invalid=952, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 06:01:26,336 INFO L87 Difference]: Start difference. First operand 2071 states and 2721 transitions. Second operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:01:44,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:44,926 INFO L93 Difference]: Finished difference Result 2221 states and 2903 transitions. [2022-04-28 06:01:44,926 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 06:01:44,926 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 06:01:44,926 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:01:44,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:01:44,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 06:01:44,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:01:44,930 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 06:01:44,930 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 215 transitions. [2022-04-28 06:01:45,401 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:45,619 INFO L225 Difference]: With dead ends: 2221 [2022-04-28 06:01:45,619 INFO L226 Difference]: Without dead ends: 2218 [2022-04-28 06:01:45,620 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 230 GetRequests, 188 SyntacticMatches, 1 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 440 ImplicationChecksByTransitivity, 4.9s TimeCoverageRelationStatistics Valid=274, Invalid=1532, Unknown=0, NotChecked=0, Total=1806 [2022-04-28 06:01:45,621 INFO L413 NwaCegarLoop]: 81 mSDtfsCounter, 124 mSDsluCounter, 795 mSDsCounter, 0 mSdLazyCounter, 1676 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 148 SdHoareTripleChecker+Valid, 876 SdHoareTripleChecker+Invalid, 1757 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 81 IncrementalHoareTripleChecker+Valid, 1676 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.8s IncrementalHoareTripleChecker+Time [2022-04-28 06:01:45,621 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [148 Valid, 876 Invalid, 1757 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [81 Valid, 1676 Invalid, 0 Unknown, 0 Unchecked, 4.8s Time] [2022-04-28 06:01:45,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2218 states. [2022-04-28 06:01:51,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2218 to 2137. [2022-04-28 06:01:51,460 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:01:51,463 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:01:51,464 INFO L74 IsIncluded]: Start isIncluded. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:01:51,465 INFO L87 Difference]: Start difference. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:01:51,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:51,593 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 06:01:51,594 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 06:01:51,597 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:51,597 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:51,599 INFO L74 IsIncluded]: Start isIncluded. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 06:01:51,600 INFO L87 Difference]: Start difference. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 06:01:51,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:51,732 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 06:01:51,733 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 06:01:51,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:51,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:51,735 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:01:51,735 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:01:51,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:01:51,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2137 states to 2137 states and 2784 transitions. [2022-04-28 06:01:51,944 INFO L78 Accepts]: Start accepts. Automaton has 2137 states and 2784 transitions. Word has length 111 [2022-04-28 06:01:51,944 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:01:51,944 INFO L495 AbstractCegarLoop]: Abstraction has 2137 states and 2784 transitions. [2022-04-28 06:01:51,944 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:01:51,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2137 states and 2784 transitions. [2022-04-28 06:02:01,700 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2784 edges. 2784 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:01,700 INFO L276 IsEmpty]: Start isEmpty. Operand 2137 states and 2784 transitions. [2022-04-28 06:02:01,701 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-28 06:02:01,701 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:01,701 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:02:01,719 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-28 06:02:01,915 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable41,42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:01,915 INFO L420 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:01,916 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:01,916 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 7 times [2022-04-28 06:02:01,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:01,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1503490381] [2022-04-28 06:02:01,916 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:01,916 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 8 times [2022-04-28 06:02:01,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:01,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [405036928] [2022-04-28 06:02:01,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:01,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:01,938 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:01,938 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [137651009] [2022-04-28 06:02:01,938 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:02:01,938 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:01,938 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:01,939 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:02:01,941 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-28 06:02:02,006 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:02:02,006 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:02,009 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-28 06:02:02,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:02,032 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:02:24,400 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:02:43,465 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:02:43,509 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:02:43,793 INFO L272 TraceCheckUtils]: 0: Hoare triple {210329#true} call ULTIMATE.init(); {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L290 TraceCheckUtils]: 1: Hoare triple {210329#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L290 TraceCheckUtils]: 2: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210329#true} {210329#true} #108#return; {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L272 TraceCheckUtils]: 4: Hoare triple {210329#true} call #t~ret9 := main(); {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L290 TraceCheckUtils]: 5: Hoare triple {210329#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L272 TraceCheckUtils]: 6: Hoare triple {210329#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L290 TraceCheckUtils]: 7: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L290 TraceCheckUtils]: 8: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L290 TraceCheckUtils]: 9: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210329#true} {210329#true} #94#return; {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L272 TraceCheckUtils]: 11: Hoare triple {210329#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:02:43,794 INFO L290 TraceCheckUtils]: 12: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:02:43,795 INFO L290 TraceCheckUtils]: 13: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:02:43,795 INFO L290 TraceCheckUtils]: 14: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:43,795 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210329#true} {210329#true} #96#return; {210329#true} is VALID [2022-04-28 06:02:43,795 INFO L290 TraceCheckUtils]: 16: Hoare triple {210329#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210382#(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-28 06:02:43,796 INFO L290 TraceCheckUtils]: 17: Hoare triple {210382#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210382#(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-28 06:02:43,796 INFO L290 TraceCheckUtils]: 18: Hoare triple {210382#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {210382#(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-28 06:02:43,796 INFO L290 TraceCheckUtils]: 19: Hoare triple {210382#(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; {210392#(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-28 06:02:43,797 INFO L290 TraceCheckUtils]: 20: Hoare triple {210392#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210392#(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-28 06:02:43,797 INFO L290 TraceCheckUtils]: 21: Hoare triple {210392#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {210392#(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-28 06:02:43,797 INFO L290 TraceCheckUtils]: 22: Hoare triple {210392#(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); {210392#(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-28 06:02:43,798 INFO L290 TraceCheckUtils]: 23: Hoare triple {210392#(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; {210405#(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-28 06:02:43,798 INFO L290 TraceCheckUtils]: 24: Hoare triple {210405#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210405#(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-28 06:02:43,799 INFO L290 TraceCheckUtils]: 25: Hoare triple {210405#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {210405#(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-28 06:02:43,799 INFO L290 TraceCheckUtils]: 26: Hoare triple {210405#(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; {210415#(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-28 06:02:43,800 INFO L290 TraceCheckUtils]: 27: Hoare triple {210415#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210415#(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-28 06:02:43,800 INFO L290 TraceCheckUtils]: 28: Hoare triple {210415#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {210415#(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-28 06:02:43,800 INFO L290 TraceCheckUtils]: 29: Hoare triple {210415#(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; {210425#(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-28 06:02:43,801 INFO L290 TraceCheckUtils]: 30: Hoare triple {210425#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210425#(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-28 06:02:43,801 INFO L290 TraceCheckUtils]: 31: Hoare triple {210425#(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 !!(#t~post8 < 20);havoc #t~post8; {210425#(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-28 06:02:43,801 INFO L272 TraceCheckUtils]: 32: Hoare triple {210425#(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)); {210329#true} is VALID [2022-04-28 06:02:43,802 INFO L290 TraceCheckUtils]: 33: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:43,802 INFO L290 TraceCheckUtils]: 34: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:43,802 INFO L290 TraceCheckUtils]: 35: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:43,803 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210425#(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))} #98#return; {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:43,803 INFO L272 TraceCheckUtils]: 37: Hoare triple {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~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)); {210329#true} is VALID [2022-04-28 06:02:43,803 INFO L290 TraceCheckUtils]: 38: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:02:43,803 INFO L290 TraceCheckUtils]: 39: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:02:43,803 INFO L290 TraceCheckUtils]: 40: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:43,804 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210329#true} {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:43,804 INFO L272 TraceCheckUtils]: 42: Hoare triple {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~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)); {210329#true} is VALID [2022-04-28 06:02:43,804 INFO L290 TraceCheckUtils]: 43: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:02:43,804 INFO L290 TraceCheckUtils]: 44: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:02:43,804 INFO L290 TraceCheckUtils]: 45: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:43,805 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210329#true} {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:43,805 INFO L272 TraceCheckUtils]: 47: Hoare triple {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~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)); {210329#true} is VALID [2022-04-28 06:02:43,805 INFO L290 TraceCheckUtils]: 48: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:02:43,805 INFO L290 TraceCheckUtils]: 49: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:02:43,805 INFO L290 TraceCheckUtils]: 50: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:43,806 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210329#true} {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:43,806 INFO L290 TraceCheckUtils]: 52: Hoare triple {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:43,810 INFO L290 TraceCheckUtils]: 53: Hoare triple {210449#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~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; {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:02:43,811 INFO L290 TraceCheckUtils]: 54: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:02:43,811 INFO L290 TraceCheckUtils]: 55: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:02:43,812 INFO L290 TraceCheckUtils]: 56: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:02:45,815 WARN L290 TraceCheckUtils]: 57: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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; {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is UNKNOWN [2022-04-28 06:02:45,819 INFO L290 TraceCheckUtils]: 58: Hoare triple {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,820 INFO L290 TraceCheckUtils]: 59: Hoare triple {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,822 INFO L290 TraceCheckUtils]: 60: Hoare triple {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,823 INFO L290 TraceCheckUtils]: 61: Hoare triple {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,826 INFO L290 TraceCheckUtils]: 62: Hoare triple {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,828 INFO L290 TraceCheckUtils]: 63: Hoare triple {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,830 INFO L290 TraceCheckUtils]: 64: Hoare triple {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,832 INFO L290 TraceCheckUtils]: 65: Hoare triple {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post8 < 20);havoc #t~post8; {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:02:45,832 INFO L272 TraceCheckUtils]: 66: Hoare triple {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:02:45,832 INFO L290 TraceCheckUtils]: 67: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:45,832 INFO L290 TraceCheckUtils]: 68: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:45,833 INFO L290 TraceCheckUtils]: 69: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:45,834 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #98#return; {210556#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:45,834 INFO L272 TraceCheckUtils]: 71: Hoare triple {210556#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:02:45,834 INFO L290 TraceCheckUtils]: 72: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:45,834 INFO L290 TraceCheckUtils]: 73: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:45,835 INFO L290 TraceCheckUtils]: 74: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:45,836 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210556#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #100#return; {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:45,836 INFO L272 TraceCheckUtils]: 76: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:02:45,836 INFO L290 TraceCheckUtils]: 77: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:02:45,836 INFO L290 TraceCheckUtils]: 78: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:02:45,836 INFO L290 TraceCheckUtils]: 79: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:45,837 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210329#true} {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #102#return; {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:45,837 INFO L272 TraceCheckUtils]: 81: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:02:45,837 INFO L290 TraceCheckUtils]: 82: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:02:45,837 INFO L290 TraceCheckUtils]: 83: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:02:45,837 INFO L290 TraceCheckUtils]: 84: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:02:45,838 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210329#true} {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #104#return; {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:45,841 INFO L290 TraceCheckUtils]: 86: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:45,843 INFO L290 TraceCheckUtils]: 87: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:45,846 INFO L290 TraceCheckUtils]: 88: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:45,848 INFO L290 TraceCheckUtils]: 89: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:45,850 INFO L290 TraceCheckUtils]: 90: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:45,863 INFO L290 TraceCheckUtils]: 91: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= 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; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,865 INFO L290 TraceCheckUtils]: 92: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,866 INFO L290 TraceCheckUtils]: 93: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post6 < 20);havoc #t~post6; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,867 INFO L290 TraceCheckUtils]: 94: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,869 INFO L290 TraceCheckUtils]: 95: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,871 INFO L290 TraceCheckUtils]: 96: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,872 INFO L290 TraceCheckUtils]: 97: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~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; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,873 INFO L290 TraceCheckUtils]: 98: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,874 INFO L290 TraceCheckUtils]: 99: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post8 < 20);havoc #t~post8; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:02:45,874 INFO L272 TraceCheckUtils]: 100: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~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)); {210329#true} is VALID [2022-04-28 06:02:45,875 INFO L290 TraceCheckUtils]: 101: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:45,875 INFO L290 TraceCheckUtils]: 102: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:45,875 INFO L290 TraceCheckUtils]: 103: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:45,880 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #98#return; {210662#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 06:02:45,881 INFO L272 TraceCheckUtils]: 105: Hoare triple {210662#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:02:45,881 INFO L290 TraceCheckUtils]: 106: Hoare triple {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210670#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:45,881 INFO L290 TraceCheckUtils]: 107: Hoare triple {210670#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210330#false} is VALID [2022-04-28 06:02:45,881 INFO L290 TraceCheckUtils]: 108: Hoare triple {210330#false} assume !false; {210330#false} is VALID [2022-04-28 06:02:45,882 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 47 proven. 113 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-28 06:02:45,882 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:03:22,720 INFO L290 TraceCheckUtils]: 108: Hoare triple {210330#false} assume !false; {210330#false} is VALID [2022-04-28 06:03:22,720 INFO L290 TraceCheckUtils]: 107: Hoare triple {210670#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210330#false} is VALID [2022-04-28 06:03:22,720 INFO L290 TraceCheckUtils]: 106: Hoare triple {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210670#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:22,721 INFO L272 TraceCheckUtils]: 105: Hoare triple {210686#(= 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)); {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:03:22,722 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210690#(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)))))} #98#return; {210686#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:03:22,722 INFO L290 TraceCheckUtils]: 103: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,723 INFO L290 TraceCheckUtils]: 102: Hoare triple {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,723 INFO L290 TraceCheckUtils]: 101: Hoare triple {210329#true} ~cond := #in~cond; {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:03:22,723 INFO L272 TraceCheckUtils]: 100: Hoare triple {210690#(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)); {210329#true} is VALID [2022-04-28 06:03:22,723 INFO L290 TraceCheckUtils]: 99: Hoare triple {210690#(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 !!(#t~post8 < 20);havoc #t~post8; {210690#(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-28 06:03:22,724 INFO L290 TraceCheckUtils]: 98: Hoare triple {210690#(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)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210690#(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-28 06:03:22,724 INFO L290 TraceCheckUtils]: 97: Hoare triple {210690#(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; {210690#(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-28 06:03:22,725 INFO L290 TraceCheckUtils]: 96: Hoare triple {210690#(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 !!(#t~post7 < 20);havoc #t~post7; {210690#(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-28 06:03:22,725 INFO L290 TraceCheckUtils]: 95: Hoare triple {210690#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210690#(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-28 06:03:22,725 INFO L290 TraceCheckUtils]: 94: Hoare triple {210690#(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; {210690#(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-28 06:03:22,726 INFO L290 TraceCheckUtils]: 93: Hoare triple {210690#(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 !!(#t~post6 < 20);havoc #t~post6; {210690#(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-28 06:03:22,726 INFO L290 TraceCheckUtils]: 92: Hoare triple {210690#(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)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210690#(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-28 06:03:22,790 INFO L290 TraceCheckUtils]: 91: Hoare triple {210731#(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; {210690#(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-28 06:03:22,790 INFO L290 TraceCheckUtils]: 90: Hoare triple {210731#(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); {210731#(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-28 06:03:22,791 INFO L290 TraceCheckUtils]: 89: Hoare triple {210731#(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 !!(#t~post7 < 20);havoc #t~post7; {210731#(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-28 06:03:22,791 INFO L290 TraceCheckUtils]: 88: Hoare triple {210731#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210731#(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-28 06:03:22,797 INFO L290 TraceCheckUtils]: 87: Hoare triple {210744#(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; {210731#(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-28 06:03:22,798 INFO L290 TraceCheckUtils]: 86: Hoare triple {210744#(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)))))} assume !(~c~0 >= 2 * ~v~0); {210744#(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-28 06:03:22,799 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210329#true} {210744#(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)))))} #104#return; {210744#(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-28 06:03:22,799 INFO L290 TraceCheckUtils]: 84: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,799 INFO L290 TraceCheckUtils]: 83: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,799 INFO L290 TraceCheckUtils]: 82: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,799 INFO L272 TraceCheckUtils]: 81: Hoare triple {210744#(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)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,800 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210329#true} {210744#(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)))))} #102#return; {210744#(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-28 06:03:22,800 INFO L290 TraceCheckUtils]: 79: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,800 INFO L290 TraceCheckUtils]: 78: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,800 INFO L290 TraceCheckUtils]: 77: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,800 INFO L272 TraceCheckUtils]: 76: Hoare triple {210744#(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)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,801 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210329#true} {210744#(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)))))} #100#return; {210744#(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-28 06:03:22,801 INFO L290 TraceCheckUtils]: 74: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,801 INFO L290 TraceCheckUtils]: 73: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,801 INFO L290 TraceCheckUtils]: 72: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,801 INFO L272 TraceCheckUtils]: 71: Hoare triple {210744#(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)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,802 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210796#(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_~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)))))} #98#return; {210744#(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-28 06:03:22,802 INFO L290 TraceCheckUtils]: 69: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,803 INFO L290 TraceCheckUtils]: 68: Hoare triple {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,803 INFO L290 TraceCheckUtils]: 67: Hoare triple {210329#true} ~cond := #in~cond; {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:03:22,803 INFO L272 TraceCheckUtils]: 66: Hoare triple {210796#(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_~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)); {210329#true} is VALID [2022-04-28 06:03:22,804 INFO L290 TraceCheckUtils]: 65: Hoare triple {210796#(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_~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 !!(#t~post8 < 20);havoc #t~post8; {210796#(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_~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-28 06:03:22,804 INFO L290 TraceCheckUtils]: 64: Hoare triple {210796#(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_~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)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210796#(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_~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-28 06:03:22,805 INFO L290 TraceCheckUtils]: 63: Hoare triple {210818#(or (= (+ (* 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; {210796#(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_~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-28 06:03:22,805 INFO L290 TraceCheckUtils]: 62: Hoare triple {210818#(or (= (+ (* 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 !!(#t~post7 < 20);havoc #t~post7; {210818#(or (= (+ (* 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-28 06:03:22,806 INFO L290 TraceCheckUtils]: 61: Hoare triple {210818#(or (= (+ (* 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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210818#(or (= (+ (* 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-28 06:03:22,810 INFO L290 TraceCheckUtils]: 60: Hoare triple {210329#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210818#(or (= (+ (* 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-28 06:03:22,810 INFO L290 TraceCheckUtils]: 59: Hoare triple {210329#true} assume !!(#t~post6 < 20);havoc #t~post6; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 58: Hoare triple {210329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 57: Hoare triple {210329#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; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 56: Hoare triple {210329#true} assume !(~c~0 >= ~b~0); {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 55: Hoare triple {210329#true} assume !!(#t~post7 < 20);havoc #t~post7; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 54: Hoare triple {210329#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 53: Hoare triple {210329#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 52: Hoare triple {210329#true} assume !(~c~0 >= 2 * ~v~0); {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210329#true} {210329#true} #104#return; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 50: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 49: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,810 INFO L290 TraceCheckUtils]: 48: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L272 TraceCheckUtils]: 47: Hoare triple {210329#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210329#true} {210329#true} #102#return; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 45: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 44: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 43: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L272 TraceCheckUtils]: 42: Hoare triple {210329#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210329#true} {210329#true} #100#return; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 40: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 39: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 38: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L272 TraceCheckUtils]: 37: Hoare triple {210329#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210329#true} {210329#true} #98#return; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 35: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,811 INFO L290 TraceCheckUtils]: 34: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 33: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L272 TraceCheckUtils]: 32: Hoare triple {210329#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 31: Hoare triple {210329#true} assume !!(#t~post8 < 20);havoc #t~post8; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 30: Hoare triple {210329#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 29: Hoare triple {210329#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 28: Hoare triple {210329#true} assume !!(#t~post7 < 20);havoc #t~post7; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 27: Hoare triple {210329#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 26: Hoare triple {210329#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 25: Hoare triple {210329#true} assume !!(#t~post6 < 20);havoc #t~post6; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 24: Hoare triple {210329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 23: Hoare triple {210329#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; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 22: Hoare triple {210329#true} assume !(~c~0 >= ~b~0); {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {210329#true} assume !!(#t~post7 < 20);havoc #t~post7; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {210329#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 19: Hoare triple {210329#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210329#true} is VALID [2022-04-28 06:03:22,812 INFO L290 TraceCheckUtils]: 18: Hoare triple {210329#true} assume !!(#t~post6 < 20);havoc #t~post6; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 17: Hoare triple {210329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 16: Hoare triple {210329#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210329#true} {210329#true} #96#return; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 14: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 13: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 12: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L272 TraceCheckUtils]: 11: Hoare triple {210329#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210329#true} {210329#true} #94#return; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 9: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L272 TraceCheckUtils]: 6: Hoare triple {210329#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L290 TraceCheckUtils]: 5: Hoare triple {210329#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L272 TraceCheckUtils]: 4: Hoare triple {210329#true} call #t~ret9 := main(); {210329#true} is VALID [2022-04-28 06:03:22,813 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210329#true} {210329#true} #108#return; {210329#true} is VALID [2022-04-28 06:03:22,814 INFO L290 TraceCheckUtils]: 2: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-28 06:03:22,814 INFO L290 TraceCheckUtils]: 1: Hoare triple {210329#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {210329#true} is VALID [2022-04-28 06:03:22,814 INFO L272 TraceCheckUtils]: 0: Hoare triple {210329#true} call ULTIMATE.init(); {210329#true} is VALID [2022-04-28 06:03:22,814 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 102 proven. 21 refuted. 0 times theorem prover too weak. 125 trivial. 0 not checked. [2022-04-28 06:03:22,814 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:03:22,814 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [405036928] [2022-04-28 06:03:22,814 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:03:22,814 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [137651009] [2022-04-28 06:03:22,815 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [137651009] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:03:22,815 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:03:22,815 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 12] total 28 [2022-04-28 06:03:22,815 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:03:22,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1503490381] [2022-04-28 06:03:22,815 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1503490381] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:03:22,815 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:03:22,815 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 06:03:22,815 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1360692452] [2022-04-28 06:03:22,815 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:03:22,816 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 109 [2022-04-28 06:03:22,816 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:03:22,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 06:03:25,128 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 84 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:25,128 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 06:03:25,128 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:25,128 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 06:03:25,129 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=656, Unknown=0, NotChecked=0, Total=756 [2022-04-28 06:03:25,131 INFO L87 Difference]: Start difference. First operand 2137 states and 2784 transitions. Second operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 06:03:29,476 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:03:31,483 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:03:33,490 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:03:37,616 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:03:47,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:47,216 INFO L93 Difference]: Finished difference Result 2272 states and 2960 transitions. [2022-04-28 06:03:47,216 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 06:03:47,216 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 109 [2022-04-28 06:03:47,216 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:03:47,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 06:03:47,218 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 229 transitions. [2022-04-28 06:03:47,218 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 06:03:47,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 229 transitions. [2022-04-28 06:03:47,220 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 229 transitions. [2022-04-28 06:03:49,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 229 edges. 228 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:50,123 INFO L225 Difference]: With dead ends: 2272 [2022-04-28 06:03:50,124 INFO L226 Difference]: Without dead ends: 2270 [2022-04-28 06:03:50,124 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 224 GetRequests, 188 SyntacticMatches, 3 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 216 ImplicationChecksByTransitivity, 1.9s TimeCoverageRelationStatistics Valid=156, Invalid=1034, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 06:03:50,125 INFO L413 NwaCegarLoop]: 79 mSDtfsCounter, 129 mSDsluCounter, 658 mSDsCounter, 0 mSdLazyCounter, 1111 mSolverCounterSat, 77 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 11.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 158 SdHoareTripleChecker+Valid, 737 SdHoareTripleChecker+Invalid, 1192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 1111 IncrementalHoareTripleChecker+Invalid, 4 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 11.2s IncrementalHoareTripleChecker+Time [2022-04-28 06:03:50,125 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [158 Valid, 737 Invalid, 1192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 1111 Invalid, 4 Unknown, 0 Unchecked, 11.2s Time] [2022-04-28 06:03:50,126 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2270 states. [2022-04-28 06:03:55,705 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2270 to 2212. [2022-04-28 06:03:55,705 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:03:55,707 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 06:03:55,708 INFO L74 IsIncluded]: Start isIncluded. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 06:03:55,710 INFO L87 Difference]: Start difference. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 06:03:55,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:55,841 INFO L93 Difference]: Finished difference Result 2270 states and 2958 transitions. [2022-04-28 06:03:55,841 INFO L276 IsEmpty]: Start isEmpty. Operand 2270 states and 2958 transitions. [2022-04-28 06:03:55,844 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:55,844 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:55,846 INFO L74 IsIncluded]: Start isIncluded. First operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) Second operand 2270 states. [2022-04-28 06:03:55,847 INFO L87 Difference]: Start difference. First operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) Second operand 2270 states. [2022-04-28 06:03:55,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:55,979 INFO L93 Difference]: Finished difference Result 2270 states and 2958 transitions. [2022-04-28 06:03:55,979 INFO L276 IsEmpty]: Start isEmpty. Operand 2270 states and 2958 transitions. [2022-04-28 06:03:55,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:55,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:55,982 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:03:55,982 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:03:55,984 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 06:03:56,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2212 states to 2212 states and 2885 transitions. [2022-04-28 06:03:56,196 INFO L78 Accepts]: Start accepts. Automaton has 2212 states and 2885 transitions. Word has length 109 [2022-04-28 06:03:56,196 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:03:56,196 INFO L495 AbstractCegarLoop]: Abstraction has 2212 states and 2885 transitions. [2022-04-28 06:03:56,196 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 06:03:56,196 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2212 states and 2885 transitions. [2022-04-28 06:04:06,495 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2885 edges. 2885 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:04:06,495 INFO L276 IsEmpty]: Start isEmpty. Operand 2212 states and 2885 transitions. [2022-04-28 06:04:06,497 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2022-04-28 06:04:06,497 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:04:06,497 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 7, 6, 5, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:04:06,525 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Forceful destruction successful, exit code 0 [2022-04-28 06:04:06,713 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable42,43 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:04:06,714 INFO L420 AbstractCegarLoop]: === Iteration 44 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:04:06,714 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:04:06,714 INFO L85 PathProgramCache]: Analyzing trace with hash 1720519159, now seen corresponding path program 9 times [2022-04-28 06:04:06,714 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:06,714 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [368717446] [2022-04-28 06:04:06,714 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:04:06,714 INFO L85 PathProgramCache]: Analyzing trace with hash 1720519159, now seen corresponding path program 10 times [2022-04-28 06:04:06,715 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:04:06,715 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1232873446] [2022-04-28 06:04:06,715 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:04:06,715 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms