/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_valuebound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:51:34,489 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:51:34,490 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:51:34,510 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:51:34,511 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:51:34,511 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:51:34,512 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:51:34,513 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:51:34,514 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:51:34,515 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:51:34,515 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:51:34,516 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:51:34,516 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:51:34,517 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:51:34,517 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:51:34,519 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:51:34,519 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:51:34,523 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:51:34,527 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:51:34,528 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:51:34,528 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:51:34,530 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:51:34,530 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:51:34,531 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:51:34,532 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:51:34,537 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:51:34,537 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:51:34,538 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:51:34,538 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:51:34,539 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:51:34,539 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:51:34,539 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:51:34,541 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:51:34,541 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:51:34,541 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:51:34,542 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:51:34,542 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:51:34,542 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:51:34,542 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:51:34,542 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:51:34,543 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:51:34,544 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:51:34,544 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:51:34,552 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:51:34,553 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:51:34,554 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:51:34,554 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:51:34,554 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:51:34,554 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:51:34,554 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:51:34,554 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:51:34,554 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:51:34,555 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:51:34,555 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:51:34,555 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:51:34,555 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:51:34,555 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:51:34,555 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:51:34,555 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:51:34,556 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:51:34,556 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:51:34,556 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:51:34,725 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:51:34,737 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:51:34,739 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:51:34,739 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:51:34,751 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:51:34,752 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound10.c [2022-04-28 05:51:34,794 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/32aa3f6a2/431f6d1a101742379720b50d8dc8acfb/FLAG0f3d19c48 [2022-04-28 05:51:35,105 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:51:35,105 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound10.c [2022-04-28 05:51:35,110 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/32aa3f6a2/431f6d1a101742379720b50d8dc8acfb/FLAG0f3d19c48 [2022-04-28 05:51:35,554 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/32aa3f6a2/431f6d1a101742379720b50d8dc8acfb [2022-04-28 05:51:35,556 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:51:35,557 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:51:35,559 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:51:35,559 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:51:35,562 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:51:35,562 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,564 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@78412138 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35, skipping insertion in model container [2022-04-28 05:51:35,564 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,568 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:51:35,579 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:51:35,684 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_valuebound10.c[490,503] [2022-04-28 05:51:35,697 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:51:35,702 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:51:35,711 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_valuebound10.c[490,503] [2022-04-28 05:51:35,719 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:51:35,726 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:51:35,727 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35 WrapperNode [2022-04-28 05:51:35,727 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:51:35,727 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:51:35,728 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:51:35,728 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:51:35,745 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,746 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,750 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,750 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,756 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,760 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,760 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,762 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:51:35,762 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:51:35,762 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:51:35,762 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:51:35,763 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (1/1) ... [2022-04-28 05:51:35,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:51:35,779 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:35,804 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:51:35,809 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:51:35,836 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:51:35,836 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:51:35,836 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:51:35,837 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:51:35,837 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:51:35,837 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:51:35,837 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:51:35,837 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:51:35,837 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:51:35,838 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:51:35,838 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:51:35,838 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:51:35,839 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:51:35,840 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:51:35,840 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:51:35,840 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:51:35,840 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:51:35,840 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:51:35,840 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:51:35,840 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:51:35,887 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:51:35,889 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:51:36,093 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:51:36,097 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:51:36,098 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 05:51:36,099 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:51:36 BoogieIcfgContainer [2022-04-28 05:51:36,099 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:51:36,100 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:51:36,100 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:51:36,107 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:51:36,108 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:51:35" (1/3) ... [2022-04-28 05:51:36,108 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2cd6f13d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:51:36, skipping insertion in model container [2022-04-28 05:51:36,108 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:51:35" (2/3) ... [2022-04-28 05:51:36,109 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2cd6f13d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:51:36, skipping insertion in model container [2022-04-28 05:51:36,109 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:51:36" (3/3) ... [2022-04-28 05:51:36,112 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_valuebound10.c [2022-04-28 05:51:36,121 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:51:36,122 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:51:36,162 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:51:36,173 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@511e6f50, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@79a16e1c [2022-04-28 05:51:36,173 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:51:36,183 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:51:36,188 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 05:51:36,188 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:36,189 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:36,189 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:36,192 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:36,192 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 1 times [2022-04-28 05:51:36,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:36,198 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [762422735] [2022-04-28 05:51:36,207 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:36,207 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 2 times [2022-04-28 05:51:36,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:36,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [479799396] [2022-04-28 05:51:36,209 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:36,210 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:36,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:36,334 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:51:36,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:36,361 INFO L290 TraceCheckUtils]: 0: Hoare triple {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:51:36,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:51:36,362 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-28 05:51:36,362 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:51:36,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:36,368 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:51:36,372 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 05:51:36,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:36,380 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,380 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,381 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,381 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:51:36,381 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 05:51:36,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:36,386 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,386 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,387 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,387 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-28 05:51:36,387 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 05:51:36,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:36,393 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,394 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-28 05:51:36,395 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:51:36,396 INFO L290 TraceCheckUtils]: 1: Hoare triple {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:51:36,396 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:51:36,396 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-28 05:51:36,396 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-28 05:51:36,396 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-28 05:51:36,396 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:36,397 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,397 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,397 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,397 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:51:36,397 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-28 05:51:36,398 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:36,398 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,398 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,398 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,398 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:51:36,399 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:36,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,400 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,400 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-28 05:51:36,400 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:51:36,401 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:51:36,402 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:51:36,402 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:51:36,402 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-28 05:51:36,402 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-28 05:51:36,403 INFO L290 TraceCheckUtils]: 28: Hoare triple {44#false} assume false; {44#false} is VALID [2022-04-28 05:51:36,403 INFO L272 TraceCheckUtils]: 29: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-28 05:51:36,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:51:36,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:51:36,403 INFO L290 TraceCheckUtils]: 32: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:51:36,404 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:51:36,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:36,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [479799396] [2022-04-28 05:51:36,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [479799396] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:36,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:36,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:51:36,407 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:36,407 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [762422735] [2022-04-28 05:51:36,407 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [762422735] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:36,407 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:36,407 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:51:36,407 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1076895176] [2022-04-28 05:51:36,408 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:36,411 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 05:51:36,412 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:36,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:36,443 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:36,443 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:51:36,443 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:36,456 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:51:36,456 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:51:36,458 INFO L87 Difference]: Start difference. First operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:36,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:36,617 INFO L93 Difference]: Finished difference Result 73 states and 115 transitions. [2022-04-28 05:51:36,617 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:51:36,617 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 05:51:36,617 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:36,618 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:36,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-28 05:51:36,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:36,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-28 05:51:36,642 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 115 transitions. [2022-04-28 05:51:36,756 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:36,766 INFO L225 Difference]: With dead ends: 73 [2022-04-28 05:51:36,766 INFO L226 Difference]: Without dead ends: 35 [2022-04-28 05:51:36,768 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:51:36,770 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 24 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:36,771 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 43 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:36,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-28 05:51:36,819 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-28 05:51:36,820 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:36,820 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:36,821 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:36,821 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:36,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:36,828 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-28 05:51:36,828 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:51:36,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:36,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:36,829 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-28 05:51:36,829 INFO L87 Difference]: Start difference. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-28 05:51:36,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:36,833 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-28 05:51:36,833 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:51:36,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:36,834 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:36,834 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:36,834 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:36,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:51:36,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-28 05:51:36,842 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 33 [2022-04-28 05:51:36,842 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:36,842 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-28 05:51:36,842 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:36,843 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-28 05:51:36,899 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:36,899 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-28 05:51:36,901 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 05:51:36,901 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:36,901 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:36,901 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:51:36,902 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:36,902 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:36,902 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 1 times [2022-04-28 05:51:36,902 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:36,902 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1782921755] [2022-04-28 05:51:36,903 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:36,903 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 2 times [2022-04-28 05:51:36,903 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:36,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [785747887] [2022-04-28 05:51:36,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:36,906 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:36,933 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:36,934 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [582711222] [2022-04-28 05:51:36,934 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:36,934 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:36,934 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:36,935 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:51:36,936 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:51:36,982 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:51:36,983 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:36,984 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:51:37,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:37,006 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:37,226 INFO L272 TraceCheckUtils]: 0: Hoare triple {353#true} call ULTIMATE.init(); {353#true} is VALID [2022-04-28 05:51:37,227 INFO L290 TraceCheckUtils]: 1: Hoare triple {353#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {353#true} is VALID [2022-04-28 05:51:37,227 INFO L290 TraceCheckUtils]: 2: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:37,227 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {353#true} {353#true} #112#return; {353#true} is VALID [2022-04-28 05:51:37,227 INFO L272 TraceCheckUtils]: 4: Hoare triple {353#true} call #t~ret6 := main(); {353#true} is VALID [2022-04-28 05:51:37,227 INFO L290 TraceCheckUtils]: 5: Hoare triple {353#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {353#true} is VALID [2022-04-28 05:51:37,227 INFO L272 TraceCheckUtils]: 6: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:37,227 INFO L290 TraceCheckUtils]: 7: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:37,228 INFO L290 TraceCheckUtils]: 8: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:37,228 INFO L290 TraceCheckUtils]: 9: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:37,228 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {353#true} {353#true} #94#return; {353#true} is VALID [2022-04-28 05:51:37,228 INFO L290 TraceCheckUtils]: 11: Hoare triple {353#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {353#true} is VALID [2022-04-28 05:51:37,228 INFO L272 TraceCheckUtils]: 12: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:37,228 INFO L290 TraceCheckUtils]: 13: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:37,228 INFO L290 TraceCheckUtils]: 14: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:37,228 INFO L290 TraceCheckUtils]: 15: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:37,229 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {353#true} {353#true} #96#return; {353#true} is VALID [2022-04-28 05:51:37,229 INFO L272 TraceCheckUtils]: 17: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:37,229 INFO L290 TraceCheckUtils]: 18: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:37,229 INFO L290 TraceCheckUtils]: 19: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:37,229 INFO L290 TraceCheckUtils]: 20: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:37,229 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {353#true} {353#true} #98#return; {353#true} is VALID [2022-04-28 05:51:37,229 INFO L272 TraceCheckUtils]: 22: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-28 05:51:37,229 INFO L290 TraceCheckUtils]: 23: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-28 05:51:37,230 INFO L290 TraceCheckUtils]: 24: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-28 05:51:37,230 INFO L290 TraceCheckUtils]: 25: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-28 05:51:37,230 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {353#true} {353#true} #100#return; {353#true} is VALID [2022-04-28 05:51:37,230 INFO L290 TraceCheckUtils]: 27: Hoare triple {353#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:37,231 INFO L290 TraceCheckUtils]: 28: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:37,231 INFO L290 TraceCheckUtils]: 29: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:37,232 INFO L272 TraceCheckUtils]: 30: Hoare triple {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {450#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:37,233 INFO L290 TraceCheckUtils]: 31: Hoare triple {450#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {454#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:37,233 INFO L290 TraceCheckUtils]: 32: Hoare triple {454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {354#false} is VALID [2022-04-28 05:51:37,233 INFO L290 TraceCheckUtils]: 33: Hoare triple {354#false} assume !false; {354#false} is VALID [2022-04-28 05:51:37,233 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:51:37,233 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:37,234 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:37,234 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [785747887] [2022-04-28 05:51:37,234 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:37,234 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [582711222] [2022-04-28 05:51:37,234 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [582711222] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:37,234 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:37,234 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:37,235 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:37,235 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1782921755] [2022-04-28 05:51:37,235 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1782921755] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:37,235 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:37,235 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:51:37,235 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [70017626] [2022-04-28 05:51:37,235 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:37,236 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-28 05:51:37,236 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:37,236 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:37,253 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:37,253 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:51:37,257 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:37,258 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:51:37,259 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:37,260 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:37,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:37,520 INFO L93 Difference]: Finished difference Result 54 states and 69 transitions. [2022-04-28 05:51:37,520 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:51:37,521 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-28 05:51:37,521 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:37,522 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:37,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:51:37,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:37,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:51:37,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-28 05:51:37,581 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:37,584 INFO L225 Difference]: With dead ends: 54 [2022-04-28 05:51:37,584 INFO L226 Difference]: Without dead ends: 51 [2022-04-28 05:51:37,585 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:51:37,587 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 14 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:37,590 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 158 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:37,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-28 05:51:37,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-28 05:51:37,605 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:37,606 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:37,608 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:37,608 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:37,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:37,616 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-28 05:51:37,616 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-28 05:51:37,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:37,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:37,622 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-28 05:51:37,622 INFO L87 Difference]: Start difference. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-28 05:51:37,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:37,629 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-28 05:51:37,629 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-28 05:51:37,630 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:37,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:37,630 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:37,630 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:37,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:51:37,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2022-04-28 05:51:37,635 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 34 [2022-04-28 05:51:37,635 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:37,635 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2022-04-28 05:51:37,635 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:51:37,635 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 64 transitions. [2022-04-28 05:51:37,688 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:51:37,688 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-28 05:51:37,689 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 05:51:37,689 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:37,690 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:37,708 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:51:37,906 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:51:37,906 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:37,906 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:37,906 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 1 times [2022-04-28 05:51:37,907 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:37,907 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2119343342] [2022-04-28 05:51:37,907 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:37,907 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 2 times [2022-04-28 05:51:37,907 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:37,907 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [154106838] [2022-04-28 05:51:37,907 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:37,908 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:37,947 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:37,947 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1495217189] [2022-04-28 05:51:37,947 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:37,947 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:37,947 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:37,948 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:51:37,949 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:51:37,986 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:37,986 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:37,987 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:51:37,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:37,999 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:38,160 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-28 05:51:38,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-28 05:51:38,160 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,160 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-28 05:51:38,161 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-28 05:51:38,161 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-28 05:51:38,161 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,161 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:38,161 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:38,161 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,161 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-28 05:51:38,163 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-28 05:51:38,164 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,164 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:38,165 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:38,166 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,166 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-28 05:51:38,166 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,166 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:38,167 INFO L290 TraceCheckUtils]: 19: Hoare triple {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:38,168 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:38,171 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:38,171 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,171 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:38,171 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:38,171 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,174 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:38,174 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:38,175 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:38,176 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:38,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:38,178 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:38,178 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:38,188 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:38,189 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-28 05:51:38,189 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-28 05:51:38,189 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-28 05:51:38,189 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-28 05:51:38,189 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-28 05:51:38,189 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 05:51:38,190 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:38,406 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-28 05:51:38,407 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-28 05:51:38,407 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-28 05:51:38,407 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-28 05:51:38,407 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-28 05:51:38,407 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:38,409 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:38,409 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:38,412 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:38,414 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:51:38,414 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:38,414 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-28 05:51:38,415 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:38,415 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,415 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:38,415 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:38,415 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,416 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-28 05:51:38,416 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:38,417 INFO L290 TraceCheckUtils]: 19: Hoare triple {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:38,417 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:51:38,417 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,417 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-28 05:51:38,417 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,417 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:38,417 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:38,417 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,418 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-28 05:51:38,418 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-28 05:51:38,418 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,418 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 05:51:38,418 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 05:51:38,418 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {774#true} is VALID [2022-04-28 05:51:38,418 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-28 05:51:38,418 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-28 05:51:38,418 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-28 05:51:38,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 05:51:38,418 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-28 05:51:38,419 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-28 05:51:38,419 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 05:51:38,419 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:38,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [154106838] [2022-04-28 05:51:38,419 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:38,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1495217189] [2022-04-28 05:51:38,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1495217189] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:38,419 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:38,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:51:38,419 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:38,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2119343342] [2022-04-28 05:51:38,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2119343342] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:38,420 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:38,420 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:38,420 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1781722306] [2022-04-28 05:51:38,420 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:38,420 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:51:38,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:38,421 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:38,440 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:51:38,440 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:38,440 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:38,440 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:38,440 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:51:38,441 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:39,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:39,003 INFO L93 Difference]: Finished difference Result 103 states and 143 transitions. [2022-04-28 05:51:39,003 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:51:39,003 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:51:39,004 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:39,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:39,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-28 05:51:39,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:39,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-28 05:51:39,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-28 05:51:39,083 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:39,085 INFO L225 Difference]: With dead ends: 103 [2022-04-28 05:51:39,085 INFO L226 Difference]: Without dead ends: 96 [2022-04-28 05:51:39,085 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:39,086 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 68 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 232 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:39,086 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 232 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:39,087 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-28 05:51:39,148 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 71. [2022-04-28 05:51:39,148 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:39,148 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:39,149 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:39,149 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:39,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:39,153 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-28 05:51:39,153 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-28 05:51:39,153 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:39,153 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:39,153 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-28 05:51:39,154 INFO L87 Difference]: Start difference. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-28 05:51:39,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:39,157 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-28 05:51:39,157 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-28 05:51:39,157 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:39,157 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:39,157 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:39,157 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:39,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-28 05:51:39,160 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 95 transitions. [2022-04-28 05:51:39,160 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 95 transitions. Word has length 39 [2022-04-28 05:51:39,160 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:39,160 INFO L495 AbstractCegarLoop]: Abstraction has 71 states and 95 transitions. [2022-04-28 05:51:39,160 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:39,160 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 95 transitions. [2022-04-28 05:51:39,245 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:39,245 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 95 transitions. [2022-04-28 05:51:39,246 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-28 05:51:39,246 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:39,246 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:39,271 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:51:39,464 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:51:39,464 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:39,464 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:39,464 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 1 times [2022-04-28 05:51:39,465 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:39,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [834276380] [2022-04-28 05:51:39,465 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:39,465 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 2 times [2022-04-28 05:51:39,465 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:39,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1881720410] [2022-04-28 05:51:39,465 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:39,465 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:39,479 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:39,480 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1002539916] [2022-04-28 05:51:39,480 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:39,480 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:39,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:39,481 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:51:39,482 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:51:39,522 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:39,522 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:39,523 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-28 05:51:39,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:39,538 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:40,039 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:40,039 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:40,040 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,040 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-28 05:51:40,040 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-28 05:51:40,040 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,040 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:40,040 INFO L290 TraceCheckUtils]: 14: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:40,041 INFO L290 TraceCheckUtils]: 15: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:40,042 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1566#true} #96#return; {1621#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:40,042 INFO L272 TraceCheckUtils]: 17: Hoare triple {1621#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,042 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:40,043 INFO L290 TraceCheckUtils]: 19: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:40,043 INFO L290 TraceCheckUtils]: 20: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:40,047 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1621#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #98#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:40,047 INFO L272 TraceCheckUtils]: 22: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,047 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:40,047 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:40,048 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,048 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} #100#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:40,048 INFO L290 TraceCheckUtils]: 27: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:40,049 INFO L290 TraceCheckUtils]: 28: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:40,049 INFO L290 TraceCheckUtils]: 29: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 05:51:40,050 INFO L290 TraceCheckUtils]: 30: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 05:51:40,050 INFO L290 TraceCheckUtils]: 31: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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); {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 05:51:40,051 INFO L290 TraceCheckUtils]: 32: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 05:51:40,051 INFO L290 TraceCheckUtils]: 33: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 05:51:40,055 INFO L290 TraceCheckUtils]: 34: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 05:51:40,055 INFO L290 TraceCheckUtils]: 35: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= 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 05:51:40,056 INFO L290 TraceCheckUtils]: 36: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~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; {1687#(and (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0))} is VALID [2022-04-28 05:51:40,056 INFO L290 TraceCheckUtils]: 37: Hoare triple {1687#(and (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0))} assume !false; {1687#(and (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0))} is VALID [2022-04-28 05:51:40,057 INFO L272 TraceCheckUtils]: 38: Hoare triple {1687#(and (<= 1 main_~x~0) (<= main_~y~0 10) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:40,057 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:40,057 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-28 05:51:40,058 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-28 05:51:40,058 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 6 proven. 10 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 05:51:40,058 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:40,414 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-28 05:51:40,414 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-28 05:51:40,415 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:40,415 INFO L272 TraceCheckUtils]: 38: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:40,416 INFO L290 TraceCheckUtils]: 37: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:40,416 INFO L290 TraceCheckUtils]: 36: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:40,416 INFO L290 TraceCheckUtils]: 35: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:51:40,417 INFO L290 TraceCheckUtils]: 34: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:51:40,417 INFO L290 TraceCheckUtils]: 33: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:40,418 INFO L290 TraceCheckUtils]: 32: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:40,418 INFO L290 TraceCheckUtils]: 31: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:40,419 INFO L290 TraceCheckUtils]: 30: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:40,419 INFO L290 TraceCheckUtils]: 29: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:40,420 INFO L290 TraceCheckUtils]: 28: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !false; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-28 05:51:40,420 INFO L290 TraceCheckUtils]: 27: Hoare triple {1566#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-28 05:51:40,420 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1566#true} #100#return; {1566#true} is VALID [2022-04-28 05:51:40,420 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,420 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:40,420 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:40,420 INFO L272 TraceCheckUtils]: 22: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1566#true} {1566#true} #98#return; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 20: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 19: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L272 TraceCheckUtils]: 17: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1566#true} {1566#true} #96#return; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 15: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 14: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-28 05:51:40,421 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-28 05:51:40,422 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:51:40,423 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:40,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1881720410] [2022-04-28 05:51:40,423 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:40,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1002539916] [2022-04-28 05:51:40,423 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1002539916] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:40,423 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:40,423 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 18 [2022-04-28 05:51:40,423 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:40,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [834276380] [2022-04-28 05:51:40,423 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [834276380] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:40,423 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:40,423 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:51:40,423 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [478167122] [2022-04-28 05:51:40,423 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:40,424 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-28 05:51:40,424 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:40,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:40,447 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:51:40,447 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:51:40,447 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:40,448 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:51:40,448 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:51:40,448 INFO L87 Difference]: Start difference. First operand 71 states and 95 transitions. Second operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:41,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,699 INFO L93 Difference]: Finished difference Result 112 states and 151 transitions. [2022-04-28 05:51:41,699 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:51:41,699 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-28 05:51:41,700 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:41,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:41,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-28 05:51:41,702 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:41,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-28 05:51:41,704 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 117 transitions. [2022-04-28 05:51:41,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:41,803 INFO L225 Difference]: With dead ends: 112 [2022-04-28 05:51:41,803 INFO L226 Difference]: Without dead ends: 110 [2022-04-28 05:51:41,804 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 66 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 81 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=96, Invalid=410, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:51:41,804 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 89 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 358 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 414 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 358 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:41,804 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [98 Valid, 245 Invalid, 414 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 358 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:51:41,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-28 05:51:41,966 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 93. [2022-04-28 05:51:41,966 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:41,967 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:41,967 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:41,967 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:41,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,971 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-28 05:51:41,972 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-28 05:51:41,972 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:41,972 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:41,972 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-28 05:51:41,973 INFO L87 Difference]: Start difference. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-28 05:51:41,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,976 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-28 05:51:41,976 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-28 05:51:41,977 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:41,977 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:41,977 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:41,977 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:41,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-28 05:51:41,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 122 transitions. [2022-04-28 05:51:41,980 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 122 transitions. Word has length 42 [2022-04-28 05:51:41,980 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:41,980 INFO L495 AbstractCegarLoop]: Abstraction has 93 states and 122 transitions. [2022-04-28 05:51:41,980 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 05:51:41,980 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 93 states and 122 transitions. [2022-04-28 05:51:42,113 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:51:42,113 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 122 transitions. [2022-04-28 05:51:42,113 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:51:42,113 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:42,114 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:42,130 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:51:42,329 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:51:42,329 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:42,330 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:42,330 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 1 times [2022-04-28 05:51:42,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:42,330 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1210178820] [2022-04-28 05:51:42,330 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:42,330 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 2 times [2022-04-28 05:51:42,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:42,331 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [36987867] [2022-04-28 05:51:42,331 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:42,331 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:42,349 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:42,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1935138775] [2022-04-28 05:51:42,349 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:42,349 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:42,349 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:42,350 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:51:42,351 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:51:42,388 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:42,388 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:42,389 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:51:42,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:42,401 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:42,654 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-28 05:51:42,654 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-28 05:51:42,655 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,656 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:42,657 INFO L290 TraceCheckUtils]: 14: Hoare triple {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:42,657 INFO L290 TraceCheckUtils]: 15: Hoare triple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:42,657 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} {2475#true} #96#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:42,657 INFO L272 TraceCheckUtils]: 17: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,658 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,658 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,658 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #98#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:42,658 INFO L272 TraceCheckUtils]: 22: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,658 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,658 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,658 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,659 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #100#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:42,659 INFO L290 TraceCheckUtils]: 27: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 10))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2564#(<= 0 main_~b~0)} is VALID [2022-04-28 05:51:42,659 INFO L290 TraceCheckUtils]: 28: Hoare triple {2564#(<= 0 main_~b~0)} assume !false; {2564#(<= 0 main_~b~0)} is VALID [2022-04-28 05:51:42,660 INFO L290 TraceCheckUtils]: 29: Hoare triple {2564#(<= 0 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:42,660 INFO L290 TraceCheckUtils]: 30: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:42,661 INFO L290 TraceCheckUtils]: 31: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:42,661 INFO L290 TraceCheckUtils]: 32: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:42,661 INFO L272 TraceCheckUtils]: 33: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,661 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,661 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,661 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,662 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:42,662 INFO L272 TraceCheckUtils]: 38: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,662 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,662 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,662 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,663 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 05:51:42,663 INFO L272 TraceCheckUtils]: 43: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:42,663 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:42,664 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-28 05:51:42,664 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-28 05:51:42,664 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 7 proven. 6 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:51:42,664 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:42,858 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-28 05:51:42,859 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-28 05:51:42,859 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:42,860 INFO L272 TraceCheckUtils]: 43: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:42,860 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #104#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:42,861 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,861 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,861 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,861 INFO L272 TraceCheckUtils]: 38: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,861 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #102#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:42,861 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,861 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,862 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,862 INFO L272 TraceCheckUtils]: 33: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,862 INFO L290 TraceCheckUtils]: 32: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:42,863 INFO L290 TraceCheckUtils]: 31: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:42,863 INFO L290 TraceCheckUtils]: 30: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:42,863 INFO L290 TraceCheckUtils]: 29: Hoare triple {2475#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:51:42,863 INFO L290 TraceCheckUtils]: 28: Hoare triple {2475#true} assume !false; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 27: Hoare triple {2475#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2475#true} #100#return; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L272 TraceCheckUtils]: 22: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2475#true} #98#return; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L272 TraceCheckUtils]: 17: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2475#true} {2475#true} #96#return; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 15: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,864 INFO L290 TraceCheckUtils]: 14: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-28 05:51:42,865 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-28 05:51:42,866 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:42,866 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:42,866 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [36987867] [2022-04-28 05:51:42,866 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:42,866 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1935138775] [2022-04-28 05:51:42,866 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1935138775] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:51:42,866 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:51:42,866 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-28 05:51:42,866 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:42,866 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1210178820] [2022-04-28 05:51:42,866 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1210178820] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:42,866 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:42,867 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:42,867 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [84506409] [2022-04-28 05:51:42,867 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:42,867 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-28 05:51:42,867 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:42,867 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:42,889 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:42,889 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:42,889 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:42,889 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:42,889 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:51:42,890 INFO L87 Difference]: Start difference. First operand 93 states and 122 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:43,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:43,267 INFO L93 Difference]: Finished difference Result 130 states and 179 transitions. [2022-04-28 05:51:43,267 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:43,267 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-28 05:51:43,268 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:43,268 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:43,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:51:43,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:43,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:51:43,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:51:43,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:43,316 INFO L225 Difference]: With dead ends: 130 [2022-04-28 05:51:43,316 INFO L226 Difference]: Without dead ends: 128 [2022-04-28 05:51:43,316 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:51:43,319 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 8 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:43,319 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 141 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:43,320 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-28 05:51:43,550 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 123. [2022-04-28 05:51:43,550 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:43,550 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:43,550 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:43,551 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:43,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:43,554 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-28 05:51:43,554 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-28 05:51:43,555 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:43,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:43,555 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-28 05:51:43,555 INFO L87 Difference]: Start difference. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-28 05:51:43,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:43,559 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-28 05:51:43,559 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-28 05:51:43,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:43,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:43,559 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:43,559 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:43,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:51:43,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 172 transitions. [2022-04-28 05:51:43,563 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 172 transitions. Word has length 47 [2022-04-28 05:51:43,563 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:43,563 INFO L495 AbstractCegarLoop]: Abstraction has 123 states and 172 transitions. [2022-04-28 05:51:43,563 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:43,563 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 123 states and 172 transitions. [2022-04-28 05:51:43,747 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:51:43,747 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 172 transitions. [2022-04-28 05:51:43,747 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:51:43,747 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:43,747 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:43,766 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:51:43,963 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:51:43,963 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:43,964 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:43,964 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 1 times [2022-04-28 05:51:43,964 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:43,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2035464214] [2022-04-28 05:51:43,964 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:43,964 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 2 times [2022-04-28 05:51:43,964 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:43,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1977853789] [2022-04-28 05:51:43,964 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:43,964 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:43,991 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:43,992 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [666512991] [2022-04-28 05:51:43,992 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:43,992 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:43,992 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:43,994 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:51:43,995 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:51:44,031 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:44,031 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:44,032 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-28 05:51:44,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,046 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:53,955 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-28 05:51:53,955 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-28 05:51:53,955 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:53,955 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-28 05:51:53,955 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-28 05:51:53,955 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-28 05:51:53,955 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:53,956 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:51:53,956 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:51:53,956 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:53,956 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-28 05:51:53,956 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-28 05:51:53,956 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:53,956 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:53,957 INFO L290 TraceCheckUtils]: 14: Hoare triple {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:53,957 INFO L290 TraceCheckUtils]: 15: Hoare triple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:53,957 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} {3530#true} #96#return; {3585#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:53,958 INFO L272 TraceCheckUtils]: 17: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:53,958 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:51:53,958 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:51:53,958 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:53,958 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #98#return; {3585#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-28 05:51:53,958 INFO L272 TraceCheckUtils]: 22: Hoare triple {3585#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:51:53,959 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:53,959 INFO L290 TraceCheckUtils]: 24: Hoare triple {3574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:53,959 INFO L290 TraceCheckUtils]: 25: Hoare triple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:53,960 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3578#(not (= |assume_abort_if_not_#in~cond| 0))} {3585#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #100#return; {3616#(and (<= main_~y~0 10) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,960 INFO L290 TraceCheckUtils]: 27: Hoare triple {3616#(and (<= main_~y~0 10) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3620#(and (= main_~r~0 0) (<= main_~y~0 10) (= 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:53,961 INFO L290 TraceCheckUtils]: 28: Hoare triple {3620#(and (= main_~r~0 0) (<= main_~y~0 10) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3620#(and (= main_~r~0 0) (<= main_~y~0 10) (= 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:53,961 INFO L290 TraceCheckUtils]: 29: Hoare triple {3620#(and (= main_~r~0 0) (<= main_~y~0 10) (= 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; {3627#(and (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= 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:53,962 INFO L290 TraceCheckUtils]: 30: Hoare triple {3627#(and (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3627#(and (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= 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:53,962 INFO L290 TraceCheckUtils]: 31: Hoare triple {3627#(and (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3627#(and (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= 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:53,963 INFO L290 TraceCheckUtils]: 32: Hoare triple {3627#(and (= main_~r~0 0) (<= main_~y~0 10) (= main_~k~0 0) (= 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; {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,982 INFO L290 TraceCheckUtils]: 33: Hoare triple {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,984 INFO L290 TraceCheckUtils]: 34: Hoare triple {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= 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; {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,984 INFO L290 TraceCheckUtils]: 35: Hoare triple {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,985 INFO L290 TraceCheckUtils]: 36: Hoare triple {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= 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; {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,985 INFO L290 TraceCheckUtils]: 37: Hoare triple {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,992 INFO L272 TraceCheckUtils]: 38: Hoare triple {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= 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)); {3530#true} is VALID [2022-04-28 05:51:53,992 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:51:53,992 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:51:53,992 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:51:53,995 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #102#return; {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:51:53,996 INFO L272 TraceCheckUtils]: 43: Hoare triple {3637#(and (= main_~s~0 0) (<= main_~y~0 10) (= 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)); {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:53,996 INFO L290 TraceCheckUtils]: 44: Hoare triple {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3675#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:53,996 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-28 05:51:53,996 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-28 05:51:53,997 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 11 proven. 7 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 05:51:53,997 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:18,685 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-28 05:53:18,686 INFO L290 TraceCheckUtils]: 45: Hoare triple {3675#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-28 05:53:18,686 INFO L290 TraceCheckUtils]: 44: Hoare triple {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3675#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:18,687 INFO L272 TraceCheckUtils]: 43: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3671#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:18,688 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:18,688 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:18,688 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:18,688 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:18,691 INFO L272 TraceCheckUtils]: 38: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:18,691 INFO L290 TraceCheckUtils]: 37: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:18,692 INFO L290 TraceCheckUtils]: 36: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:18,692 INFO L290 TraceCheckUtils]: 35: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:18,692 INFO L290 TraceCheckUtils]: 34: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:18,693 INFO L290 TraceCheckUtils]: 33: Hoare triple {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:20,694 WARN L290 TraceCheckUtils]: 32: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3691#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 05:53:20,694 INFO L290 TraceCheckUtils]: 31: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !(~c~0 >= ~b~0); {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 05:53:20,695 INFO L290 TraceCheckUtils]: 30: Hoare triple {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !false; {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 05:53:20,696 INFO L290 TraceCheckUtils]: 29: Hoare triple {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3725#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 05:53:20,696 INFO L290 TraceCheckUtils]: 28: Hoare triple {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:20,696 INFO L290 TraceCheckUtils]: 27: Hoare triple {3530#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3735#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:20,696 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-28 05:53:20,696 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:20,696 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L272 TraceCheckUtils]: 22: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L272 TraceCheckUtils]: 17: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:20,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-28 05:53:20,698 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:53:20,698 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:20,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1977853789] [2022-04-28 05:53:20,698 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:20,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [666512991] [2022-04-28 05:53:20,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [666512991] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:20,699 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:20,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-28 05:53:20,699 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:20,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2035464214] [2022-04-28 05:53:20,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2035464214] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:20,699 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:20,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:53:20,699 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1410552934] [2022-04-28 05:53:20,699 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:20,700 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-28 05:53:20,700 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:20,700 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:20,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:20,728 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:53:20,728 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:20,729 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:53:20,729 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:53:20,729 INFO L87 Difference]: Start difference. First operand 123 states and 172 transitions. Second operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:21,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:21,667 INFO L93 Difference]: Finished difference Result 137 states and 184 transitions. [2022-04-28 05:53:21,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:53:21,667 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-28 05:53:21,667 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:21,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:21,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-28 05:53:21,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:21,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 101 transitions. [2022-04-28 05:53:21,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 101 transitions. [2022-04-28 05:53:21,750 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:21,753 INFO L225 Difference]: With dead ends: 137 [2022-04-28 05:53:21,753 INFO L226 Difference]: Without dead ends: 135 [2022-04-28 05:53:21,753 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:53:21,754 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 58 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 253 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 231 SdHoareTripleChecker+Invalid, 280 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 253 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:21,754 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [70 Valid, 231 Invalid, 280 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 253 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:53:21,754 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-04-28 05:53:21,992 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 131. [2022-04-28 05:53:21,992 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:21,993 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:21,993 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:21,993 INFO L87 Difference]: Start difference. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:21,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:21,998 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-28 05:53:21,998 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-28 05:53:22,010 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:22,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:22,010 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-28 05:53:22,011 INFO L87 Difference]: Start difference. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-28 05:53:22,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:22,014 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-28 05:53:22,014 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-28 05:53:22,014 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:22,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:22,015 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:22,015 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:22,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 05:53:22,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 178 transitions. [2022-04-28 05:53:22,019 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 178 transitions. Word has length 47 [2022-04-28 05:53:22,019 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:22,019 INFO L495 AbstractCegarLoop]: Abstraction has 131 states and 178 transitions. [2022-04-28 05:53:22,019 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 05:53:22,019 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 178 transitions. [2022-04-28 05:53:22,213 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:22,213 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 178 transitions. [2022-04-28 05:53:22,213 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:53:22,213 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:22,214 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:22,229 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:53:22,423 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:53:22,423 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:22,424 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:22,424 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 3 times [2022-04-28 05:53:22,424 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:22,424 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [798182870] [2022-04-28 05:53:22,424 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:22,424 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 4 times [2022-04-28 05:53:22,424 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:22,424 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1494498025] [2022-04-28 05:53:22,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:22,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:22,438 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:22,438 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2106627250] [2022-04-28 05:53:22,438 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:22,438 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:22,438 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:22,439 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:53:22,458 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:53:22,491 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:22,491 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:22,491 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:53:22,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:22,502 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:22,595 INFO L272 TraceCheckUtils]: 0: Hoare triple {4637#true} call ULTIMATE.init(); {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L290 TraceCheckUtils]: 1: Hoare triple {4637#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L290 TraceCheckUtils]: 2: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4637#true} {4637#true} #112#return; {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L272 TraceCheckUtils]: 4: Hoare triple {4637#true} call #t~ret6 := main(); {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L290 TraceCheckUtils]: 5: Hoare triple {4637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L272 TraceCheckUtils]: 6: Hoare triple {4637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L290 TraceCheckUtils]: 7: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:22,595 INFO L290 TraceCheckUtils]: 8: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 9: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4637#true} {4637#true} #94#return; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 11: Hoare triple {4637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L272 TraceCheckUtils]: 12: Hoare triple {4637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 13: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 14: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 15: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4637#true} {4637#true} #96#return; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L272 TraceCheckUtils]: 17: Hoare triple {4637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 18: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 19: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 20: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4637#true} {4637#true} #98#return; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L272 TraceCheckUtils]: 22: Hoare triple {4637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 23: Hoare triple {4637#true} ~cond := #in~cond; {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 24: Hoare triple {4637#true} assume !(0 == ~cond); {4637#true} is VALID [2022-04-28 05:53:22,596 INFO L290 TraceCheckUtils]: 25: Hoare triple {4637#true} assume true; {4637#true} is VALID [2022-04-28 05:53:22,597 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4637#true} {4637#true} #100#return; {4637#true} is VALID [2022-04-28 05:53:22,597 INFO L290 TraceCheckUtils]: 27: Hoare triple {4637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4637#true} is VALID [2022-04-28 05:53:22,597 INFO L290 TraceCheckUtils]: 28: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-28 05:53:22,597 INFO L290 TraceCheckUtils]: 29: Hoare triple {4637#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4637#true} is VALID [2022-04-28 05:53:22,597 INFO L290 TraceCheckUtils]: 30: Hoare triple {4637#true} assume !false; {4637#true} is VALID [2022-04-28 05:53:22,597 INFO L290 TraceCheckUtils]: 31: Hoare triple {4637#true} assume !(~c~0 >= ~b~0); {4735#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:53:22,597 INFO L290 TraceCheckUtils]: 32: Hoare triple {4735#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4739#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:22,598 INFO L290 TraceCheckUtils]: 33: Hoare triple {4739#(< main_~b~0 main_~a~0)} assume !false; {4739#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:22,598 INFO L290 TraceCheckUtils]: 34: Hoare triple {4739#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4746#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:22,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {4746#(< main_~b~0 main_~c~0)} assume !false; {4746#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 36: Hoare triple {4746#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 37: Hoare triple {4638#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 38: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 39: Hoare triple {4638#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 40: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 41: Hoare triple {4638#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 42: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L272 TraceCheckUtils]: 43: Hoare triple {4638#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 44: Hoare triple {4638#false} ~cond := #in~cond; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 45: Hoare triple {4638#false} assume 0 == ~cond; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L290 TraceCheckUtils]: 46: Hoare triple {4638#false} assume !false; {4638#false} is VALID [2022-04-28 05:53:22,599 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 05:53:22,600 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:53:22,600 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:22,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1494498025] [2022-04-28 05:53:22,600 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:22,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2106627250] [2022-04-28 05:53:22,600 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2106627250] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:22,600 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:22,600 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:22,600 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:22,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [798182870] [2022-04-28 05:53:22,600 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [798182870] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:22,600 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:22,600 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:22,600 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [487128363] [2022-04-28 05:53:22,600 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:22,602 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-28 05:53:22,602 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:22,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:22,622 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:53:22,622 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:53:22,622 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:22,622 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:53:22,622 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:53:22,622 INFO L87 Difference]: Start difference. First operand 131 states and 178 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:23,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:23,094 INFO L93 Difference]: Finished difference Result 170 states and 230 transitions. [2022-04-28 05:53:23,094 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:53:23,094 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-28 05:53:23,094 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:23,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:23,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-28 05:53:23,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:23,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-28 05:53:23,097 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 102 transitions. [2022-04-28 05:53:23,170 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:23,172 INFO L225 Difference]: With dead ends: 170 [2022-04-28 05:53:23,172 INFO L226 Difference]: Without dead ends: 114 [2022-04-28 05:53:23,172 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:53:23,173 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 18 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:23,173 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 155 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:53:23,173 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-04-28 05:53:23,386 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 106. [2022-04-28 05:53:23,386 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:23,386 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:23,387 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:23,387 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:23,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:23,390 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-28 05:53:23,391 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-28 05:53:23,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:23,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:23,391 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-28 05:53:23,391 INFO L87 Difference]: Start difference. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-28 05:53:23,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:23,394 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-28 05:53:23,394 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-28 05:53:23,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:23,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:23,395 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:23,395 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:23,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-28 05:53:23,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 137 transitions. [2022-04-28 05:53:23,398 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 137 transitions. Word has length 47 [2022-04-28 05:53:23,398 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:23,398 INFO L495 AbstractCegarLoop]: Abstraction has 106 states and 137 transitions. [2022-04-28 05:53:23,398 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 05:53:23,398 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 137 transitions. [2022-04-28 05:53:23,573 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:23,573 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 137 transitions. [2022-04-28 05:53:23,574 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 05:53:23,574 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:23,574 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:23,590 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:53:23,783 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:53:23,783 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:23,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:23,784 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 1 times [2022-04-28 05:53:23,784 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:23,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1225762270] [2022-04-28 05:53:23,784 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:23,784 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 2 times [2022-04-28 05:53:23,784 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:23,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [872817455] [2022-04-28 05:53:23,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:23,785 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:23,795 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:23,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [105589871] [2022-04-28 05:53:23,796 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:23,796 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:23,796 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:23,797 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:53:23,798 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:53:23,831 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:23,832 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:23,837 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:53:23,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:23,845 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:23,949 INFO L272 TraceCheckUtils]: 0: Hoare triple {5567#true} call ULTIMATE.init(); {5567#true} is VALID [2022-04-28 05:53:23,949 INFO L290 TraceCheckUtils]: 1: Hoare triple {5567#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {5567#true} is VALID [2022-04-28 05:53:23,949 INFO L290 TraceCheckUtils]: 2: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,949 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5567#true} {5567#true} #112#return; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L272 TraceCheckUtils]: 4: Hoare triple {5567#true} call #t~ret6 := main(); {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 5: Hoare triple {5567#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L272 TraceCheckUtils]: 6: Hoare triple {5567#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 7: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 8: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 9: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5567#true} {5567#true} #94#return; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 11: Hoare triple {5567#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L272 TraceCheckUtils]: 12: Hoare triple {5567#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 13: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 14: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 15: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5567#true} {5567#true} #96#return; {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L272 TraceCheckUtils]: 17: Hoare triple {5567#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:23,950 INFO L290 TraceCheckUtils]: 18: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:23,951 INFO L290 TraceCheckUtils]: 19: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 20: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5567#true} {5567#true} #98#return; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L272 TraceCheckUtils]: 22: Hoare triple {5567#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 23: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 24: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 25: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5567#true} {5567#true} #100#return; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 27: Hoare triple {5567#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 28: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 29: Hoare triple {5567#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 30: Hoare triple {5567#true} assume !false; {5567#true} is VALID [2022-04-28 05:53:23,952 INFO L290 TraceCheckUtils]: 31: Hoare triple {5567#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:23,953 INFO L290 TraceCheckUtils]: 32: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:23,953 INFO L272 TraceCheckUtils]: 33: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:23,953 INFO L290 TraceCheckUtils]: 34: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:23,953 INFO L290 TraceCheckUtils]: 35: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:23,953 INFO L290 TraceCheckUtils]: 36: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,953 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:23,954 INFO L272 TraceCheckUtils]: 38: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:23,954 INFO L290 TraceCheckUtils]: 39: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:23,954 INFO L290 TraceCheckUtils]: 40: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:23,954 INFO L290 TraceCheckUtils]: 41: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,954 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:23,954 INFO L272 TraceCheckUtils]: 43: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5567#true} is VALID [2022-04-28 05:53:23,954 INFO L290 TraceCheckUtils]: 44: Hoare triple {5567#true} ~cond := #in~cond; {5567#true} is VALID [2022-04-28 05:53:23,954 INFO L290 TraceCheckUtils]: 45: Hoare triple {5567#true} assume !(0 == ~cond); {5567#true} is VALID [2022-04-28 05:53:23,954 INFO L290 TraceCheckUtils]: 46: Hoare triple {5567#true} assume true; {5567#true} is VALID [2022-04-28 05:53:23,955 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5567#true} {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:23,955 INFO L272 TraceCheckUtils]: 48: Hoare triple {5665#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {5717#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:23,955 INFO L290 TraceCheckUtils]: 49: Hoare triple {5717#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5721#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:23,956 INFO L290 TraceCheckUtils]: 50: Hoare triple {5721#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5568#false} is VALID [2022-04-28 05:53:23,956 INFO L290 TraceCheckUtils]: 51: Hoare triple {5568#false} assume !false; {5568#false} is VALID [2022-04-28 05:53:23,956 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 05:53:23,956 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:53:23,956 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:23,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [872817455] [2022-04-28 05:53:23,956 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:23,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [105589871] [2022-04-28 05:53:23,956 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [105589871] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:23,956 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:23,956 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:23,957 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:23,957 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1225762270] [2022-04-28 05:53:23,957 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1225762270] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:23,957 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:23,957 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:23,957 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2041650788] [2022-04-28 05:53:23,957 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:23,957 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-28 05:53:23,957 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:23,958 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:23,977 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:23,977 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:53:23,978 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:23,978 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:53:23,978 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:53:23,979 INFO L87 Difference]: Start difference. First operand 106 states and 137 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:24,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:24,439 INFO L93 Difference]: Finished difference Result 158 states and 221 transitions. [2022-04-28 05:53:24,439 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:53:24,439 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-28 05:53:24,439 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:24,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:24,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:53:24,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:24,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:53:24,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:53:24,485 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:24,488 INFO L225 Difference]: With dead ends: 158 [2022-04-28 05:53:24,488 INFO L226 Difference]: Without dead ends: 156 [2022-04-28 05:53:24,488 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 48 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:53:24,489 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:24,489 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 156 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:53:24,489 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-28 05:53:24,792 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 140. [2022-04-28 05:53:24,792 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:24,793 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:24,798 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:24,801 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:24,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:24,806 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-28 05:53:24,806 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-28 05:53:24,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:24,806 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:24,817 INFO L74 IsIncluded]: Start isIncluded. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-28 05:53:24,818 INFO L87 Difference]: Start difference. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-28 05:53:24,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:24,822 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-28 05:53:24,822 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-28 05:53:24,823 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:24,823 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:24,823 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:24,823 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:24,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 05:53:24,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 194 transitions. [2022-04-28 05:53:24,827 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 194 transitions. Word has length 52 [2022-04-28 05:53:24,827 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:24,827 INFO L495 AbstractCegarLoop]: Abstraction has 140 states and 194 transitions. [2022-04-28 05:53:24,827 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:53:24,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 140 states and 194 transitions. [2022-04-28 05:53:25,083 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 194 edges. 194 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:25,083 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 194 transitions. [2022-04-28 05:53:25,084 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 05:53:25,084 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:25,084 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:25,100 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:53:25,284 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:53:25,285 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:25,285 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:25,285 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 1 times [2022-04-28 05:53:25,285 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:25,285 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1775661475] [2022-04-28 05:53:25,285 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:25,285 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 2 times [2022-04-28 05:53:25,285 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:25,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1423241493] [2022-04-28 05:53:25,286 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:25,286 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:25,312 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:25,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1925364873] [2022-04-28 05:53:25,312 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:25,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:25,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:25,314 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:53:25,315 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:53:25,355 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:25,355 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:25,356 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-28 05:53:25,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:25,367 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:26,006 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {6637#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 5: Hoare triple {6637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {6637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:26,007 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L272 TraceCheckUtils]: 17: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L272 TraceCheckUtils]: 22: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:26,008 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:26,009 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:26,009 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,009 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-28 05:53:26,010 INFO L290 TraceCheckUtils]: 27: Hoare triple {6637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:26,010 INFO L290 TraceCheckUtils]: 28: Hoare triple {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:26,010 INFO L290 TraceCheckUtils]: 29: Hoare triple {6723#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6730#(and (= main_~r~0 0) (= main_~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:26,011 INFO L290 TraceCheckUtils]: 30: Hoare triple {6730#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {6730#(and (= main_~r~0 0) (= 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:26,011 INFO L290 TraceCheckUtils]: 31: Hoare triple {6730#(and (= main_~r~0 0) (= 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; {6737#(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:26,012 INFO L290 TraceCheckUtils]: 32: Hoare triple {6737#(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 !false; {6737#(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:26,012 INFO L272 TraceCheckUtils]: 33: Hoare triple {6737#(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)); {6637#true} is VALID [2022-04-28 05:53:26,012 INFO L290 TraceCheckUtils]: 34: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:26,012 INFO L290 TraceCheckUtils]: 35: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:26,012 INFO L290 TraceCheckUtils]: 36: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,013 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6637#true} {6737#(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; {6737#(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:26,013 INFO L272 TraceCheckUtils]: 38: Hoare triple {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:26,013 INFO L290 TraceCheckUtils]: 39: Hoare triple {6637#true} ~cond := #in~cond; {6762#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:26,013 INFO L290 TraceCheckUtils]: 40: Hoare triple {6762#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:26,014 INFO L290 TraceCheckUtils]: 41: Hoare triple {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:26,014 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} {6737#(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; {6737#(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:26,014 INFO L272 TraceCheckUtils]: 43: Hoare triple {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:26,014 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:26,014 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:26,014 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,015 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6637#true} {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {6737#(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:26,015 INFO L272 TraceCheckUtils]: 48: Hoare triple {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:26,015 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:26,015 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:26,015 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:26,016 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6637#true} {6737#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {6737#(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:26,017 INFO L290 TraceCheckUtils]: 53: Hoare triple {6737#(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); {6737#(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:26,017 INFO L290 TraceCheckUtils]: 54: Hoare triple {6737#(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; {6809#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:26,018 INFO L290 TraceCheckUtils]: 55: Hoare triple {6809#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {6809#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:26,018 INFO L290 TraceCheckUtils]: 56: Hoare triple {6809#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6809#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:26,019 INFO L290 TraceCheckUtils]: 57: Hoare triple {6809#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6819#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:53:26,019 INFO L290 TraceCheckUtils]: 58: Hoare triple {6819#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {6819#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:53:26,019 INFO L290 TraceCheckUtils]: 59: Hoare triple {6819#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {6826#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-28 05:53:26,020 INFO L272 TraceCheckUtils]: 60: Hoare triple {6826#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6830#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:26,020 INFO L290 TraceCheckUtils]: 61: Hoare triple {6830#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6834#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:26,021 INFO L290 TraceCheckUtils]: 62: Hoare triple {6834#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-28 05:53:26,021 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-28 05:53:26,021 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-28 05:53:26,021 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:33,548 INFO L290 TraceCheckUtils]: 63: Hoare triple {6638#false} assume !false; {6638#false} is VALID [2022-04-28 05:53:33,549 INFO L290 TraceCheckUtils]: 62: Hoare triple {6834#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6638#false} is VALID [2022-04-28 05:53:33,549 INFO L290 TraceCheckUtils]: 61: Hoare triple {6830#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6834#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:33,550 INFO L272 TraceCheckUtils]: 60: Hoare triple {6850#(= (+ (* 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)); {6830#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:33,550 INFO L290 TraceCheckUtils]: 59: Hoare triple {6854#(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); {6850#(= (+ (* 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:33,550 INFO L290 TraceCheckUtils]: 58: Hoare triple {6854#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {6854#(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:33,675 INFO L290 TraceCheckUtils]: 57: Hoare triple {6861#(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; {6854#(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:33,675 INFO L290 TraceCheckUtils]: 56: Hoare triple {6861#(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); {6861#(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:33,676 INFO L290 TraceCheckUtils]: 55: Hoare triple {6861#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6861#(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:34,053 INFO L290 TraceCheckUtils]: 54: Hoare triple {6871#(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; {6861#(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:34,054 INFO L290 TraceCheckUtils]: 53: Hoare triple {6871#(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); {6871#(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:34,054 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6637#true} {6871#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {6871#(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:34,055 INFO L290 TraceCheckUtils]: 51: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,055 INFO L290 TraceCheckUtils]: 50: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:34,055 INFO L290 TraceCheckUtils]: 49: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:34,055 INFO L272 TraceCheckUtils]: 48: Hoare triple {6871#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:34,055 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6637#true} {6871#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {6871#(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:34,055 INFO L290 TraceCheckUtils]: 46: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,056 INFO L290 TraceCheckUtils]: 45: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:34,056 INFO L290 TraceCheckUtils]: 44: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:34,056 INFO L272 TraceCheckUtils]: 43: Hoare triple {6871#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:34,057 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} {6908#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {6871#(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:34,057 INFO L290 TraceCheckUtils]: 41: Hoare triple {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:34,057 INFO L290 TraceCheckUtils]: 40: Hoare triple {6918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6766#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:34,057 INFO L290 TraceCheckUtils]: 39: Hoare triple {6637#true} ~cond := #in~cond; {6918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:34,057 INFO L272 TraceCheckUtils]: 38: Hoare triple {6908#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:34,058 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6637#true} {6908#(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))))} #102#return; {6908#(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:34,058 INFO L290 TraceCheckUtils]: 36: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,058 INFO L290 TraceCheckUtils]: 35: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:34,058 INFO L290 TraceCheckUtils]: 34: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:34,058 INFO L272 TraceCheckUtils]: 33: Hoare triple {6908#(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)); {6637#true} is VALID [2022-04-28 05:53:34,059 INFO L290 TraceCheckUtils]: 32: Hoare triple {6908#(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 !false; {6908#(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:34,060 INFO L290 TraceCheckUtils]: 31: Hoare triple {6943#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6908#(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:34,060 INFO L290 TraceCheckUtils]: 30: Hoare triple {6943#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {6943#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:53:34,061 INFO L290 TraceCheckUtils]: 29: Hoare triple {6950#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~b~0 main_~a~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6943#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:53:34,061 INFO L290 TraceCheckUtils]: 28: Hoare triple {6950#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~b~0 main_~a~0)))} assume !false; {6950#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~b~0 main_~a~0)))} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 27: Hoare triple {6637#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6950#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~b~0 main_~a~0)))} is VALID [2022-04-28 05:53:34,062 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6637#true} {6637#true} #100#return; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 25: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 24: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 23: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L272 TraceCheckUtils]: 22: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6637#true} {6637#true} #98#return; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 20: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 19: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 18: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L272 TraceCheckUtils]: 17: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6637#true} {6637#true} #96#return; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 15: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,062 INFO L290 TraceCheckUtils]: 14: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 13: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L272 TraceCheckUtils]: 12: Hoare triple {6637#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 11: Hoare triple {6637#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6637#true} {6637#true} #94#return; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 8: Hoare triple {6637#true} assume !(0 == ~cond); {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 7: Hoare triple {6637#true} ~cond := #in~cond; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L272 TraceCheckUtils]: 6: Hoare triple {6637#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 5: Hoare triple {6637#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L272 TraceCheckUtils]: 4: Hoare triple {6637#true} call #t~ret6 := main(); {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6637#true} {6637#true} #112#return; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume true; {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L290 TraceCheckUtils]: 1: Hoare triple {6637#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6637#true} is VALID [2022-04-28 05:53:34,063 INFO L272 TraceCheckUtils]: 0: Hoare triple {6637#true} call ULTIMATE.init(); {6637#true} is VALID [2022-04-28 05:53:34,064 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-28 05:53:34,064 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:34,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1423241493] [2022-04-28 05:53:34,064 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:34,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1925364873] [2022-04-28 05:53:34,064 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1925364873] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:34,064 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:34,064 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 20 [2022-04-28 05:53:34,064 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:34,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1775661475] [2022-04-28 05:53:34,064 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1775661475] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:34,064 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:34,065 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:53:34,065 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1766762291] [2022-04-28 05:53:34,065 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:34,065 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 64 [2022-04-28 05:53:34,065 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:34,065 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:34,102 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:53:34,102 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:53:34,102 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:34,102 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:53:34,102 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=321, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:53:34,103 INFO L87 Difference]: Start difference. First operand 140 states and 194 transitions. Second operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:36,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:36,164 INFO L93 Difference]: Finished difference Result 200 states and 283 transitions. [2022-04-28 05:53:36,164 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:53:36,165 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 64 [2022-04-28 05:53:36,165 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:36,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:36,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-28 05:53:36,167 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:36,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-28 05:53:36,168 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 131 transitions. [2022-04-28 05:53:36,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:36,347 INFO L225 Difference]: With dead ends: 200 [2022-04-28 05:53:36,347 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 05:53:36,348 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 108 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=107, Invalid=543, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:53:36,348 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 54 mSDsluCounter, 230 mSDsCounter, 0 mSdLazyCounter, 559 mSolverCounterSat, 58 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 275 SdHoareTripleChecker+Invalid, 617 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 58 IncrementalHoareTripleChecker+Valid, 559 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:36,348 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [62 Valid, 275 Invalid, 617 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [58 Valid, 559 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 05:53:36,349 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 05:53:36,775 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 193. [2022-04-28 05:53:36,775 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:36,776 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:36,777 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:36,777 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:36,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:36,783 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-28 05:53:36,783 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-28 05:53:36,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:36,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:36,784 INFO L74 IsIncluded]: Start isIncluded. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-28 05:53:36,784 INFO L87 Difference]: Start difference. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-28 05:53:36,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:36,789 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-28 05:53:36,789 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-28 05:53:36,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:36,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:36,789 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:36,789 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:36,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:36,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 275 transitions. [2022-04-28 05:53:36,795 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 275 transitions. Word has length 64 [2022-04-28 05:53:36,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:36,795 INFO L495 AbstractCegarLoop]: Abstraction has 193 states and 275 transitions. [2022-04-28 05:53:36,795 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:36,796 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 193 states and 275 transitions. [2022-04-28 05:53:37,160 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 275 edges. 275 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:37,161 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 275 transitions. [2022-04-28 05:53:37,161 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:53:37,161 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:37,161 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:37,178 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:53:37,375 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:53:37,375 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:37,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:37,376 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 3 times [2022-04-28 05:53:37,376 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:37,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [660593999] [2022-04-28 05:53:37,376 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:37,376 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 4 times [2022-04-28 05:53:37,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:37,377 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1690912832] [2022-04-28 05:53:37,377 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:37,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:37,411 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:37,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1670657274] [2022-04-28 05:53:37,412 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:37,412 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:37,412 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:37,424 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:53:37,425 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:53:37,462 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:37,462 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:37,463 INFO L263 TraceCheckSpWp]: Trace formula consists of 168 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:53:37,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:37,476 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:37,703 INFO L272 TraceCheckUtils]: 0: Hoare triple {8232#true} call ULTIMATE.init(); {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L290 TraceCheckUtils]: 1: Hoare triple {8232#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); {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L290 TraceCheckUtils]: 2: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8232#true} {8232#true} #112#return; {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L272 TraceCheckUtils]: 4: Hoare triple {8232#true} call #t~ret6 := main(); {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L290 TraceCheckUtils]: 5: Hoare triple {8232#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; {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L272 TraceCheckUtils]: 6: Hoare triple {8232#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L290 TraceCheckUtils]: 7: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L290 TraceCheckUtils]: 8: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L290 TraceCheckUtils]: 9: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8232#true} {8232#true} #94#return; {8232#true} is VALID [2022-04-28 05:53:37,703 INFO L290 TraceCheckUtils]: 11: Hoare triple {8232#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L272 TraceCheckUtils]: 12: Hoare triple {8232#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 13: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 14: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 15: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8232#true} {8232#true} #96#return; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L272 TraceCheckUtils]: 17: Hoare triple {8232#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 18: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 19: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 20: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8232#true} {8232#true} #98#return; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L272 TraceCheckUtils]: 22: Hoare triple {8232#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 23: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 24: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 25: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8232#true} {8232#true} #100#return; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 27: Hoare triple {8232#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8232#true} is VALID [2022-04-28 05:53:37,704 INFO L290 TraceCheckUtils]: 28: Hoare triple {8232#true} assume !false; {8232#true} is VALID [2022-04-28 05:53:37,705 INFO L290 TraceCheckUtils]: 29: Hoare triple {8232#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8232#true} is VALID [2022-04-28 05:53:37,705 INFO L290 TraceCheckUtils]: 30: Hoare triple {8232#true} assume !false; {8232#true} is VALID [2022-04-28 05:53:37,706 INFO L290 TraceCheckUtils]: 31: Hoare triple {8232#true} assume !(~c~0 >= ~b~0); {8330#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:53:37,707 INFO L290 TraceCheckUtils]: 32: Hoare triple {8330#(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; {8334#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:37,707 INFO L290 TraceCheckUtils]: 33: Hoare triple {8334#(< main_~b~0 main_~a~0)} assume !false; {8334#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:37,707 INFO L290 TraceCheckUtils]: 34: Hoare triple {8334#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8341#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:37,707 INFO L290 TraceCheckUtils]: 35: Hoare triple {8341#(< main_~b~0 main_~c~0)} assume !false; {8341#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:37,708 INFO L290 TraceCheckUtils]: 36: Hoare triple {8341#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,708 INFO L290 TraceCheckUtils]: 37: Hoare triple {8348#(< main_~v~0 main_~c~0)} assume !false; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,708 INFO L272 TraceCheckUtils]: 38: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,708 INFO L290 TraceCheckUtils]: 39: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,708 INFO L290 TraceCheckUtils]: 40: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,708 INFO L290 TraceCheckUtils]: 41: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,709 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #102#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,709 INFO L272 TraceCheckUtils]: 43: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,709 INFO L290 TraceCheckUtils]: 44: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,709 INFO L290 TraceCheckUtils]: 45: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,709 INFO L290 TraceCheckUtils]: 46: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,712 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #104#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,713 INFO L272 TraceCheckUtils]: 48: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,713 INFO L290 TraceCheckUtils]: 49: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,713 INFO L290 TraceCheckUtils]: 50: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,713 INFO L290 TraceCheckUtils]: 51: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,713 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #106#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,713 INFO L272 TraceCheckUtils]: 53: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,713 INFO L290 TraceCheckUtils]: 54: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,713 INFO L290 TraceCheckUtils]: 55: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,713 INFO L290 TraceCheckUtils]: 56: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,714 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #108#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,714 INFO L290 TraceCheckUtils]: 58: Hoare triple {8348#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,715 INFO L290 TraceCheckUtils]: 59: Hoare triple {8348#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8418#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:37,715 INFO L290 TraceCheckUtils]: 60: Hoare triple {8418#(< 0 main_~c~0)} assume !false; {8418#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:37,715 INFO L290 TraceCheckUtils]: 61: Hoare triple {8418#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8418#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:37,716 INFO L290 TraceCheckUtils]: 62: Hoare triple {8418#(< 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; {8428#(< 0 main_~b~0)} is VALID [2022-04-28 05:53:37,716 INFO L290 TraceCheckUtils]: 63: Hoare triple {8428#(< 0 main_~b~0)} assume !false; {8428#(< 0 main_~b~0)} is VALID [2022-04-28 05:53:37,716 INFO L290 TraceCheckUtils]: 64: Hoare triple {8428#(< 0 main_~b~0)} assume !(0 != ~b~0); {8233#false} is VALID [2022-04-28 05:53:37,716 INFO L272 TraceCheckUtils]: 65: Hoare triple {8233#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)); {8233#false} is VALID [2022-04-28 05:53:37,716 INFO L290 TraceCheckUtils]: 66: Hoare triple {8233#false} ~cond := #in~cond; {8233#false} is VALID [2022-04-28 05:53:37,716 INFO L290 TraceCheckUtils]: 67: Hoare triple {8233#false} assume 0 == ~cond; {8233#false} is VALID [2022-04-28 05:53:37,716 INFO L290 TraceCheckUtils]: 68: Hoare triple {8233#false} assume !false; {8233#false} is VALID [2022-04-28 05:53:37,717 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 05:53:37,717 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:37,911 INFO L290 TraceCheckUtils]: 68: Hoare triple {8233#false} assume !false; {8233#false} is VALID [2022-04-28 05:53:37,911 INFO L290 TraceCheckUtils]: 67: Hoare triple {8233#false} assume 0 == ~cond; {8233#false} is VALID [2022-04-28 05:53:37,911 INFO L290 TraceCheckUtils]: 66: Hoare triple {8233#false} ~cond := #in~cond; {8233#false} is VALID [2022-04-28 05:53:37,911 INFO L272 TraceCheckUtils]: 65: Hoare triple {8233#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)); {8233#false} is VALID [2022-04-28 05:53:37,911 INFO L290 TraceCheckUtils]: 64: Hoare triple {8428#(< 0 main_~b~0)} assume !(0 != ~b~0); {8233#false} is VALID [2022-04-28 05:53:37,911 INFO L290 TraceCheckUtils]: 63: Hoare triple {8428#(< 0 main_~b~0)} assume !false; {8428#(< 0 main_~b~0)} is VALID [2022-04-28 05:53:37,912 INFO L290 TraceCheckUtils]: 62: Hoare triple {8418#(< 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; {8428#(< 0 main_~b~0)} is VALID [2022-04-28 05:53:37,912 INFO L290 TraceCheckUtils]: 61: Hoare triple {8418#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8418#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:37,912 INFO L290 TraceCheckUtils]: 60: Hoare triple {8418#(< 0 main_~c~0)} assume !false; {8418#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:37,913 INFO L290 TraceCheckUtils]: 59: Hoare triple {8348#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8418#(< 0 main_~c~0)} is VALID [2022-04-28 05:53:37,913 INFO L290 TraceCheckUtils]: 58: Hoare triple {8348#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,914 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #108#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,914 INFO L290 TraceCheckUtils]: 56: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,914 INFO L290 TraceCheckUtils]: 55: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,914 INFO L290 TraceCheckUtils]: 54: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,914 INFO L272 TraceCheckUtils]: 53: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,914 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #106#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,914 INFO L290 TraceCheckUtils]: 51: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,914 INFO L290 TraceCheckUtils]: 50: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,914 INFO L290 TraceCheckUtils]: 49: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,914 INFO L272 TraceCheckUtils]: 48: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,915 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #104#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,915 INFO L290 TraceCheckUtils]: 46: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,915 INFO L290 TraceCheckUtils]: 45: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,915 INFO L290 TraceCheckUtils]: 44: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,915 INFO L272 TraceCheckUtils]: 43: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,916 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8232#true} {8348#(< main_~v~0 main_~c~0)} #102#return; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,916 INFO L290 TraceCheckUtils]: 41: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,916 INFO L290 TraceCheckUtils]: 40: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,916 INFO L290 TraceCheckUtils]: 39: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,916 INFO L272 TraceCheckUtils]: 38: Hoare triple {8348#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,916 INFO L290 TraceCheckUtils]: 37: Hoare triple {8348#(< main_~v~0 main_~c~0)} assume !false; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,917 INFO L290 TraceCheckUtils]: 36: Hoare triple {8341#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8348#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:53:37,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {8341#(< main_~b~0 main_~c~0)} assume !false; {8341#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:37,917 INFO L290 TraceCheckUtils]: 34: Hoare triple {8334#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8341#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:53:37,917 INFO L290 TraceCheckUtils]: 33: Hoare triple {8334#(< main_~b~0 main_~a~0)} assume !false; {8334#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 32: Hoare triple {8330#(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; {8334#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 31: Hoare triple {8232#true} assume !(~c~0 >= ~b~0); {8330#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 30: Hoare triple {8232#true} assume !false; {8232#true} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 29: Hoare triple {8232#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8232#true} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 28: Hoare triple {8232#true} assume !false; {8232#true} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 27: Hoare triple {8232#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8232#true} is VALID [2022-04-28 05:53:37,918 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8232#true} {8232#true} #100#return; {8232#true} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 25: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 24: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,918 INFO L290 TraceCheckUtils]: 23: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L272 TraceCheckUtils]: 22: Hoare triple {8232#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8232#true} {8232#true} #98#return; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 20: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 19: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 18: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L272 TraceCheckUtils]: 17: Hoare triple {8232#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8232#true} {8232#true} #96#return; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 15: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 14: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 13: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L272 TraceCheckUtils]: 12: Hoare triple {8232#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 11: Hoare triple {8232#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8232#true} {8232#true} #94#return; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 9: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {8232#true} assume !(0 == ~cond); {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {8232#true} ~cond := #in~cond; {8232#true} is VALID [2022-04-28 05:53:37,919 INFO L272 TraceCheckUtils]: 6: Hoare triple {8232#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {8232#true} is VALID [2022-04-28 05:53:37,920 INFO L290 TraceCheckUtils]: 5: Hoare triple {8232#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; {8232#true} is VALID [2022-04-28 05:53:37,920 INFO L272 TraceCheckUtils]: 4: Hoare triple {8232#true} call #t~ret6 := main(); {8232#true} is VALID [2022-04-28 05:53:37,920 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8232#true} {8232#true} #112#return; {8232#true} is VALID [2022-04-28 05:53:37,920 INFO L290 TraceCheckUtils]: 2: Hoare triple {8232#true} assume true; {8232#true} is VALID [2022-04-28 05:53:37,920 INFO L290 TraceCheckUtils]: 1: Hoare triple {8232#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); {8232#true} is VALID [2022-04-28 05:53:37,920 INFO L272 TraceCheckUtils]: 0: Hoare triple {8232#true} call ULTIMATE.init(); {8232#true} is VALID [2022-04-28 05:53:37,920 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 05:53:37,920 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:37,920 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1690912832] [2022-04-28 05:53:37,920 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:37,920 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1670657274] [2022-04-28 05:53:37,920 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1670657274] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:37,920 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:37,920 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 05:53:37,921 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:37,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [660593999] [2022-04-28 05:53:37,921 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [660593999] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:37,921 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:37,921 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:53:37,921 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1745667546] [2022-04-28 05:53:37,921 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:37,921 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-28 05:53:37,921 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:37,922 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:37,960 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:53:37,960 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:53:37,960 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:37,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:53:37,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:53:37,960 INFO L87 Difference]: Start difference. First operand 193 states and 275 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:39,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:39,675 INFO L93 Difference]: Finished difference Result 288 states and 424 transitions. [2022-04-28 05:53:39,675 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:53:39,675 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-28 05:53:39,675 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:39,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:39,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 05:53:39,677 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:39,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 05:53:39,679 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-28 05:53:39,799 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:53:39,805 INFO L225 Difference]: With dead ends: 288 [2022-04-28 05:53:39,805 INFO L226 Difference]: Without dead ends: 281 [2022-04-28 05:53:39,805 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 134 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:53:39,805 INFO L413 NwaCegarLoop]: 87 mSDtfsCounter, 46 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 83 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 318 SdHoareTripleChecker+Invalid, 363 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 83 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:39,806 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 318 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [83 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:53:39,806 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 281 states. [2022-04-28 05:53:40,297 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 281 to 208. [2022-04-28 05:53:40,298 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:40,298 INFO L82 GeneralOperation]: Start isEquivalent. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:40,298 INFO L74 IsIncluded]: Start isIncluded. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:40,299 INFO L87 Difference]: Start difference. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:40,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:40,306 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-28 05:53:40,306 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-28 05:53:40,307 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:40,307 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:40,308 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-28 05:53:40,308 INFO L87 Difference]: Start difference. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-28 05:53:40,315 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:40,316 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-28 05:53:40,316 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-28 05:53:40,317 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:40,317 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:40,317 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:40,317 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:40,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:40,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 296 transitions. [2022-04-28 05:53:40,322 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 296 transitions. Word has length 69 [2022-04-28 05:53:40,322 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:40,322 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 296 transitions. [2022-04-28 05:53:40,322 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:40,323 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 296 transitions. [2022-04-28 05:53:40,757 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:40,757 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 296 transitions. [2022-04-28 05:53:40,759 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-28 05:53:40,759 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:40,759 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:40,774 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:53:40,959 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:53:40,959 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:40,960 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:40,960 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 1 times [2022-04-28 05:53:40,960 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:40,960 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [872410651] [2022-04-28 05:53:40,960 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:40,960 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 2 times [2022-04-28 05:53:40,960 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:40,960 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2092971812] [2022-04-28 05:53:40,960 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:40,961 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:40,979 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:40,979 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [731632486] [2022-04-28 05:53:40,979 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:40,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:40,980 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:40,985 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:53:40,987 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:53:41,024 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:41,025 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:41,025 INFO L263 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:53:41,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:41,036 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:41,221 INFO L272 TraceCheckUtils]: 0: Hoare triple {10234#true} call ULTIMATE.init(); {10234#true} is VALID [2022-04-28 05:53:41,221 INFO L290 TraceCheckUtils]: 1: Hoare triple {10234#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); {10234#true} is VALID [2022-04-28 05:53:41,221 INFO L290 TraceCheckUtils]: 2: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,221 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10234#true} {10234#true} #112#return; {10234#true} is VALID [2022-04-28 05:53:41,221 INFO L272 TraceCheckUtils]: 4: Hoare triple {10234#true} call #t~ret6 := main(); {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 5: Hoare triple {10234#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; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L272 TraceCheckUtils]: 6: Hoare triple {10234#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 7: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 8: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 9: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10234#true} {10234#true} #94#return; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 11: Hoare triple {10234#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L272 TraceCheckUtils]: 12: Hoare triple {10234#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 13: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 14: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 15: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10234#true} {10234#true} #96#return; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L272 TraceCheckUtils]: 17: Hoare triple {10234#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 18: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 19: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,222 INFO L290 TraceCheckUtils]: 20: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10234#true} {10234#true} #98#return; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L272 TraceCheckUtils]: 22: Hoare triple {10234#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L290 TraceCheckUtils]: 23: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L290 TraceCheckUtils]: 24: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L290 TraceCheckUtils]: 25: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10234#true} {10234#true} #100#return; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L290 TraceCheckUtils]: 27: Hoare triple {10234#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L290 TraceCheckUtils]: 28: Hoare triple {10234#true} assume !false; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {10234#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10234#true} is VALID [2022-04-28 05:53:41,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {10234#true} assume !false; {10234#true} is VALID [2022-04-28 05:53:41,239 INFO L290 TraceCheckUtils]: 31: Hoare triple {10234#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:41,240 INFO L290 TraceCheckUtils]: 32: Hoare triple {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:41,240 INFO L272 TraceCheckUtils]: 33: Hoare triple {10332#(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)); {10234#true} is VALID [2022-04-28 05:53:41,240 INFO L290 TraceCheckUtils]: 34: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,240 INFO L290 TraceCheckUtils]: 35: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,240 INFO L290 TraceCheckUtils]: 36: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,241 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10234#true} {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:41,241 INFO L272 TraceCheckUtils]: 38: Hoare triple {10332#(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)); {10234#true} is VALID [2022-04-28 05:53:41,241 INFO L290 TraceCheckUtils]: 39: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,241 INFO L290 TraceCheckUtils]: 40: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,241 INFO L290 TraceCheckUtils]: 41: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,242 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10234#true} {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:41,242 INFO L272 TraceCheckUtils]: 43: Hoare triple {10332#(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)); {10234#true} is VALID [2022-04-28 05:53:41,242 INFO L290 TraceCheckUtils]: 44: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,242 INFO L290 TraceCheckUtils]: 45: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,242 INFO L290 TraceCheckUtils]: 46: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,243 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10234#true} {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:41,243 INFO L272 TraceCheckUtils]: 48: Hoare triple {10332#(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)); {10234#true} is VALID [2022-04-28 05:53:41,243 INFO L290 TraceCheckUtils]: 49: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,243 INFO L290 TraceCheckUtils]: 50: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,244 INFO L290 TraceCheckUtils]: 51: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,244 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10234#true} {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #108#return; {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:53:41,245 INFO L290 TraceCheckUtils]: 53: Hoare triple {10332#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:53:41,245 INFO L290 TraceCheckUtils]: 54: Hoare triple {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} assume !false; {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:53:41,245 INFO L272 TraceCheckUtils]: 55: Hoare triple {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,245 INFO L290 TraceCheckUtils]: 56: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,245 INFO L290 TraceCheckUtils]: 57: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,245 INFO L290 TraceCheckUtils]: 58: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,246 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10234#true} {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #102#return; {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:53:41,247 INFO L272 TraceCheckUtils]: 60: Hoare triple {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,247 INFO L290 TraceCheckUtils]: 61: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,247 INFO L290 TraceCheckUtils]: 62: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,247 INFO L290 TraceCheckUtils]: 63: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,248 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10234#true} {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #104#return; {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:53:41,248 INFO L272 TraceCheckUtils]: 65: Hoare triple {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,248 INFO L290 TraceCheckUtils]: 66: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,248 INFO L290 TraceCheckUtils]: 67: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,248 INFO L290 TraceCheckUtils]: 68: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,249 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10234#true} {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} #106#return; {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} is VALID [2022-04-28 05:53:41,249 INFO L272 TraceCheckUtils]: 70: Hoare triple {10399#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10451#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:41,250 INFO L290 TraceCheckUtils]: 71: Hoare triple {10451#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10455#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:41,250 INFO L290 TraceCheckUtils]: 72: Hoare triple {10455#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10235#false} is VALID [2022-04-28 05:53:41,250 INFO L290 TraceCheckUtils]: 73: Hoare triple {10235#false} assume !false; {10235#false} is VALID [2022-04-28 05:53:41,250 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 5 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-28 05:53:41,250 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:41,453 INFO L290 TraceCheckUtils]: 73: Hoare triple {10235#false} assume !false; {10235#false} is VALID [2022-04-28 05:53:41,454 INFO L290 TraceCheckUtils]: 72: Hoare triple {10455#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10235#false} is VALID [2022-04-28 05:53:41,454 INFO L290 TraceCheckUtils]: 71: Hoare triple {10451#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10455#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:41,454 INFO L272 TraceCheckUtils]: 70: Hoare triple {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10451#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:41,455 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10234#true} {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,455 INFO L290 TraceCheckUtils]: 68: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,455 INFO L290 TraceCheckUtils]: 67: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,455 INFO L290 TraceCheckUtils]: 66: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,455 INFO L272 TraceCheckUtils]: 65: Hoare triple {10471#(= 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)); {10234#true} is VALID [2022-04-28 05:53:41,459 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10234#true} {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,459 INFO L290 TraceCheckUtils]: 63: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,459 INFO L290 TraceCheckUtils]: 62: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,459 INFO L290 TraceCheckUtils]: 61: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,459 INFO L272 TraceCheckUtils]: 60: Hoare triple {10471#(= 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)); {10234#true} is VALID [2022-04-28 05:53:41,460 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10234#true} {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,460 INFO L290 TraceCheckUtils]: 58: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,460 INFO L290 TraceCheckUtils]: 57: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,460 INFO L290 TraceCheckUtils]: 56: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,460 INFO L272 TraceCheckUtils]: 55: Hoare triple {10471#(= 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)); {10234#true} is VALID [2022-04-28 05:53:41,460 INFO L290 TraceCheckUtils]: 54: Hoare triple {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,462 INFO L290 TraceCheckUtils]: 53: Hoare triple {10471#(= 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; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,463 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10234#true} {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} #108#return; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,463 INFO L290 TraceCheckUtils]: 51: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,463 INFO L290 TraceCheckUtils]: 50: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,463 INFO L290 TraceCheckUtils]: 49: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,463 INFO L272 TraceCheckUtils]: 48: Hoare triple {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,463 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10234#true} {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,463 INFO L290 TraceCheckUtils]: 46: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,463 INFO L290 TraceCheckUtils]: 45: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,464 INFO L290 TraceCheckUtils]: 44: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,464 INFO L272 TraceCheckUtils]: 43: Hoare triple {10471#(= 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)); {10234#true} is VALID [2022-04-28 05:53:41,471 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10234#true} {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,471 INFO L290 TraceCheckUtils]: 41: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,471 INFO L290 TraceCheckUtils]: 40: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,472 INFO L290 TraceCheckUtils]: 39: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,472 INFO L272 TraceCheckUtils]: 38: Hoare triple {10471#(= 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)); {10234#true} is VALID [2022-04-28 05:53:41,472 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10234#true} {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,472 INFO L290 TraceCheckUtils]: 36: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,472 INFO L290 TraceCheckUtils]: 35: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,472 INFO L290 TraceCheckUtils]: 34: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,472 INFO L272 TraceCheckUtils]: 33: Hoare triple {10471#(= 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)); {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 32: Hoare triple {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 31: Hoare triple {10234#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10471#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 30: Hoare triple {10234#true} assume !false; {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 29: Hoare triple {10234#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 28: Hoare triple {10234#true} assume !false; {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 27: Hoare triple {10234#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10234#true} {10234#true} #100#return; {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 25: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 24: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,473 INFO L290 TraceCheckUtils]: 23: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L272 TraceCheckUtils]: 22: Hoare triple {10234#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10234#true} {10234#true} #98#return; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 20: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 19: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 18: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L272 TraceCheckUtils]: 17: Hoare triple {10234#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10234#true} {10234#true} #96#return; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 15: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 14: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 13: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L272 TraceCheckUtils]: 12: Hoare triple {10234#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 11: Hoare triple {10234#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10234#true} {10234#true} #94#return; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 9: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 8: Hoare triple {10234#true} assume !(0 == ~cond); {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 7: Hoare triple {10234#true} ~cond := #in~cond; {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L272 TraceCheckUtils]: 6: Hoare triple {10234#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {10234#true} is VALID [2022-04-28 05:53:41,474 INFO L290 TraceCheckUtils]: 5: Hoare triple {10234#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; {10234#true} is VALID [2022-04-28 05:53:41,475 INFO L272 TraceCheckUtils]: 4: Hoare triple {10234#true} call #t~ret6 := main(); {10234#true} is VALID [2022-04-28 05:53:41,475 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10234#true} {10234#true} #112#return; {10234#true} is VALID [2022-04-28 05:53:41,475 INFO L290 TraceCheckUtils]: 2: Hoare triple {10234#true} assume true; {10234#true} is VALID [2022-04-28 05:53:41,475 INFO L290 TraceCheckUtils]: 1: Hoare triple {10234#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); {10234#true} is VALID [2022-04-28 05:53:41,475 INFO L272 TraceCheckUtils]: 0: Hoare triple {10234#true} call ULTIMATE.init(); {10234#true} is VALID [2022-04-28 05:53:41,475 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 113 trivial. 0 not checked. [2022-04-28 05:53:41,475 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:41,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2092971812] [2022-04-28 05:53:41,475 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:41,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [731632486] [2022-04-28 05:53:41,475 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [731632486] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:53:41,475 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:53:41,475 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-28 05:53:41,476 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:41,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [872410651] [2022-04-28 05:53:41,476 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [872410651] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:41,476 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:41,476 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:41,476 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1418483745] [2022-04-28 05:53:41,476 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:41,476 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 74 [2022-04-28 05:53:41,476 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:41,476 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:41,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:41,503 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:53:41,503 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:41,503 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:53:41,503 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:53:41,504 INFO L87 Difference]: Start difference. First operand 208 states and 296 transitions. Second operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:42,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:42,109 INFO L93 Difference]: Finished difference Result 214 states and 301 transitions. [2022-04-28 05:53:42,109 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:53:42,109 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 74 [2022-04-28 05:53:42,110 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:42,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:42,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 05:53:42,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:42,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 05:53:42,111 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-28 05:53:42,165 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:53:42,168 INFO L225 Difference]: With dead ends: 214 [2022-04-28 05:53:42,168 INFO L226 Difference]: Without dead ends: 212 [2022-04-28 05:53:42,168 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 140 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:53:42,169 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 9 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:42,169 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 139 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:53:42,170 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-28 05:53:42,647 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-28 05:53:42,647 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:42,647 INFO L82 GeneralOperation]: Start isEquivalent. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:42,648 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:42,648 INFO L87 Difference]: Start difference. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:42,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:42,652 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-28 05:53:42,652 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:53:42,653 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:42,653 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:42,653 INFO L74 IsIncluded]: Start isIncluded. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-28 05:53:42,654 INFO L87 Difference]: Start difference. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-28 05:53:42,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:42,658 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-28 05:53:42,658 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:53:42,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:42,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:42,659 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:42,659 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:42,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:42,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 299 transitions. [2022-04-28 05:53:42,674 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 299 transitions. Word has length 74 [2022-04-28 05:53:42,674 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:42,674 INFO L495 AbstractCegarLoop]: Abstraction has 212 states and 299 transitions. [2022-04-28 05:53:42,675 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:42,675 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 212 states and 299 transitions. [2022-04-28 05:53:43,179 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 299 edges. 299 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:43,179 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-28 05:53:43,180 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-04-28 05:53:43,180 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:43,180 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:43,195 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:53:43,380 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:53:43,380 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:43,381 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:43,381 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 1 times [2022-04-28 05:53:43,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:43,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1830418456] [2022-04-28 05:53:43,381 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:43,381 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 2 times [2022-04-28 05:53:43,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:43,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [296383167] [2022-04-28 05:53:43,381 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:43,381 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:43,398 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:43,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1013354067] [2022-04-28 05:53:43,398 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:43,398 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:43,398 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:43,399 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:53:43,400 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:53:43,442 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:43,442 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:43,443 INFO L263 TraceCheckSpWp]: Trace formula consists of 209 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 05:53:43,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:43,452 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:43,619 INFO L272 TraceCheckUtils]: 0: Hoare triple {11962#true} call ULTIMATE.init(); {11962#true} is VALID [2022-04-28 05:53:43,619 INFO L290 TraceCheckUtils]: 1: Hoare triple {11962#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); {11962#true} is VALID [2022-04-28 05:53:43,619 INFO L290 TraceCheckUtils]: 2: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,619 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11962#true} {11962#true} #112#return; {11962#true} is VALID [2022-04-28 05:53:43,619 INFO L272 TraceCheckUtils]: 4: Hoare triple {11962#true} call #t~ret6 := main(); {11962#true} is VALID [2022-04-28 05:53:43,619 INFO L290 TraceCheckUtils]: 5: Hoare triple {11962#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; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L272 TraceCheckUtils]: 6: Hoare triple {11962#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 7: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 9: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11962#true} {11962#true} #94#return; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 11: Hoare triple {11962#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L272 TraceCheckUtils]: 12: Hoare triple {11962#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 13: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 14: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 15: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11962#true} {11962#true} #96#return; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L272 TraceCheckUtils]: 17: Hoare triple {11962#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 18: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 19: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 20: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11962#true} {11962#true} #98#return; {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L272 TraceCheckUtils]: 22: Hoare triple {11962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:43,620 INFO L290 TraceCheckUtils]: 23: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 24: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 25: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11962#true} {11962#true} #100#return; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 27: Hoare triple {11962#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 28: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 29: Hoare triple {11962#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 30: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 31: Hoare triple {11962#true} assume !(~c~0 >= ~b~0); {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 32: Hoare triple {11962#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; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 33: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 34: Hoare triple {11962#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 35: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 36: Hoare triple {11962#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 37: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L272 TraceCheckUtils]: 38: Hoare triple {11962#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 39: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 40: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:43,621 INFO L290 TraceCheckUtils]: 41: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,622 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11962#true} {11962#true} #102#return; {11962#true} is VALID [2022-04-28 05:53:43,622 INFO L272 TraceCheckUtils]: 43: Hoare triple {11962#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:43,622 INFO L290 TraceCheckUtils]: 44: Hoare triple {11962#true} ~cond := #in~cond; {12099#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:43,622 INFO L290 TraceCheckUtils]: 45: Hoare triple {12099#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:43,623 INFO L290 TraceCheckUtils]: 46: Hoare triple {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:43,624 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} {11962#true} #104#return; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:43,624 INFO L272 TraceCheckUtils]: 48: Hoare triple {12110#(= 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)); {11962#true} is VALID [2022-04-28 05:53:43,624 INFO L290 TraceCheckUtils]: 49: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:43,624 INFO L290 TraceCheckUtils]: 50: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:43,624 INFO L290 TraceCheckUtils]: 51: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,625 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11962#true} {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:43,625 INFO L272 TraceCheckUtils]: 53: Hoare triple {12110#(= 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)); {11962#true} is VALID [2022-04-28 05:53:43,625 INFO L290 TraceCheckUtils]: 54: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:43,625 INFO L290 TraceCheckUtils]: 55: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:43,625 INFO L290 TraceCheckUtils]: 56: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:43,626 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11962#true} {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:43,626 INFO L290 TraceCheckUtils]: 58: Hoare triple {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:43,626 INFO L290 TraceCheckUtils]: 59: Hoare triple {12110#(= 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; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:43,627 INFO L290 TraceCheckUtils]: 60: Hoare triple {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:43,627 INFO L290 TraceCheckUtils]: 61: Hoare triple {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:43,628 INFO L290 TraceCheckUtils]: 62: Hoare triple {12110#(= 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; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:43,628 INFO L290 TraceCheckUtils]: 63: Hoare triple {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:43,628 INFO L290 TraceCheckUtils]: 64: Hoare triple {12156#(= 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; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:43,629 INFO L290 TraceCheckUtils]: 65: Hoare triple {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:43,629 INFO L290 TraceCheckUtils]: 66: Hoare triple {12156#(= 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; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:43,630 INFO L290 TraceCheckUtils]: 67: Hoare triple {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:43,630 INFO L272 TraceCheckUtils]: 68: Hoare triple {12156#(= 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)); {12175#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:43,631 INFO L290 TraceCheckUtils]: 69: Hoare triple {12175#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12179#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:43,631 INFO L290 TraceCheckUtils]: 70: Hoare triple {12179#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11963#false} is VALID [2022-04-28 05:53:43,631 INFO L290 TraceCheckUtils]: 71: Hoare triple {11963#false} assume !false; {11963#false} is VALID [2022-04-28 05:53:43,631 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-28 05:53:43,631 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:55,498 INFO L290 TraceCheckUtils]: 71: Hoare triple {11963#false} assume !false; {11963#false} is VALID [2022-04-28 05:53:55,499 INFO L290 TraceCheckUtils]: 70: Hoare triple {12179#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11963#false} is VALID [2022-04-28 05:53:55,499 INFO L290 TraceCheckUtils]: 69: Hoare triple {12175#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12179#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:55,500 INFO L272 TraceCheckUtils]: 68: Hoare triple {12156#(= 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)); {12175#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:55,500 INFO L290 TraceCheckUtils]: 67: Hoare triple {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:55,500 INFO L290 TraceCheckUtils]: 66: Hoare triple {12156#(= 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; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:55,501 INFO L290 TraceCheckUtils]: 65: Hoare triple {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:55,501 INFO L290 TraceCheckUtils]: 64: Hoare triple {12156#(= 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; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:55,501 INFO L290 TraceCheckUtils]: 63: Hoare triple {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:55,502 INFO L290 TraceCheckUtils]: 62: Hoare triple {12110#(= 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; {12156#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:55,502 INFO L290 TraceCheckUtils]: 61: Hoare triple {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:55,502 INFO L290 TraceCheckUtils]: 60: Hoare triple {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:55,503 INFO L290 TraceCheckUtils]: 59: Hoare triple {12110#(= 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; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:55,503 INFO L290 TraceCheckUtils]: 58: Hoare triple {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:55,504 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11962#true} {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:55,504 INFO L290 TraceCheckUtils]: 56: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,504 INFO L290 TraceCheckUtils]: 55: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:55,504 INFO L290 TraceCheckUtils]: 54: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:55,504 INFO L272 TraceCheckUtils]: 53: Hoare triple {12110#(= 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)); {11962#true} is VALID [2022-04-28 05:53:55,505 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11962#true} {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:55,505 INFO L290 TraceCheckUtils]: 51: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,505 INFO L290 TraceCheckUtils]: 50: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:55,505 INFO L290 TraceCheckUtils]: 49: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:55,505 INFO L272 TraceCheckUtils]: 48: Hoare triple {12110#(= 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)); {11962#true} is VALID [2022-04-28 05:53:55,506 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} {11962#true} #104#return; {12110#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:53:55,506 INFO L290 TraceCheckUtils]: 46: Hoare triple {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 45: Hoare triple {12267#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12103#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 44: Hoare triple {11962#true} ~cond := #in~cond; {12267#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:55,507 INFO L272 TraceCheckUtils]: 43: Hoare triple {11962#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11962#true} {11962#true} #102#return; {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 41: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 40: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 39: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L272 TraceCheckUtils]: 38: Hoare triple {11962#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 37: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 36: Hoare triple {11962#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 35: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 34: Hoare triple {11962#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11962#true} is VALID [2022-04-28 05:53:55,507 INFO L290 TraceCheckUtils]: 33: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 32: Hoare triple {11962#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; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 31: Hoare triple {11962#true} assume !(~c~0 >= ~b~0); {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 30: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 29: Hoare triple {11962#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 28: Hoare triple {11962#true} assume !false; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 27: Hoare triple {11962#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11962#true} {11962#true} #100#return; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 25: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 24: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L272 TraceCheckUtils]: 22: Hoare triple {11962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11962#true} {11962#true} #98#return; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 20: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 19: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 18: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L272 TraceCheckUtils]: 17: Hoare triple {11962#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11962#true} {11962#true} #96#return; {11962#true} is VALID [2022-04-28 05:53:55,508 INFO L290 TraceCheckUtils]: 15: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 14: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 13: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L272 TraceCheckUtils]: 12: Hoare triple {11962#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 11: Hoare triple {11962#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11962#true} {11962#true} #94#return; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 9: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 8: Hoare triple {11962#true} assume !(0 == ~cond); {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 7: Hoare triple {11962#true} ~cond := #in~cond; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L272 TraceCheckUtils]: 6: Hoare triple {11962#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 5: Hoare triple {11962#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; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L272 TraceCheckUtils]: 4: Hoare triple {11962#true} call #t~ret6 := main(); {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11962#true} {11962#true} #112#return; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 2: Hoare triple {11962#true} assume true; {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L290 TraceCheckUtils]: 1: Hoare triple {11962#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); {11962#true} is VALID [2022-04-28 05:53:55,509 INFO L272 TraceCheckUtils]: 0: Hoare triple {11962#true} call ULTIMATE.init(); {11962#true} is VALID [2022-04-28 05:53:55,510 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-28 05:53:55,510 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:55,510 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [296383167] [2022-04-28 05:53:55,510 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:55,510 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1013354067] [2022-04-28 05:53:55,510 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1013354067] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:55,510 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:55,510 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:53:55,510 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:55,510 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1830418456] [2022-04-28 05:53:55,510 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1830418456] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:55,510 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:55,510 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:53:55,510 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [608190916] [2022-04-28 05:53:55,510 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:55,511 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-28 05:53:55,511 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:55,511 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:55,550 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:53:55,550 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:53:55,551 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:55,551 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:53:55,551 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:53:55,551 INFO L87 Difference]: Start difference. First operand 212 states and 299 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:56,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:56,330 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-04-28 05:53:56,330 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:53:56,330 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-28 05:53:56,331 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:56,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:56,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-28 05:53:56,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:56,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-28 05:53:56,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 58 transitions. [2022-04-28 05:53:56,390 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:53:56,394 INFO L225 Difference]: With dead ends: 226 [2022-04-28 05:53:56,394 INFO L226 Difference]: Without dead ends: 224 [2022-04-28 05:53:56,394 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 136 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:53:56,394 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 22 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 96 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 146 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 96 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:56,395 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [24 Valid, 146 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 96 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:53:56,395 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-28 05:53:56,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 224. [2022-04-28 05:53:56,919 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:56,919 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:56,919 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:56,920 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:56,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:56,924 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-28 05:53:56,924 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:53:56,924 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:56,925 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:56,925 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-28 05:53:56,925 INFO L87 Difference]: Start difference. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-28 05:53:56,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:56,929 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-28 05:53:56,929 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:53:56,930 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:56,930 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:56,930 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:56,930 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:56,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-28 05:53:56,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 308 transitions. [2022-04-28 05:53:56,935 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 308 transitions. Word has length 72 [2022-04-28 05:53:56,935 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:56,935 INFO L495 AbstractCegarLoop]: Abstraction has 224 states and 308 transitions. [2022-04-28 05:53:56,935 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:53:56,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 308 transitions. [2022-04-28 05:53:57,430 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 308 edges. 308 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:57,430 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-28 05:53:57,431 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-28 05:53:57,431 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:57,431 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:57,447 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:53:57,631 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:53:57,632 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:57,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:57,632 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 3 times [2022-04-28 05:53:57,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:57,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [318989376] [2022-04-28 05:53:57,632 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:57,632 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 4 times [2022-04-28 05:53:57,633 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:57,633 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1680263425] [2022-04-28 05:53:57,633 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:57,633 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:57,641 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:57,642 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [811480456] [2022-04-28 05:53:57,642 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:57,642 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:57,642 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:57,643 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:53:57,643 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:53:57,680 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:57,680 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:57,681 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 05:53:57,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:57,696 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:57,859 INFO L272 TraceCheckUtils]: 0: Hoare triple {13757#true} call ULTIMATE.init(); {13757#true} is VALID [2022-04-28 05:53:57,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {13757#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); {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13757#true} {13757#true} #112#return; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L272 TraceCheckUtils]: 4: Hoare triple {13757#true} call #t~ret6 := main(); {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {13757#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; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L272 TraceCheckUtils]: 6: Hoare triple {13757#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 7: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 9: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13757#true} {13757#true} #94#return; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 11: Hoare triple {13757#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L272 TraceCheckUtils]: 12: Hoare triple {13757#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 13: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 14: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 15: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13757#true} {13757#true} #96#return; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L272 TraceCheckUtils]: 17: Hoare triple {13757#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 18: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,860 INFO L290 TraceCheckUtils]: 19: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 20: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13757#true} {13757#true} #98#return; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L272 TraceCheckUtils]: 22: Hoare triple {13757#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 23: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 24: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 25: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13757#true} {13757#true} #100#return; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 27: Hoare triple {13757#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 28: Hoare triple {13757#true} assume !false; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 29: Hoare triple {13757#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 30: Hoare triple {13757#true} assume !false; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 31: Hoare triple {13757#true} assume !(~c~0 >= ~b~0); {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 32: Hoare triple {13757#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; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 33: Hoare triple {13757#true} assume !false; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 34: Hoare triple {13757#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13757#true} is VALID [2022-04-28 05:53:57,861 INFO L290 TraceCheckUtils]: 35: Hoare triple {13757#true} assume !false; {13757#true} is VALID [2022-04-28 05:53:57,862 INFO L290 TraceCheckUtils]: 36: Hoare triple {13757#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13870#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:53:57,862 INFO L290 TraceCheckUtils]: 37: Hoare triple {13870#(<= main_~v~0 main_~b~0)} assume !false; {13870#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:53:57,862 INFO L272 TraceCheckUtils]: 38: Hoare triple {13870#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,862 INFO L290 TraceCheckUtils]: 39: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,862 INFO L290 TraceCheckUtils]: 40: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,862 INFO L290 TraceCheckUtils]: 41: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,863 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13757#true} {13870#(<= main_~v~0 main_~b~0)} #102#return; {13870#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:53:57,863 INFO L272 TraceCheckUtils]: 43: Hoare triple {13870#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,863 INFO L290 TraceCheckUtils]: 44: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,863 INFO L290 TraceCheckUtils]: 45: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,863 INFO L290 TraceCheckUtils]: 46: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,863 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13757#true} {13870#(<= main_~v~0 main_~b~0)} #104#return; {13870#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:53:57,864 INFO L272 TraceCheckUtils]: 48: Hoare triple {13870#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,864 INFO L290 TraceCheckUtils]: 49: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,864 INFO L290 TraceCheckUtils]: 50: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,864 INFO L290 TraceCheckUtils]: 51: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,864 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13757#true} {13870#(<= main_~v~0 main_~b~0)} #106#return; {13870#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:53:57,864 INFO L272 TraceCheckUtils]: 53: Hoare triple {13870#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {13757#true} is VALID [2022-04-28 05:53:57,864 INFO L290 TraceCheckUtils]: 54: Hoare triple {13757#true} ~cond := #in~cond; {13757#true} is VALID [2022-04-28 05:53:57,864 INFO L290 TraceCheckUtils]: 55: Hoare triple {13757#true} assume !(0 == ~cond); {13757#true} is VALID [2022-04-28 05:53:57,864 INFO L290 TraceCheckUtils]: 56: Hoare triple {13757#true} assume true; {13757#true} is VALID [2022-04-28 05:53:57,866 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {13757#true} {13870#(<= main_~v~0 main_~b~0)} #108#return; {13870#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:53:57,866 INFO L290 TraceCheckUtils]: 58: Hoare triple {13870#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {13937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 05:53:57,867 INFO L290 TraceCheckUtils]: 59: Hoare triple {13937#(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; {13941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:53:57,867 INFO L290 TraceCheckUtils]: 60: Hoare triple {13941#(< main_~c~0 main_~b~0)} assume !false; {13941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:53:57,867 INFO L290 TraceCheckUtils]: 61: Hoare triple {13941#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13758#false} is VALID [2022-04-28 05:53:57,867 INFO L290 TraceCheckUtils]: 62: Hoare triple {13758#false} assume !false; {13758#false} is VALID [2022-04-28 05:53:57,867 INFO L272 TraceCheckUtils]: 63: Hoare triple {13758#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13758#false} is VALID [2022-04-28 05:53:57,867 INFO L290 TraceCheckUtils]: 64: Hoare triple {13758#false} ~cond := #in~cond; {13758#false} is VALID [2022-04-28 05:53:57,867 INFO L290 TraceCheckUtils]: 65: Hoare triple {13758#false} assume !(0 == ~cond); {13758#false} is VALID [2022-04-28 05:53:57,867 INFO L290 TraceCheckUtils]: 66: Hoare triple {13758#false} assume true; {13758#false} is VALID [2022-04-28 05:53:57,867 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13758#false} {13758#false} #102#return; {13758#false} is VALID [2022-04-28 05:53:57,867 INFO L272 TraceCheckUtils]: 68: Hoare triple {13758#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L290 TraceCheckUtils]: 69: Hoare triple {13758#false} ~cond := #in~cond; {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L290 TraceCheckUtils]: 70: Hoare triple {13758#false} assume !(0 == ~cond); {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L290 TraceCheckUtils]: 71: Hoare triple {13758#false} assume true; {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13758#false} {13758#false} #104#return; {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L272 TraceCheckUtils]: 73: Hoare triple {13758#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L290 TraceCheckUtils]: 74: Hoare triple {13758#false} ~cond := #in~cond; {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L290 TraceCheckUtils]: 75: Hoare triple {13758#false} assume 0 == ~cond; {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L290 TraceCheckUtils]: 76: Hoare triple {13758#false} assume !false; {13758#false} is VALID [2022-04-28 05:53:57,868 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 05:53:57,868 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:53:57,868 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:57,868 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1680263425] [2022-04-28 05:53:57,868 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:57,868 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [811480456] [2022-04-28 05:53:57,868 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [811480456] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:57,869 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:57,869 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:57,869 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:57,869 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [318989376] [2022-04-28 05:53:57,869 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [318989376] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:57,869 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:57,869 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:53:57,869 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1194112207] [2022-04-28 05:53:57,869 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:57,869 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-28 05:53:57,870 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:57,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:57,903 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:53:57,903 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:53:57,903 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:57,903 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:53:57,904 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:53:57,904 INFO L87 Difference]: Start difference. First operand 224 states and 308 transitions. Second operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:58,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:58,678 INFO L93 Difference]: Finished difference Result 367 states and 500 transitions. [2022-04-28 05:53:58,678 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:53:58,678 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-28 05:53:58,678 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:58,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:58,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-28 05:53:58,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:58,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-28 05:53:58,680 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 85 transitions. [2022-04-28 05:53:58,738 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:53:58,742 INFO L225 Difference]: With dead ends: 367 [2022-04-28 05:53:58,742 INFO L226 Difference]: Without dead ends: 230 [2022-04-28 05:53:58,742 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 74 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:53:58,743 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 3 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:58,743 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [3 Valid, 109 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:53:58,743 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-28 05:53:59,246 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 214. [2022-04-28 05:53:59,246 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:59,247 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:53:59,247 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:53:59,253 INFO L87 Difference]: Start difference. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:53:59,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:59,257 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-28 05:53:59,257 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-28 05:53:59,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:59,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:59,258 INFO L74 IsIncluded]: Start isIncluded. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-28 05:53:59,258 INFO L87 Difference]: Start difference. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-28 05:53:59,262 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:59,262 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-28 05:53:59,262 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-28 05:53:59,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:59,263 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:59,263 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:59,263 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:59,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:53:59,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 289 transitions. [2022-04-28 05:53:59,267 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 289 transitions. Word has length 77 [2022-04-28 05:53:59,267 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:59,267 INFO L495 AbstractCegarLoop]: Abstraction has 214 states and 289 transitions. [2022-04-28 05:53:59,267 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:59,267 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 214 states and 289 transitions. [2022-04-28 05:53:59,773 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 289 edges. 289 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:59,773 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 289 transitions. [2022-04-28 05:53:59,773 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-28 05:53:59,773 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:59,773 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:59,789 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:53:59,974 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:53:59,974 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:59,975 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:59,975 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 5 times [2022-04-28 05:53:59,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:59,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [643393080] [2022-04-28 05:53:59,975 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:59,975 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 6 times [2022-04-28 05:53:59,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:59,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1290560366] [2022-04-28 05:53:59,975 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:59,975 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:59,985 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:59,985 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1483032909] [2022-04-28 05:53:59,985 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:53:59,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:59,985 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:59,986 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:53:59,987 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:54:00,034 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:54:00,034 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:00,036 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 71 conjunts are in the unsatisfiable core [2022-04-28 05:54:00,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:00,054 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:00,971 INFO L272 TraceCheckUtils]: 0: Hoare triple {15617#true} call ULTIMATE.init(); {15617#true} is VALID [2022-04-28 05:54:00,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {15617#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); {15617#true} is VALID [2022-04-28 05:54:00,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,971 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15617#true} {15617#true} #112#return; {15617#true} is VALID [2022-04-28 05:54:00,971 INFO L272 TraceCheckUtils]: 4: Hoare triple {15617#true} call #t~ret6 := main(); {15617#true} is VALID [2022-04-28 05:54:00,971 INFO L290 TraceCheckUtils]: 5: Hoare triple {15617#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; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L272 TraceCheckUtils]: 6: Hoare triple {15617#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 7: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 8: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 9: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15617#true} {15617#true} #94#return; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 11: Hoare triple {15617#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L272 TraceCheckUtils]: 12: Hoare triple {15617#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 13: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 14: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 15: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15617#true} {15617#true} #96#return; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L272 TraceCheckUtils]: 17: Hoare triple {15617#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 18: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 19: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 20: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15617#true} {15617#true} #98#return; {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L272 TraceCheckUtils]: 22: Hoare triple {15617#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,972 INFO L290 TraceCheckUtils]: 23: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:00,973 INFO L290 TraceCheckUtils]: 24: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:00,973 INFO L290 TraceCheckUtils]: 25: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,973 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15617#true} {15617#true} #100#return; {15617#true} is VALID [2022-04-28 05:54:00,973 INFO L290 TraceCheckUtils]: 27: Hoare triple {15617#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15703#(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 05:54:00,973 INFO L290 TraceCheckUtils]: 28: Hoare triple {15703#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {15703#(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 05:54:00,974 INFO L290 TraceCheckUtils]: 29: Hoare triple {15703#(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; {15710#(and (= main_~r~0 0) (= 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 05:54:00,974 INFO L290 TraceCheckUtils]: 30: Hoare triple {15710#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {15710#(and (= main_~r~0 0) (= 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 05:54:00,974 INFO L290 TraceCheckUtils]: 31: Hoare triple {15710#(and (= main_~r~0 0) (= 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); {15710#(and (= main_~r~0 0) (= 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 05:54:00,975 INFO L290 TraceCheckUtils]: 32: Hoare triple {15710#(and (= main_~r~0 0) (= 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; {15720#(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 05:54:00,975 INFO L290 TraceCheckUtils]: 33: Hoare triple {15720#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {15720#(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 05:54:00,976 INFO L290 TraceCheckUtils]: 34: Hoare triple {15720#(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; {15727#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:54:00,976 INFO L290 TraceCheckUtils]: 35: Hoare triple {15727#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !false; {15727#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 05:54:00,976 INFO L290 TraceCheckUtils]: 36: Hoare triple {15727#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:54:00,977 INFO L290 TraceCheckUtils]: 37: Hoare triple {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:54:00,977 INFO L272 TraceCheckUtils]: 38: Hoare triple {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,977 INFO L290 TraceCheckUtils]: 39: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:00,977 INFO L290 TraceCheckUtils]: 40: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:00,977 INFO L290 TraceCheckUtils]: 41: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,978 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15617#true} {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:54:00,978 INFO L272 TraceCheckUtils]: 43: Hoare triple {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,978 INFO L290 TraceCheckUtils]: 44: Hoare triple {15617#true} ~cond := #in~cond; {15759#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:00,978 INFO L290 TraceCheckUtils]: 45: Hoare triple {15759#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:00,979 INFO L290 TraceCheckUtils]: 46: Hoare triple {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:00,980 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} {15734#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:54:00,980 INFO L272 TraceCheckUtils]: 48: Hoare triple {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,980 INFO L290 TraceCheckUtils]: 49: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:00,980 INFO L290 TraceCheckUtils]: 50: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:00,980 INFO L290 TraceCheckUtils]: 51: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,980 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15617#true} {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #106#return; {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:54:00,981 INFO L272 TraceCheckUtils]: 53: Hoare triple {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:00,981 INFO L290 TraceCheckUtils]: 54: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:00,981 INFO L290 TraceCheckUtils]: 55: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:00,981 INFO L290 TraceCheckUtils]: 56: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:00,981 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15617#true} {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #108#return; {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:54:00,982 INFO L290 TraceCheckUtils]: 58: Hoare triple {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 05:54:00,982 INFO L290 TraceCheckUtils]: 59: Hoare triple {15770#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15807#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:54:00,983 INFO L290 TraceCheckUtils]: 60: Hoare triple {15807#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {15807#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:54:00,983 INFO L290 TraceCheckUtils]: 61: Hoare triple {15807#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {15807#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:54:00,984 INFO L290 TraceCheckUtils]: 62: Hoare triple {15807#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:54:00,984 INFO L290 TraceCheckUtils]: 63: Hoare triple {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:54:00,985 INFO L290 TraceCheckUtils]: 64: Hoare triple {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~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; {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:54:00,985 INFO L290 TraceCheckUtils]: 65: Hoare triple {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:54:00,986 INFO L290 TraceCheckUtils]: 66: Hoare triple {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~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; {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:54:00,986 INFO L290 TraceCheckUtils]: 67: Hoare triple {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:54:00,986 INFO L272 TraceCheckUtils]: 68: Hoare triple {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~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)); {15617#true} is VALID [2022-04-28 05:54:00,986 INFO L290 TraceCheckUtils]: 69: Hoare triple {15617#true} ~cond := #in~cond; {15759#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:00,987 INFO L290 TraceCheckUtils]: 70: Hoare triple {15759#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:00,987 INFO L290 TraceCheckUtils]: 71: Hoare triple {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:00,989 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} {15817#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~y~0)) (= (+ main_~q~0 main_~p~0) 0))} #102#return; {15848#(and (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0) (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))))} is VALID [2022-04-28 05:54:00,989 INFO L272 TraceCheckUtils]: 73: Hoare triple {15848#(and (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0) (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15852#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:00,990 INFO L290 TraceCheckUtils]: 74: Hoare triple {15852#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15856#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:00,990 INFO L290 TraceCheckUtils]: 75: Hoare triple {15856#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15618#false} is VALID [2022-04-28 05:54:00,990 INFO L290 TraceCheckUtils]: 76: Hoare triple {15618#false} assume !false; {15618#false} is VALID [2022-04-28 05:54:00,990 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 20 proven. 30 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-28 05:54:00,990 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:48,984 INFO L290 TraceCheckUtils]: 76: Hoare triple {15618#false} assume !false; {15618#false} is VALID [2022-04-28 05:54:48,985 INFO L290 TraceCheckUtils]: 75: Hoare triple {15856#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15618#false} is VALID [2022-04-28 05:54:48,985 INFO L290 TraceCheckUtils]: 74: Hoare triple {15852#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15856#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:48,986 INFO L272 TraceCheckUtils]: 73: Hoare triple {15872#(= 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)); {15852#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:48,986 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} {15876#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #102#return; {15872#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:54:48,987 INFO L290 TraceCheckUtils]: 71: Hoare triple {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:48,987 INFO L290 TraceCheckUtils]: 70: Hoare triple {15886#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15763#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:48,987 INFO L290 TraceCheckUtils]: 69: Hoare triple {15617#true} ~cond := #in~cond; {15886#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:54:48,987 INFO L272 TraceCheckUtils]: 68: Hoare triple {15876#(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)); {15617#true} is VALID [2022-04-28 05:54:48,988 INFO L290 TraceCheckUtils]: 67: Hoare triple {15876#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {15876#(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 05:54:48,988 INFO L290 TraceCheckUtils]: 66: Hoare triple {15876#(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; {15876#(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 05:54:48,988 INFO L290 TraceCheckUtils]: 65: Hoare triple {15876#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {15876#(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 05:54:48,989 INFO L290 TraceCheckUtils]: 64: Hoare triple {15876#(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; {15876#(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 05:54:48,989 INFO L290 TraceCheckUtils]: 63: Hoare triple {15876#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {15876#(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 05:54:49,005 INFO L290 TraceCheckUtils]: 62: Hoare triple {15908#(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; {15876#(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 05:54:49,005 INFO L290 TraceCheckUtils]: 61: Hoare triple {15908#(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); {15908#(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 05:54:49,006 INFO L290 TraceCheckUtils]: 60: Hoare triple {15908#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {15908#(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 05:54:49,010 INFO L290 TraceCheckUtils]: 59: Hoare triple {15918#(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; {15908#(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 05:54:49,011 INFO L290 TraceCheckUtils]: 58: Hoare triple {15918#(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); {15918#(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 05:54:49,012 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15617#true} {15918#(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)))))} #108#return; {15918#(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 05:54:49,012 INFO L290 TraceCheckUtils]: 56: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:49,012 INFO L290 TraceCheckUtils]: 55: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:49,012 INFO L290 TraceCheckUtils]: 54: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:49,012 INFO L272 TraceCheckUtils]: 53: Hoare triple {15918#(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)); {15617#true} is VALID [2022-04-28 05:54:49,012 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15617#true} {15918#(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)))))} #106#return; {15918#(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 05:54:49,013 INFO L290 TraceCheckUtils]: 51: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:49,013 INFO L290 TraceCheckUtils]: 50: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:49,013 INFO L290 TraceCheckUtils]: 49: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:49,013 INFO L272 TraceCheckUtils]: 48: Hoare triple {15918#(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)); {15617#true} is VALID [2022-04-28 05:54:49,013 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15617#true} {15918#(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; {15918#(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 05:54:49,013 INFO L290 TraceCheckUtils]: 46: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:49,013 INFO L290 TraceCheckUtils]: 45: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:49,013 INFO L290 TraceCheckUtils]: 44: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:49,014 INFO L272 TraceCheckUtils]: 43: Hoare triple {15918#(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)); {15617#true} is VALID [2022-04-28 05:54:49,014 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15617#true} {15918#(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; {15918#(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 05:54:49,014 INFO L290 TraceCheckUtils]: 41: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:49,014 INFO L290 TraceCheckUtils]: 40: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:49,014 INFO L290 TraceCheckUtils]: 39: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:49,014 INFO L272 TraceCheckUtils]: 38: Hoare triple {15918#(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 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:49,015 INFO L290 TraceCheckUtils]: 37: Hoare triple {15918#(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 !false; {15918#(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 05:54:49,016 INFO L290 TraceCheckUtils]: 36: Hoare triple {15908#(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);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15918#(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 05:54:49,016 INFO L290 TraceCheckUtils]: 35: Hoare triple {15908#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {15908#(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 05:54:49,017 INFO L290 TraceCheckUtils]: 34: Hoare triple {15994#(or (= 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 !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15908#(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 05:54:49,017 INFO L290 TraceCheckUtils]: 33: Hoare triple {15994#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {15994#(or (= 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 05:54:51,018 WARN L290 TraceCheckUtils]: 32: Hoare triple {16001#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (and (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15994#(or (= 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 UNKNOWN [2022-04-28 05:54:51,019 INFO L290 TraceCheckUtils]: 31: Hoare triple {16001#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (and (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)))))} assume !(~c~0 >= ~b~0); {16001#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (and (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)))))} is VALID [2022-04-28 05:54:51,020 INFO L290 TraceCheckUtils]: 30: Hoare triple {16001#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (and (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)))))} assume !false; {16001#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (and (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)))))} is VALID [2022-04-28 05:54:51,020 INFO L290 TraceCheckUtils]: 29: Hoare triple {16011#(or (and (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (or (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 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; {16001#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (and (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)))))} is VALID [2022-04-28 05:54:51,021 INFO L290 TraceCheckUtils]: 28: Hoare triple {16011#(or (and (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (or (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {16011#(or (and (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (or (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:51,021 INFO L290 TraceCheckUtils]: 27: Hoare triple {15617#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16011#(or (and (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (or (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:54:51,021 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15617#true} {15617#true} #100#return; {15617#true} is VALID [2022-04-28 05:54:51,021 INFO L290 TraceCheckUtils]: 25: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:51,021 INFO L290 TraceCheckUtils]: 24: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:51,021 INFO L290 TraceCheckUtils]: 23: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:51,021 INFO L272 TraceCheckUtils]: 22: Hoare triple {15617#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:51,021 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15617#true} {15617#true} #98#return; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 20: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 19: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L272 TraceCheckUtils]: 17: Hoare triple {15617#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15617#true} {15617#true} #96#return; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 15: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L272 TraceCheckUtils]: 12: Hoare triple {15617#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 11: Hoare triple {15617#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15617#true} {15617#true} #94#return; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 9: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 8: Hoare triple {15617#true} assume !(0 == ~cond); {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 7: Hoare triple {15617#true} ~cond := #in~cond; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L272 TraceCheckUtils]: 6: Hoare triple {15617#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L290 TraceCheckUtils]: 5: Hoare triple {15617#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; {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L272 TraceCheckUtils]: 4: Hoare triple {15617#true} call #t~ret6 := main(); {15617#true} is VALID [2022-04-28 05:54:51,022 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15617#true} {15617#true} #112#return; {15617#true} is VALID [2022-04-28 05:54:51,023 INFO L290 TraceCheckUtils]: 2: Hoare triple {15617#true} assume true; {15617#true} is VALID [2022-04-28 05:54:51,023 INFO L290 TraceCheckUtils]: 1: Hoare triple {15617#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); {15617#true} is VALID [2022-04-28 05:54:51,023 INFO L272 TraceCheckUtils]: 0: Hoare triple {15617#true} call ULTIMATE.init(); {15617#true} is VALID [2022-04-28 05:54:51,023 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 21 proven. 21 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2022-04-28 05:54:51,023 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:51,023 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1290560366] [2022-04-28 05:54:51,023 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:51,023 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1483032909] [2022-04-28 05:54:51,023 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1483032909] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:54:51,023 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:54:51,023 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 13] total 23 [2022-04-28 05:54:51,024 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:51,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [643393080] [2022-04-28 05:54:51,024 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [643393080] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:51,024 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:51,024 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:54:51,024 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1146599795] [2022-04-28 05:54:51,024 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:51,024 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.642857142857143) internal successors, (37), 13 states have internal predecessors, (37), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-28 05:54:51,024 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:51,024 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 2.642857142857143) internal successors, (37), 13 states have internal predecessors, (37), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:54:51,074 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:51,074 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:54:51,074 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:51,075 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:54:51,075 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=419, Unknown=1, NotChecked=0, Total=506 [2022-04-28 05:54:51,075 INFO L87 Difference]: Start difference. First operand 214 states and 289 transitions. Second operand has 15 states, 14 states have (on average 2.642857142857143) internal successors, (37), 13 states have internal predecessors, (37), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:54:53,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:53,722 INFO L93 Difference]: Finished difference Result 285 states and 377 transitions. [2022-04-28 05:54:53,722 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:54:53,722 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.642857142857143) internal successors, (37), 13 states have internal predecessors, (37), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-28 05:54:53,722 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:53,722 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.642857142857143) internal successors, (37), 13 states have internal predecessors, (37), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:54:53,724 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-28 05:54:53,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.642857142857143) internal successors, (37), 13 states have internal predecessors, (37), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:54:53,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-28 05:54:53,726 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 148 transitions. [2022-04-28 05:54:53,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:53,876 INFO L225 Difference]: With dead ends: 285 [2022-04-28 05:54:53,876 INFO L226 Difference]: Without dead ends: 283 [2022-04-28 05:54:53,876 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 128 SyntacticMatches, 4 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 123 ImplicationChecksByTransitivity, 3.0s TimeCoverageRelationStatistics Valid=147, Invalid=722, Unknown=1, NotChecked=0, Total=870 [2022-04-28 05:54:53,877 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 61 mSDsluCounter, 281 mSDsCounter, 0 mSdLazyCounter, 690 mSolverCounterSat, 54 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 744 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 54 IncrementalHoareTripleChecker+Valid, 690 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 05:54:53,877 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 331 Invalid, 744 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [54 Valid, 690 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 05:54:53,877 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-04-28 05:54:54,387 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 222. [2022-04-28 05:54:54,387 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:54,387 INFO L82 GeneralOperation]: Start isEquivalent. First operand 283 states. Second operand has 222 states, 132 states have (on average 1.1742424242424243) internal successors, (155), 133 states have internal predecessors, (155), 71 states have call successors, (71), 19 states have call predecessors, (71), 18 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:54:54,388 INFO L74 IsIncluded]: Start isIncluded. First operand 283 states. Second operand has 222 states, 132 states have (on average 1.1742424242424243) internal successors, (155), 133 states have internal predecessors, (155), 71 states have call successors, (71), 19 states have call predecessors, (71), 18 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:54:54,388 INFO L87 Difference]: Start difference. First operand 283 states. Second operand has 222 states, 132 states have (on average 1.1742424242424243) internal successors, (155), 133 states have internal predecessors, (155), 71 states have call successors, (71), 19 states have call predecessors, (71), 18 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:54:54,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:54,394 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-28 05:54:54,394 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-28 05:54:54,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:54,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:54,395 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 132 states have (on average 1.1742424242424243) internal successors, (155), 133 states have internal predecessors, (155), 71 states have call successors, (71), 19 states have call predecessors, (71), 18 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 283 states. [2022-04-28 05:54:54,396 INFO L87 Difference]: Start difference. First operand has 222 states, 132 states have (on average 1.1742424242424243) internal successors, (155), 133 states have internal predecessors, (155), 71 states have call successors, (71), 19 states have call predecessors, (71), 18 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 283 states. [2022-04-28 05:54:54,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:54,402 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-28 05:54:54,402 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-28 05:54:54,403 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:54,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:54,403 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:54,403 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:54,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 132 states have (on average 1.1742424242424243) internal successors, (155), 133 states have internal predecessors, (155), 71 states have call successors, (71), 19 states have call predecessors, (71), 18 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-28 05:54:54,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 295 transitions. [2022-04-28 05:54:54,409 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 295 transitions. Word has length 77 [2022-04-28 05:54:54,409 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:54,409 INFO L495 AbstractCegarLoop]: Abstraction has 222 states and 295 transitions. [2022-04-28 05:54:54,409 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 2.642857142857143) internal successors, (37), 13 states have internal predecessors, (37), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 05:54:54,409 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 222 states and 295 transitions. [2022-04-28 05:54:55,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 295 edges. 295 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:55,014 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 295 transitions. [2022-04-28 05:54:55,014 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-28 05:54:55,014 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:55,015 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:54:55,030 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:54:55,227 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:54:55,227 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:55,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:55,228 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 1 times [2022-04-28 05:54:55,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:55,228 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2003719200] [2022-04-28 05:54:55,228 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:55,228 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 2 times [2022-04-28 05:54:55,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:55,228 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1092140357] [2022-04-28 05:54:55,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:55,228 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:55,237 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:55,237 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [107399686] [2022-04-28 05:54:55,237 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:54:55,238 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:55,238 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:55,238 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:54:55,253 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:54:55,294 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:54:55,294 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:55,295 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 61 conjunts are in the unsatisfiable core [2022-04-28 05:54:55,308 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:55,310 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:56,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {17695#true} call ULTIMATE.init(); {17695#true} is VALID [2022-04-28 05:54:56,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {17695#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); {17695#true} is VALID [2022-04-28 05:54:56,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17695#true} {17695#true} #112#return; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L272 TraceCheckUtils]: 4: Hoare triple {17695#true} call #t~ret6 := main(); {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 5: Hoare triple {17695#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; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L272 TraceCheckUtils]: 6: Hoare triple {17695#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 7: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 8: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 9: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17695#true} {17695#true} #94#return; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 11: Hoare triple {17695#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L272 TraceCheckUtils]: 12: Hoare triple {17695#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 14: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 15: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17695#true} {17695#true} #96#return; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L272 TraceCheckUtils]: 17: Hoare triple {17695#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 18: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 19: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,070 INFO L290 TraceCheckUtils]: 20: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,071 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17695#true} {17695#true} #98#return; {17695#true} is VALID [2022-04-28 05:54:56,071 INFO L272 TraceCheckUtils]: 22: Hoare triple {17695#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:54:56,071 INFO L290 TraceCheckUtils]: 23: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,071 INFO L290 TraceCheckUtils]: 24: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,071 INFO L290 TraceCheckUtils]: 25: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,071 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17695#true} {17695#true} #100#return; {17695#true} is VALID [2022-04-28 05:54:56,071 INFO L290 TraceCheckUtils]: 27: Hoare triple {17695#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17781#(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:54:56,072 INFO L290 TraceCheckUtils]: 28: Hoare triple {17781#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17781#(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:54:56,072 INFO L290 TraceCheckUtils]: 29: Hoare triple {17781#(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; {17788#(and (= main_~r~0 0) (= 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:54:56,073 INFO L290 TraceCheckUtils]: 30: Hoare triple {17788#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {17788#(and (= main_~r~0 0) (= 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:54:56,073 INFO L290 TraceCheckUtils]: 31: Hoare triple {17788#(and (= main_~r~0 0) (= 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; {17795#(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:54:56,073 INFO L290 TraceCheckUtils]: 32: Hoare triple {17795#(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 !false; {17795#(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:54:56,073 INFO L272 TraceCheckUtils]: 33: Hoare triple {17795#(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)); {17695#true} is VALID [2022-04-28 05:54:56,073 INFO L290 TraceCheckUtils]: 34: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,074 INFO L290 TraceCheckUtils]: 35: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,074 INFO L290 TraceCheckUtils]: 36: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,076 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17695#true} {17795#(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; {17795#(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:54:56,076 INFO L272 TraceCheckUtils]: 38: Hoare triple {17795#(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)); {17695#true} is VALID [2022-04-28 05:54:56,076 INFO L290 TraceCheckUtils]: 39: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,076 INFO L290 TraceCheckUtils]: 40: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,076 INFO L290 TraceCheckUtils]: 41: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,077 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17695#true} {17795#(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; {17795#(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:54:56,077 INFO L272 TraceCheckUtils]: 43: Hoare triple {17795#(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)); {17695#true} is VALID [2022-04-28 05:54:56,077 INFO L290 TraceCheckUtils]: 44: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,077 INFO L290 TraceCheckUtils]: 45: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,077 INFO L290 TraceCheckUtils]: 46: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,078 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17695#true} {17795#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17795#(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:54:56,078 INFO L272 TraceCheckUtils]: 48: Hoare triple {17795#(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)); {17695#true} is VALID [2022-04-28 05:54:56,078 INFO L290 TraceCheckUtils]: 49: Hoare triple {17695#true} ~cond := #in~cond; {17850#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:56,079 INFO L290 TraceCheckUtils]: 50: Hoare triple {17850#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:56,079 INFO L290 TraceCheckUtils]: 51: Hoare triple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:56,080 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} {17795#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17795#(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:54:56,080 INFO L290 TraceCheckUtils]: 53: Hoare triple {17795#(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; {17864#(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:54:56,081 INFO L290 TraceCheckUtils]: 54: Hoare triple {17864#(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 !false; {17864#(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:54:56,081 INFO L272 TraceCheckUtils]: 55: Hoare triple {17864#(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)); {17695#true} is VALID [2022-04-28 05:54:56,081 INFO L290 TraceCheckUtils]: 56: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,081 INFO L290 TraceCheckUtils]: 57: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,081 INFO L290 TraceCheckUtils]: 58: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,082 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17695#true} {17864#(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; {17864#(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:54:56,082 INFO L272 TraceCheckUtils]: 60: Hoare triple {17864#(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)); {17695#true} is VALID [2022-04-28 05:54:56,082 INFO L290 TraceCheckUtils]: 61: Hoare triple {17695#true} ~cond := #in~cond; {17850#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:56,083 INFO L290 TraceCheckUtils]: 62: Hoare triple {17850#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:56,083 INFO L290 TraceCheckUtils]: 63: Hoare triple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:56,084 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} {17864#(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; {17864#(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:54:56,084 INFO L272 TraceCheckUtils]: 65: Hoare triple {17864#(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)); {17695#true} is VALID [2022-04-28 05:54:56,084 INFO L290 TraceCheckUtils]: 66: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,084 INFO L290 TraceCheckUtils]: 67: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,084 INFO L290 TraceCheckUtils]: 68: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,085 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17695#true} {17864#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17864#(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:54:56,085 INFO L272 TraceCheckUtils]: 70: Hoare triple {17864#(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)); {17695#true} is VALID [2022-04-28 05:54:56,085 INFO L290 TraceCheckUtils]: 71: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:54:56,085 INFO L290 TraceCheckUtils]: 72: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:54:56,085 INFO L290 TraceCheckUtils]: 73: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:54:56,086 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17695#true} {17864#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17864#(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:54:56,086 INFO L290 TraceCheckUtils]: 75: Hoare triple {17864#(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); {17864#(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:54:56,087 INFO L290 TraceCheckUtils]: 76: Hoare triple {17864#(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; {17934#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:54:56,087 INFO L290 TraceCheckUtils]: 77: Hoare triple {17934#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {17934#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:54:56,088 INFO L290 TraceCheckUtils]: 78: Hoare triple {17934#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {17934#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:54:56,088 INFO L290 TraceCheckUtils]: 79: Hoare triple {17934#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17944#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 2) 0) (= main_~q~0 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-28 05:54:56,089 INFO L290 TraceCheckUtils]: 80: Hoare triple {17944#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 2) 0) (= main_~q~0 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !false; {17944#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 2) 0) (= main_~q~0 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-28 05:54:56,089 INFO L290 TraceCheckUtils]: 81: Hoare triple {17944#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 2) 0) (= main_~q~0 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !(0 != ~b~0); {17951#(and (= main_~p~0 0) (= (+ main_~x~0 (* (- 2) main_~y~0)) 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 2) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:54:56,090 INFO L272 TraceCheckUtils]: 82: Hoare triple {17951#(and (= main_~p~0 0) (= (+ main_~x~0 (* (- 2) main_~y~0)) 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 2) 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)); {17955#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:56,090 INFO L290 TraceCheckUtils]: 83: Hoare triple {17955#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17959#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:56,090 INFO L290 TraceCheckUtils]: 84: Hoare triple {17959#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17696#false} is VALID [2022-04-28 05:54:56,090 INFO L290 TraceCheckUtils]: 85: Hoare triple {17696#false} assume !false; {17696#false} is VALID [2022-04-28 05:54:56,091 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 35 proven. 27 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-28 05:54:56,091 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:57,282 INFO L290 TraceCheckUtils]: 85: Hoare triple {17696#false} assume !false; {17696#false} is VALID [2022-04-28 05:55:57,283 INFO L290 TraceCheckUtils]: 84: Hoare triple {17959#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17696#false} is VALID [2022-04-28 05:55:57,283 INFO L290 TraceCheckUtils]: 83: Hoare triple {17955#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17959#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:55:57,284 INFO L272 TraceCheckUtils]: 82: Hoare triple {17975#(= (+ (* 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)); {17955#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:55:57,284 INFO L290 TraceCheckUtils]: 81: Hoare triple {17979#(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); {17975#(= (+ (* 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:57,284 INFO L290 TraceCheckUtils]: 80: Hoare triple {17979#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {17979#(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:57,438 INFO L290 TraceCheckUtils]: 79: Hoare triple {17986#(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; {17979#(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:57,438 INFO L290 TraceCheckUtils]: 78: Hoare triple {17986#(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); {17986#(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:57,439 INFO L290 TraceCheckUtils]: 77: Hoare triple {17986#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {17986#(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:57,474 INFO L290 TraceCheckUtils]: 76: Hoare triple {17996#(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; {17986#(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:57,475 INFO L290 TraceCheckUtils]: 75: Hoare triple {17996#(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); {17996#(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:57,475 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17695#true} {17996#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {17996#(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:57,475 INFO L290 TraceCheckUtils]: 73: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,475 INFO L290 TraceCheckUtils]: 72: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,476 INFO L290 TraceCheckUtils]: 71: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,476 INFO L272 TraceCheckUtils]: 70: Hoare triple {17996#(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)); {17695#true} is VALID [2022-04-28 05:55:57,476 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17695#true} {17996#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {17996#(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:57,476 INFO L290 TraceCheckUtils]: 68: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,476 INFO L290 TraceCheckUtils]: 67: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,476 INFO L290 TraceCheckUtils]: 66: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,477 INFO L272 TraceCheckUtils]: 65: Hoare triple {17996#(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)); {17695#true} is VALID [2022-04-28 05:55:57,477 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} {18033#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {17996#(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:57,478 INFO L290 TraceCheckUtils]: 63: Hoare triple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:57,478 INFO L290 TraceCheckUtils]: 62: Hoare triple {18043#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:57,478 INFO L290 TraceCheckUtils]: 61: Hoare triple {17695#true} ~cond := #in~cond; {18043#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:57,478 INFO L272 TraceCheckUtils]: 60: Hoare triple {18033#(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)); {17695#true} is VALID [2022-04-28 05:55:57,479 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17695#true} {18033#(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))))} #102#return; {18033#(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:55:57,479 INFO L290 TraceCheckUtils]: 58: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,479 INFO L290 TraceCheckUtils]: 57: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,479 INFO L290 TraceCheckUtils]: 56: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,479 INFO L272 TraceCheckUtils]: 55: Hoare triple {18033#(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)); {17695#true} is VALID [2022-04-28 05:55:57,480 INFO L290 TraceCheckUtils]: 54: Hoare triple {18033#(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 !false; {18033#(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:55:57,564 INFO L290 TraceCheckUtils]: 53: Hoare triple {18068#(or (not (= (* main_~v~0 2) main_~c~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; {18033#(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:55:57,565 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} #108#return; {18068#(or (not (= (* main_~v~0 2) main_~c~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:57,565 INFO L290 TraceCheckUtils]: 51: Hoare triple {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:57,565 INFO L290 TraceCheckUtils]: 50: Hoare triple {18043#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17854#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:57,566 INFO L290 TraceCheckUtils]: 49: Hoare triple {17695#true} ~cond := #in~cond; {18043#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:57,566 INFO L272 TraceCheckUtils]: 48: Hoare triple {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:55:57,566 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17695#true} {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} #106#return; {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} is VALID [2022-04-28 05:55:57,566 INFO L290 TraceCheckUtils]: 46: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,567 INFO L290 TraceCheckUtils]: 45: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,567 INFO L290 TraceCheckUtils]: 44: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,567 INFO L272 TraceCheckUtils]: 43: Hoare triple {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= 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)); {17695#true} is VALID [2022-04-28 05:55:57,567 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17695#true} {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} #104#return; {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} is VALID [2022-04-28 05:55:57,567 INFO L290 TraceCheckUtils]: 41: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,567 INFO L290 TraceCheckUtils]: 40: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,568 INFO L290 TraceCheckUtils]: 39: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,568 INFO L272 TraceCheckUtils]: 38: Hoare triple {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= 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)); {17695#true} is VALID [2022-04-28 05:55:57,568 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17695#true} {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} #102#return; {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} is VALID [2022-04-28 05:55:57,568 INFO L290 TraceCheckUtils]: 36: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,568 INFO L290 TraceCheckUtils]: 35: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,568 INFO L290 TraceCheckUtils]: 34: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,569 INFO L272 TraceCheckUtils]: 33: Hoare triple {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= 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)); {17695#true} is VALID [2022-04-28 05:55:57,569 INFO L290 TraceCheckUtils]: 32: Hoare triple {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} assume !false; {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} is VALID [2022-04-28 05:55:57,570 INFO L290 TraceCheckUtils]: 31: Hoare triple {18136#(or (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; {18072#(or (not (= (* main_~v~0 2) main_~c~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))) (not (= main_~v~0 (* main_~d~0 main_~b~0))))} is VALID [2022-04-28 05:55:57,570 INFO L290 TraceCheckUtils]: 30: Hoare triple {18136#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {18136#(or (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:57,571 INFO L290 TraceCheckUtils]: 29: Hoare triple {18143#(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; {18136#(or (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:57,571 INFO L290 TraceCheckUtils]: 28: Hoare triple {18143#(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 !false; {18143#(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:55:57,572 INFO L290 TraceCheckUtils]: 27: Hoare triple {17695#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18143#(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:55:57,572 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17695#true} {17695#true} #100#return; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 25: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 24: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 23: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L272 TraceCheckUtils]: 22: Hoare triple {17695#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17695#true} {17695#true} #98#return; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 20: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 19: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 18: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L272 TraceCheckUtils]: 17: Hoare triple {17695#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17695#true} {17695#true} #96#return; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 15: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 14: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 13: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L272 TraceCheckUtils]: 12: Hoare triple {17695#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:55:57,572 INFO L290 TraceCheckUtils]: 11: Hoare triple {17695#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17695#true} {17695#true} #94#return; {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L290 TraceCheckUtils]: 9: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L290 TraceCheckUtils]: 8: Hoare triple {17695#true} assume !(0 == ~cond); {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L290 TraceCheckUtils]: 7: Hoare triple {17695#true} ~cond := #in~cond; {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L272 TraceCheckUtils]: 6: Hoare triple {17695#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L290 TraceCheckUtils]: 5: Hoare triple {17695#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; {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L272 TraceCheckUtils]: 4: Hoare triple {17695#true} call #t~ret6 := main(); {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17695#true} {17695#true} #112#return; {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L290 TraceCheckUtils]: 2: Hoare triple {17695#true} assume true; {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L290 TraceCheckUtils]: 1: Hoare triple {17695#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); {17695#true} is VALID [2022-04-28 05:55:57,573 INFO L272 TraceCheckUtils]: 0: Hoare triple {17695#true} call ULTIMATE.init(); {17695#true} is VALID [2022-04-28 05:55:57,574 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 35 proven. 27 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-28 05:55:57,574 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:57,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1092140357] [2022-04-28 05:55:57,574 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:57,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [107399686] [2022-04-28 05:55:57,574 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [107399686] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:57,574 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:57,574 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15] total 23 [2022-04-28 05:55:57,574 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:57,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2003719200] [2022-04-28 05:55:57,574 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2003719200] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:57,574 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:57,574 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:55:57,574 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2030631889] [2022-04-28 05:55:57,574 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:57,575 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 86 [2022-04-28 05:55:57,575 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:57,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 05:55:57,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:57,629 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:55:57,629 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:57,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:55:57,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=429, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:55:57,629 INFO L87 Difference]: Start difference. First operand 222 states and 295 transitions. Second operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 05:56:00,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:00,733 INFO L93 Difference]: Finished difference Result 309 states and 417 transitions. [2022-04-28 05:56:00,733 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:56:00,733 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 86 [2022-04-28 05:56:00,733 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:00,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 05:56:00,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-28 05:56:00,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 05:56:00,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-28 05:56:00,737 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 143 transitions. [2022-04-28 05:56:00,892 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:00,897 INFO L225 Difference]: With dead ends: 309 [2022-04-28 05:56:00,897 INFO L226 Difference]: Without dead ends: 306 [2022-04-28 05:56:00,899 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 148 SyntacticMatches, 2 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 120 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=143, Invalid=727, Unknown=0, NotChecked=0, Total=870 [2022-04-28 05:56:00,900 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 57 mSDsluCounter, 242 mSDsCounter, 0 mSdLazyCounter, 669 mSolverCounterSat, 77 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 294 SdHoareTripleChecker+Invalid, 746 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 669 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:00,900 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [65 Valid, 294 Invalid, 746 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 669 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 05:56:00,901 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 306 states. [2022-04-28 05:56:01,617 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 306 to 287. [2022-04-28 05:56:01,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:01,618 INFO L82 GeneralOperation]: Start isEquivalent. First operand 306 states. Second operand has 287 states, 166 states have (on average 1.1927710843373494) internal successors, (198), 167 states have internal predecessors, (198), 99 states have call successors, (99), 22 states have call predecessors, (99), 21 states have return successors, (97), 97 states have call predecessors, (97), 97 states have call successors, (97) [2022-04-28 05:56:01,618 INFO L74 IsIncluded]: Start isIncluded. First operand 306 states. Second operand has 287 states, 166 states have (on average 1.1927710843373494) internal successors, (198), 167 states have internal predecessors, (198), 99 states have call successors, (99), 22 states have call predecessors, (99), 21 states have return successors, (97), 97 states have call predecessors, (97), 97 states have call successors, (97) [2022-04-28 05:56:01,619 INFO L87 Difference]: Start difference. First operand 306 states. Second operand has 287 states, 166 states have (on average 1.1927710843373494) internal successors, (198), 167 states have internal predecessors, (198), 99 states have call successors, (99), 22 states have call predecessors, (99), 21 states have return successors, (97), 97 states have call predecessors, (97), 97 states have call successors, (97) [2022-04-28 05:56:01,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:01,625 INFO L93 Difference]: Finished difference Result 306 states and 413 transitions. [2022-04-28 05:56:01,625 INFO L276 IsEmpty]: Start isEmpty. Operand 306 states and 413 transitions. [2022-04-28 05:56:01,625 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:01,625 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:01,626 INFO L74 IsIncluded]: Start isIncluded. First operand has 287 states, 166 states have (on average 1.1927710843373494) internal successors, (198), 167 states have internal predecessors, (198), 99 states have call successors, (99), 22 states have call predecessors, (99), 21 states have return successors, (97), 97 states have call predecessors, (97), 97 states have call successors, (97) Second operand 306 states. [2022-04-28 05:56:01,626 INFO L87 Difference]: Start difference. First operand has 287 states, 166 states have (on average 1.1927710843373494) internal successors, (198), 167 states have internal predecessors, (198), 99 states have call successors, (99), 22 states have call predecessors, (99), 21 states have return successors, (97), 97 states have call predecessors, (97), 97 states have call successors, (97) Second operand 306 states. [2022-04-28 05:56:01,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:01,631 INFO L93 Difference]: Finished difference Result 306 states and 413 transitions. [2022-04-28 05:56:01,631 INFO L276 IsEmpty]: Start isEmpty. Operand 306 states and 413 transitions. [2022-04-28 05:56:01,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:01,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:01,632 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:01,632 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:01,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 287 states, 166 states have (on average 1.1927710843373494) internal successors, (198), 167 states have internal predecessors, (198), 99 states have call successors, (99), 22 states have call predecessors, (99), 21 states have return successors, (97), 97 states have call predecessors, (97), 97 states have call successors, (97) [2022-04-28 05:56:01,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 287 states to 287 states and 394 transitions. [2022-04-28 05:56:01,639 INFO L78 Accepts]: Start accepts. Automaton has 287 states and 394 transitions. Word has length 86 [2022-04-28 05:56:01,639 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:01,639 INFO L495 AbstractCegarLoop]: Abstraction has 287 states and 394 transitions. [2022-04-28 05:56:01,639 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 05:56:01,639 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 287 states and 394 transitions. [2022-04-28 05:56:02,457 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 394 edges. 394 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:02,457 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 394 transitions. [2022-04-28 05:56:02,458 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:56:02,458 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:02,458 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:02,474 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:56:02,674 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:56:02,675 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:02,675 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:02,675 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 3 times [2022-04-28 05:56:02,675 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:02,675 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [163230316] [2022-04-28 05:56:02,675 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:02,675 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 4 times [2022-04-28 05:56:02,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:02,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [729955904] [2022-04-28 05:56:02,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:02,676 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:02,685 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:02,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1423580055] [2022-04-28 05:56:02,685 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:56:02,686 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:02,686 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:02,686 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:56:02,696 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:56:02,740 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:56:02,740 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:02,741 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 83 conjunts are in the unsatisfiable core [2022-04-28 05:56:02,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:02,761 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:03,817 INFO L272 TraceCheckUtils]: 0: Hoare triple {20051#true} call ULTIMATE.init(); {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 1: Hoare triple {20051#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); {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 2: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20051#true} {20051#true} #112#return; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L272 TraceCheckUtils]: 4: Hoare triple {20051#true} call #t~ret6 := main(); {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 5: Hoare triple {20051#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; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L272 TraceCheckUtils]: 6: Hoare triple {20051#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 7: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 8: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 9: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20051#true} {20051#true} #94#return; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 11: Hoare triple {20051#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L272 TraceCheckUtils]: 12: Hoare triple {20051#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 13: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 14: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L290 TraceCheckUtils]: 15: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,818 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20051#true} {20051#true} #96#return; {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L272 TraceCheckUtils]: 17: Hoare triple {20051#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L290 TraceCheckUtils]: 18: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L290 TraceCheckUtils]: 19: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L290 TraceCheckUtils]: 20: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20051#true} {20051#true} #98#return; {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L272 TraceCheckUtils]: 22: Hoare triple {20051#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L290 TraceCheckUtils]: 23: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L290 TraceCheckUtils]: 24: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L290 TraceCheckUtils]: 25: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20051#true} {20051#true} #100#return; {20051#true} is VALID [2022-04-28 05:56:03,819 INFO L290 TraceCheckUtils]: 27: Hoare triple {20051#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20137#(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 05:56:03,820 INFO L290 TraceCheckUtils]: 28: Hoare triple {20137#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {20137#(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 05:56:03,820 INFO L290 TraceCheckUtils]: 29: Hoare triple {20137#(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; {20144#(and (= main_~r~0 0) (= 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 05:56:03,820 INFO L290 TraceCheckUtils]: 30: Hoare triple {20144#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {20144#(and (= main_~r~0 0) (= 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 05:56:03,821 INFO L290 TraceCheckUtils]: 31: Hoare triple {20144#(and (= main_~r~0 0) (= 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); {20144#(and (= main_~r~0 0) (= 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 05:56:03,821 INFO L290 TraceCheckUtils]: 32: Hoare triple {20144#(and (= main_~r~0 0) (= 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; {20154#(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 05:56:03,822 INFO L290 TraceCheckUtils]: 33: Hoare triple {20154#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20154#(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 05:56:03,822 INFO L290 TraceCheckUtils]: 34: Hoare triple {20154#(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; {20161#(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 05:56:03,822 INFO L290 TraceCheckUtils]: 35: Hoare triple {20161#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20161#(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 05:56:03,835 INFO L290 TraceCheckUtils]: 36: Hoare triple {20161#(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; {20168#(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))} is VALID [2022-04-28 05:56:03,836 INFO L290 TraceCheckUtils]: 37: Hoare triple {20168#(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))} assume !false; {20168#(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))} is VALID [2022-04-28 05:56:03,836 INFO L272 TraceCheckUtils]: 38: Hoare triple {20168#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,836 INFO L290 TraceCheckUtils]: 39: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,836 INFO L290 TraceCheckUtils]: 40: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,836 INFO L290 TraceCheckUtils]: 41: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,837 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20051#true} {20168#(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))} #102#return; {20168#(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))} is VALID [2022-04-28 05:56:03,837 INFO L272 TraceCheckUtils]: 43: Hoare triple {20168#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,837 INFO L290 TraceCheckUtils]: 44: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,837 INFO L290 TraceCheckUtils]: 45: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,837 INFO L290 TraceCheckUtils]: 46: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,838 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20051#true} {20168#(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))} #104#return; {20168#(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))} is VALID [2022-04-28 05:56:03,838 INFO L272 TraceCheckUtils]: 48: Hoare triple {20168#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,838 INFO L290 TraceCheckUtils]: 49: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,838 INFO L290 TraceCheckUtils]: 50: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,838 INFO L290 TraceCheckUtils]: 51: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,838 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20051#true} {20168#(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))} #106#return; {20168#(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))} is VALID [2022-04-28 05:56:03,839 INFO L272 TraceCheckUtils]: 53: Hoare triple {20168#(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))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,839 INFO L290 TraceCheckUtils]: 54: Hoare triple {20051#true} ~cond := #in~cond; {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:03,839 INFO L290 TraceCheckUtils]: 55: Hoare triple {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,839 INFO L290 TraceCheckUtils]: 56: Hoare triple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,840 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} {20168#(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))} #108#return; {20168#(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))} is VALID [2022-04-28 05:56:03,840 INFO L290 TraceCheckUtils]: 58: Hoare triple {20168#(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))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {20237#(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))} is VALID [2022-04-28 05:56:03,841 INFO L290 TraceCheckUtils]: 59: Hoare triple {20237#(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))} assume !false; {20237#(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))} is VALID [2022-04-28 05:56:03,841 INFO L272 TraceCheckUtils]: 60: Hoare triple {20237#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:56:03,841 INFO L290 TraceCheckUtils]: 61: Hoare triple {20051#true} ~cond := #in~cond; {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:03,841 INFO L290 TraceCheckUtils]: 62: Hoare triple {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,842 INFO L290 TraceCheckUtils]: 63: Hoare triple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,843 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} {20237#(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))} #102#return; {20256#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,843 INFO L272 TraceCheckUtils]: 65: Hoare triple {20256#(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_~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)); {20051#true} is VALID [2022-04-28 05:56:03,843 INFO L290 TraceCheckUtils]: 66: Hoare triple {20051#true} ~cond := #in~cond; {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:03,843 INFO L290 TraceCheckUtils]: 67: Hoare triple {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,843 INFO L290 TraceCheckUtils]: 68: Hoare triple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,844 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} {20256#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,844 INFO L272 TraceCheckUtils]: 70: Hoare triple {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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)); {20051#true} is VALID [2022-04-28 05:56:03,845 INFO L290 TraceCheckUtils]: 71: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:56:03,845 INFO L290 TraceCheckUtils]: 72: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:56:03,845 INFO L290 TraceCheckUtils]: 73: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:56:03,845 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20051#true} {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,845 INFO L272 TraceCheckUtils]: 75: Hoare triple {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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)); {20051#true} is VALID [2022-04-28 05:56:03,846 INFO L290 TraceCheckUtils]: 76: Hoare triple {20051#true} ~cond := #in~cond; {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:03,846 INFO L290 TraceCheckUtils]: 77: Hoare triple {20223#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,846 INFO L290 TraceCheckUtils]: 78: Hoare triple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:03,847 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,847 INFO L290 TraceCheckUtils]: 80: Hoare triple {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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); {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,848 INFO L290 TraceCheckUtils]: 81: Hoare triple {20272#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= 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; {20309#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,849 INFO L290 TraceCheckUtils]: 82: Hoare triple {20309#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {20309#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,849 INFO L290 TraceCheckUtils]: 83: Hoare triple {20309#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {20309#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:03,851 INFO L290 TraceCheckUtils]: 84: Hoare triple {20309#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20319#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0 2) main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 05:56:03,851 INFO L290 TraceCheckUtils]: 85: Hoare triple {20319#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0 2) main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {20319#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0 2) main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 05:56:03,852 INFO L290 TraceCheckUtils]: 86: Hoare triple {20319#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0 2) main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {20326#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0 2) main_~y~0 (* (- 2) main_~a~0)) 0))} is VALID [2022-04-28 05:56:03,853 INFO L272 TraceCheckUtils]: 87: Hoare triple {20326#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0 2) main_~y~0 (* (- 2) main_~a~0)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {20330#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:03,853 INFO L290 TraceCheckUtils]: 88: Hoare triple {20330#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20334#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:03,853 INFO L290 TraceCheckUtils]: 89: Hoare triple {20334#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20052#false} is VALID [2022-04-28 05:56:03,853 INFO L290 TraceCheckUtils]: 90: Hoare triple {20052#false} assume !false; {20052#false} is VALID [2022-04-28 05:56:03,854 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 51 proven. 32 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-28 05:56:03,854 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:57:24,599 INFO L290 TraceCheckUtils]: 90: Hoare triple {20052#false} assume !false; {20052#false} is VALID [2022-04-28 05:57:24,599 INFO L290 TraceCheckUtils]: 89: Hoare triple {20334#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20052#false} is VALID [2022-04-28 05:57:24,599 INFO L290 TraceCheckUtils]: 88: Hoare triple {20330#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20334#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:24,600 INFO L272 TraceCheckUtils]: 87: Hoare triple {20350#(= (+ (* 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)); {20330#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:24,600 INFO L290 TraceCheckUtils]: 86: Hoare triple {20354#(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); {20350#(= (+ (* 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:57:24,601 INFO L290 TraceCheckUtils]: 85: Hoare triple {20354#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {20354#(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:57:24,770 INFO L290 TraceCheckUtils]: 84: Hoare triple {20361#(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; {20354#(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:57:24,771 INFO L290 TraceCheckUtils]: 83: Hoare triple {20361#(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); {20361#(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:57:24,771 INFO L290 TraceCheckUtils]: 82: Hoare triple {20361#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {20361#(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:57:24,789 INFO L290 TraceCheckUtils]: 81: Hoare triple {20371#(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; {20361#(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:57:24,789 INFO L290 TraceCheckUtils]: 80: Hoare triple {20371#(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); {20371#(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:57:24,790 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} {20378#(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))))} #108#return; {20371#(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:57:24,791 INFO L290 TraceCheckUtils]: 78: Hoare triple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:24,791 INFO L290 TraceCheckUtils]: 77: Hoare triple {20388#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:24,791 INFO L290 TraceCheckUtils]: 76: Hoare triple {20051#true} ~cond := #in~cond; {20388#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:24,791 INFO L272 TraceCheckUtils]: 75: Hoare triple {20378#(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)); {20051#true} is VALID [2022-04-28 05:57:24,792 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20051#true} {20378#(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))))} #106#return; {20378#(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:57:24,792 INFO L290 TraceCheckUtils]: 73: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:24,792 INFO L290 TraceCheckUtils]: 72: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:24,792 INFO L290 TraceCheckUtils]: 71: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:24,792 INFO L272 TraceCheckUtils]: 70: Hoare triple {20378#(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)); {20051#true} is VALID [2022-04-28 05:57:24,793 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} {20410#(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))))} #104#return; {20378#(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:57:24,793 INFO L290 TraceCheckUtils]: 68: Hoare triple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:24,794 INFO L290 TraceCheckUtils]: 67: Hoare triple {20388#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:24,794 INFO L290 TraceCheckUtils]: 66: Hoare triple {20051#true} ~cond := #in~cond; {20388#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:24,794 INFO L272 TraceCheckUtils]: 65: Hoare triple {20410#(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)); {20051#true} is VALID [2022-04-28 05:57:24,795 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} {20426#(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))))} #102#return; {20410#(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:57:24,795 INFO L290 TraceCheckUtils]: 63: Hoare triple {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:24,796 INFO L290 TraceCheckUtils]: 62: Hoare triple {20388#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20227#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:24,796 INFO L290 TraceCheckUtils]: 61: Hoare triple {20051#true} ~cond := #in~cond; {20388#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:24,796 INFO L272 TraceCheckUtils]: 60: Hoare triple {20426#(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)); {20051#true} is VALID [2022-04-28 05:57:24,796 INFO L290 TraceCheckUtils]: 59: Hoare triple {20426#(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 !false; {20426#(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:57:25,540 INFO L290 TraceCheckUtils]: 58: Hoare triple {20445#(or (not (= (* main_~v~0 2) (* 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_~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; {20426#(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:57:25,541 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20051#true} {20445#(or (not (= (* main_~v~0 2) (* 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_~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))))} #108#return; {20445#(or (not (= (* main_~v~0 2) (* 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_~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:57:25,541 INFO L290 TraceCheckUtils]: 56: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,541 INFO L290 TraceCheckUtils]: 55: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,541 INFO L290 TraceCheckUtils]: 54: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,541 INFO L272 TraceCheckUtils]: 53: Hoare triple {20445#(or (not (= (* main_~v~0 2) (* 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_~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)); {20051#true} is VALID [2022-04-28 05:57:25,542 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20051#true} {20445#(or (not (= (* main_~v~0 2) (* 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_~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))))} #106#return; {20445#(or (not (= (* main_~v~0 2) (* 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_~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:57:25,542 INFO L290 TraceCheckUtils]: 51: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,542 INFO L290 TraceCheckUtils]: 50: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,542 INFO L290 TraceCheckUtils]: 49: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,542 INFO L272 TraceCheckUtils]: 48: Hoare triple {20445#(or (not (= (* main_~v~0 2) (* 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_~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)); {20051#true} is VALID [2022-04-28 05:57:25,543 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20051#true} {20445#(or (not (= (* main_~v~0 2) (* 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_~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; {20445#(or (not (= (* main_~v~0 2) (* 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_~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:57:25,543 INFO L290 TraceCheckUtils]: 46: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,543 INFO L290 TraceCheckUtils]: 45: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,543 INFO L290 TraceCheckUtils]: 44: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,543 INFO L272 TraceCheckUtils]: 43: Hoare triple {20445#(or (not (= (* main_~v~0 2) (* 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_~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)); {20051#true} is VALID [2022-04-28 05:57:25,544 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20051#true} {20445#(or (not (= (* main_~v~0 2) (* 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_~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; {20445#(or (not (= (* main_~v~0 2) (* 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_~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:57:25,544 INFO L290 TraceCheckUtils]: 41: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,544 INFO L290 TraceCheckUtils]: 40: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,544 INFO L290 TraceCheckUtils]: 39: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,544 INFO L272 TraceCheckUtils]: 38: Hoare triple {20445#(or (not (= (* main_~v~0 2) (* 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_~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)); {20051#true} is VALID [2022-04-28 05:57:25,544 INFO L290 TraceCheckUtils]: 37: Hoare triple {20445#(or (not (= (* main_~v~0 2) (* 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_~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 !false; {20445#(or (not (= (* main_~v~0 2) (* 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_~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:57:25,545 INFO L290 TraceCheckUtils]: 36: Hoare triple {20512#(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 (= (+ (* (- 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; {20445#(or (not (= (* main_~v~0 2) (* 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_~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:57:25,546 INFO L290 TraceCheckUtils]: 35: Hoare triple {20512#(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 (= (+ (* (- 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 !false; {20512#(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 (= (+ (* (- 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:57:25,547 INFO L290 TraceCheckUtils]: 34: Hoare triple {20051#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20512#(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 (= (+ (* (- 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:57:25,547 INFO L290 TraceCheckUtils]: 33: Hoare triple {20051#true} assume !false; {20051#true} is VALID [2022-04-28 05:57:25,547 INFO L290 TraceCheckUtils]: 32: Hoare triple {20051#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; {20051#true} is VALID [2022-04-28 05:57:25,547 INFO L290 TraceCheckUtils]: 31: Hoare triple {20051#true} assume !(~c~0 >= ~b~0); {20051#true} is VALID [2022-04-28 05:57:25,547 INFO L290 TraceCheckUtils]: 30: Hoare triple {20051#true} assume !false; {20051#true} is VALID [2022-04-28 05:57:25,547 INFO L290 TraceCheckUtils]: 29: Hoare triple {20051#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20051#true} is VALID [2022-04-28 05:57:25,547 INFO L290 TraceCheckUtils]: 28: Hoare triple {20051#true} assume !false; {20051#true} is VALID [2022-04-28 05:57:25,547 INFO L290 TraceCheckUtils]: 27: Hoare triple {20051#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20051#true} {20051#true} #100#return; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 25: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 23: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L272 TraceCheckUtils]: 22: Hoare triple {20051#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20051#true} {20051#true} #98#return; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 20: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 19: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 18: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L272 TraceCheckUtils]: 17: Hoare triple {20051#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20051#true} {20051#true} #96#return; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 15: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 14: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 13: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L272 TraceCheckUtils]: 12: Hoare triple {20051#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 11: Hoare triple {20051#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20051#true} {20051#true} #94#return; {20051#true} is VALID [2022-04-28 05:57:25,548 INFO L290 TraceCheckUtils]: 9: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L290 TraceCheckUtils]: 8: Hoare triple {20051#true} assume !(0 == ~cond); {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L290 TraceCheckUtils]: 7: Hoare triple {20051#true} ~cond := #in~cond; {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L272 TraceCheckUtils]: 6: Hoare triple {20051#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L290 TraceCheckUtils]: 5: Hoare triple {20051#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; {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L272 TraceCheckUtils]: 4: Hoare triple {20051#true} call #t~ret6 := main(); {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20051#true} {20051#true} #112#return; {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L290 TraceCheckUtils]: 2: Hoare triple {20051#true} assume true; {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L290 TraceCheckUtils]: 1: Hoare triple {20051#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); {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L272 TraceCheckUtils]: 0: Hoare triple {20051#true} call ULTIMATE.init(); {20051#true} is VALID [2022-04-28 05:57:25,549 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 61 proven. 17 refuted. 0 times theorem prover too weak. 93 trivial. 0 not checked. [2022-04-28 05:57:25,549 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:25,550 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [729955904] [2022-04-28 05:57:25,550 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:25,550 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1423580055] [2022-04-28 05:57:25,550 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1423580055] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:57:25,550 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:57:25,550 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 15] total 27 [2022-04-28 05:57:25,550 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:25,550 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [163230316] [2022-04-28 05:57:25,550 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [163230316] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:25,550 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:25,550 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 05:57:25,550 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2096139327] [2022-04-28 05:57:25,550 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:25,551 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-28 05:57:25,551 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:25,551 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:57:25,617 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:57:25,617 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 05:57:25,617 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:25,618 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 05:57:25,618 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=596, Unknown=0, NotChecked=0, Total=702 [2022-04-28 05:57:25,618 INFO L87 Difference]: Start difference. First operand 287 states and 394 transitions. Second operand has 17 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:57:30,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:30,231 INFO L93 Difference]: Finished difference Result 383 states and 524 transitions. [2022-04-28 05:57:30,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:57:30,231 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-28 05:57:30,231 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:30,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:57:30,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 175 transitions. [2022-04-28 05:57:30,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:57:30,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 175 transitions. [2022-04-28 05:57:30,235 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 175 transitions. [2022-04-28 05:57:30,430 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:30,438 INFO L225 Difference]: With dead ends: 383 [2022-04-28 05:57:30,438 INFO L226 Difference]: Without dead ends: 380 [2022-04-28 05:57:30,438 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 153 SyntacticMatches, 3 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 201 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=159, Invalid=897, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 05:57:30,439 INFO L413 NwaCegarLoop]: 59 mSDtfsCounter, 71 mSDsluCounter, 339 mSDsCounter, 0 mSdLazyCounter, 1093 mSolverCounterSat, 79 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 398 SdHoareTripleChecker+Invalid, 1172 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 79 IncrementalHoareTripleChecker+Valid, 1093 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:57:30,439 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [89 Valid, 398 Invalid, 1172 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [79 Valid, 1093 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-28 05:57:30,439 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 380 states. [2022-04-28 05:57:31,332 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 380 to 356. [2022-04-28 05:57:31,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:31,347 INFO L82 GeneralOperation]: Start isEquivalent. First operand 380 states. Second operand has 356 states, 203 states have (on average 1.2019704433497538) internal successors, (244), 204 states have internal predecessors, (244), 127 states have call successors, (127), 26 states have call predecessors, (127), 25 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-28 05:57:31,348 INFO L74 IsIncluded]: Start isIncluded. First operand 380 states. Second operand has 356 states, 203 states have (on average 1.2019704433497538) internal successors, (244), 204 states have internal predecessors, (244), 127 states have call successors, (127), 26 states have call predecessors, (127), 25 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-28 05:57:31,348 INFO L87 Difference]: Start difference. First operand 380 states. Second operand has 356 states, 203 states have (on average 1.2019704433497538) internal successors, (244), 204 states have internal predecessors, (244), 127 states have call successors, (127), 26 states have call predecessors, (127), 25 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-28 05:57:31,355 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:31,355 INFO L93 Difference]: Finished difference Result 380 states and 520 transitions. [2022-04-28 05:57:31,355 INFO L276 IsEmpty]: Start isEmpty. Operand 380 states and 520 transitions. [2022-04-28 05:57:31,356 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:31,356 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:31,357 INFO L74 IsIncluded]: Start isIncluded. First operand has 356 states, 203 states have (on average 1.2019704433497538) internal successors, (244), 204 states have internal predecessors, (244), 127 states have call successors, (127), 26 states have call predecessors, (127), 25 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) Second operand 380 states. [2022-04-28 05:57:31,357 INFO L87 Difference]: Start difference. First operand has 356 states, 203 states have (on average 1.2019704433497538) internal successors, (244), 204 states have internal predecessors, (244), 127 states have call successors, (127), 26 states have call predecessors, (127), 25 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) Second operand 380 states. [2022-04-28 05:57:31,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:31,365 INFO L93 Difference]: Finished difference Result 380 states and 520 transitions. [2022-04-28 05:57:31,365 INFO L276 IsEmpty]: Start isEmpty. Operand 380 states and 520 transitions. [2022-04-28 05:57:31,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:31,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:31,366 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:31,366 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:31,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 356 states, 203 states have (on average 1.2019704433497538) internal successors, (244), 204 states have internal predecessors, (244), 127 states have call successors, (127), 26 states have call predecessors, (127), 25 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-28 05:57:31,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 356 states to 356 states and 496 transitions. [2022-04-28 05:57:31,375 INFO L78 Accepts]: Start accepts. Automaton has 356 states and 496 transitions. Word has length 91 [2022-04-28 05:57:31,375 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:31,375 INFO L495 AbstractCegarLoop]: Abstraction has 356 states and 496 transitions. [2022-04-28 05:57:31,375 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:57:31,376 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 356 states and 496 transitions. [2022-04-28 05:57:32,494 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 496 edges. 496 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:32,494 INFO L276 IsEmpty]: Start isEmpty. Operand 356 states and 496 transitions. [2022-04-28 05:57:32,508 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 05:57:32,508 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:32,508 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:57:32,541 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:57:32,708 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:57:32,709 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:32,709 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:32,709 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 7 times [2022-04-28 05:57:32,709 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:32,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [467600424] [2022-04-28 05:57:32,709 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:32,709 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 8 times [2022-04-28 05:57:32,709 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:32,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1392586079] [2022-04-28 05:57:32,710 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:32,710 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:32,728 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:32,728 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [749673282] [2022-04-28 05:57:32,728 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:57:32,728 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:32,728 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:32,729 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:57:32,730 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:57:32,782 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:57:32,782 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:32,786 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 82 conjunts are in the unsatisfiable core [2022-04-28 05:57:32,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:32,812 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:36,051 INFO L272 TraceCheckUtils]: 0: Hoare triple {22873#true} call ULTIMATE.init(); {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 1: Hoare triple {22873#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); {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 2: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22873#true} {22873#true} #112#return; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L272 TraceCheckUtils]: 4: Hoare triple {22873#true} call #t~ret6 := main(); {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 5: Hoare triple {22873#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; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L272 TraceCheckUtils]: 6: Hoare triple {22873#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 8: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 9: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22873#true} {22873#true} #94#return; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 11: Hoare triple {22873#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L272 TraceCheckUtils]: 12: Hoare triple {22873#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 13: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 14: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L290 TraceCheckUtils]: 15: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {22873#true} {22873#true} #96#return; {22873#true} is VALID [2022-04-28 05:58:36,052 INFO L272 TraceCheckUtils]: 17: Hoare triple {22873#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L290 TraceCheckUtils]: 18: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L290 TraceCheckUtils]: 19: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L290 TraceCheckUtils]: 20: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22873#true} {22873#true} #98#return; {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L272 TraceCheckUtils]: 22: Hoare triple {22873#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L290 TraceCheckUtils]: 23: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L290 TraceCheckUtils]: 24: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L290 TraceCheckUtils]: 25: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22873#true} {22873#true} #100#return; {22873#true} is VALID [2022-04-28 05:58:36,053 INFO L290 TraceCheckUtils]: 27: Hoare triple {22873#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {22959#(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 05:58:36,054 INFO L290 TraceCheckUtils]: 28: Hoare triple {22959#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {22959#(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 05:58:36,054 INFO L290 TraceCheckUtils]: 29: Hoare triple {22959#(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; {22966#(and (= main_~r~0 0) (= 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 05:58:36,054 INFO L290 TraceCheckUtils]: 30: Hoare triple {22966#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {22966#(and (= main_~r~0 0) (= 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 05:58:36,055 INFO L290 TraceCheckUtils]: 31: Hoare triple {22966#(and (= main_~r~0 0) (= 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);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:58:36,055 INFO L290 TraceCheckUtils]: 32: Hoare triple {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:58:36,055 INFO L272 TraceCheckUtils]: 33: Hoare triple {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,055 INFO L290 TraceCheckUtils]: 34: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,055 INFO L290 TraceCheckUtils]: 35: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,060 INFO L290 TraceCheckUtils]: 36: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,063 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22873#true} {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #102#return; {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:58:36,063 INFO L272 TraceCheckUtils]: 38: Hoare triple {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,063 INFO L290 TraceCheckUtils]: 39: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,063 INFO L290 TraceCheckUtils]: 40: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,063 INFO L290 TraceCheckUtils]: 41: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,063 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {22873#true} {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #104#return; {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:58:36,064 INFO L272 TraceCheckUtils]: 43: Hoare triple {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,064 INFO L290 TraceCheckUtils]: 44: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,064 INFO L290 TraceCheckUtils]: 45: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,064 INFO L290 TraceCheckUtils]: 46: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,064 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22873#true} {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #106#return; {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:58:36,064 INFO L272 TraceCheckUtils]: 48: Hoare triple {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,064 INFO L290 TraceCheckUtils]: 49: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,065 INFO L290 TraceCheckUtils]: 50: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,065 INFO L290 TraceCheckUtils]: 51: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,065 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {22873#true} {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #108#return; {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:58:36,066 INFO L290 TraceCheckUtils]: 53: Hoare triple {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:58:36,066 INFO L290 TraceCheckUtils]: 54: Hoare triple {22973#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23043#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:58:36,066 INFO L290 TraceCheckUtils]: 55: Hoare triple {23043#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {23043#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:58:36,067 INFO L290 TraceCheckUtils]: 56: Hoare triple {23043#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {23043#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:58:36,067 INFO L290 TraceCheckUtils]: 57: Hoare triple {23043#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23053#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} is VALID [2022-04-28 05:58:36,068 INFO L290 TraceCheckUtils]: 58: Hoare triple {23053#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} assume !false; {23053#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} is VALID [2022-04-28 05:58:36,068 INFO L290 TraceCheckUtils]: 59: Hoare triple {23053#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23060#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} is VALID [2022-04-28 05:58:36,068 INFO L290 TraceCheckUtils]: 60: Hoare triple {23060#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} assume !false; {23060#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} is VALID [2022-04-28 05:58:36,069 INFO L290 TraceCheckUtils]: 61: Hoare triple {23060#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23067#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)))} is VALID [2022-04-28 05:58:36,069 INFO L290 TraceCheckUtils]: 62: Hoare triple {23067#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)))} assume !false; {23067#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)))} is VALID [2022-04-28 05:58:36,069 INFO L272 TraceCheckUtils]: 63: Hoare triple {23067#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:58:36,069 INFO L290 TraceCheckUtils]: 64: Hoare triple {22873#true} ~cond := #in~cond; {23077#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:36,070 INFO L290 TraceCheckUtils]: 65: Hoare triple {23077#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:36,070 INFO L290 TraceCheckUtils]: 66: Hoare triple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:36,071 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} {23067#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)))} #102#return; {23088#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:58:36,071 INFO L272 TraceCheckUtils]: 68: Hoare triple {23088#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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)); {22873#true} is VALID [2022-04-28 05:58:36,071 INFO L290 TraceCheckUtils]: 69: Hoare triple {22873#true} ~cond := #in~cond; {23077#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:36,071 INFO L290 TraceCheckUtils]: 70: Hoare triple {23077#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:36,072 INFO L290 TraceCheckUtils]: 71: Hoare triple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:36,073 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} {23088#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:58:36,073 INFO L272 TraceCheckUtils]: 73: Hoare triple {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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)); {22873#true} is VALID [2022-04-28 05:58:36,073 INFO L290 TraceCheckUtils]: 74: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,073 INFO L290 TraceCheckUtils]: 75: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,073 INFO L290 TraceCheckUtils]: 76: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,073 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {22873#true} {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:58:36,074 INFO L272 TraceCheckUtils]: 78: Hoare triple {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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)); {22873#true} is VALID [2022-04-28 05:58:36,074 INFO L290 TraceCheckUtils]: 79: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:58:36,074 INFO L290 TraceCheckUtils]: 80: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:58:36,074 INFO L290 TraceCheckUtils]: 81: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:58:36,081 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {22873#true} {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:58:36,082 INFO L290 TraceCheckUtils]: 83: Hoare triple {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:58:36,082 INFO L290 TraceCheckUtils]: 84: Hoare triple {23104#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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; {23141#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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 05:58:36,083 INFO L290 TraceCheckUtils]: 85: Hoare triple {23141#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {23141#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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 05:58:36,083 INFO L290 TraceCheckUtils]: 86: Hoare triple {23141#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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); {23141#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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 05:58:36,096 INFO L290 TraceCheckUtils]: 87: Hoare triple {23141#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~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; {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:58:36,097 INFO L290 TraceCheckUtils]: 88: Hoare triple {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:58:36,097 INFO L290 TraceCheckUtils]: 89: Hoare triple {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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; {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:58:36,098 INFO L290 TraceCheckUtils]: 90: Hoare triple {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:58:36,098 INFO L290 TraceCheckUtils]: 91: Hoare triple {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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; {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:58:36,099 INFO L290 TraceCheckUtils]: 92: Hoare triple {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:58:36,099 INFO L272 TraceCheckUtils]: 93: Hoare triple {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {22873#true} is VALID [2022-04-28 05:58:36,099 INFO L290 TraceCheckUtils]: 94: Hoare triple {22873#true} ~cond := #in~cond; {23077#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:36,099 INFO L290 TraceCheckUtils]: 95: Hoare triple {23077#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:36,100 INFO L290 TraceCheckUtils]: 96: Hoare triple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:36,104 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} {23151#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0))} #102#return; {23182#(and (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) (* main_~y~0 main_~s~0)) (= main_~x~0 (+ main_~y~0 (* main_~x~0 (* (- 1) main_~q~0)) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:58:36,105 INFO L272 TraceCheckUtils]: 98: Hoare triple {23182#(and (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) (* main_~y~0 main_~s~0)) (= main_~x~0 (+ main_~y~0 (* main_~x~0 (* (- 1) main_~q~0)) (* 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)); {23186#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:58:36,106 INFO L290 TraceCheckUtils]: 99: Hoare triple {23186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:36,106 INFO L290 TraceCheckUtils]: 100: Hoare triple {23190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22874#false} is VALID [2022-04-28 05:58:36,106 INFO L290 TraceCheckUtils]: 101: Hoare triple {22874#false} assume !false; {22874#false} is VALID [2022-04-28 05:58:36,106 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 57 proven. 55 refuted. 0 times theorem prover too weak. 114 trivial. 0 not checked. [2022-04-28 05:58:36,106 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:22,116 INFO L290 TraceCheckUtils]: 101: Hoare triple {22874#false} assume !false; {22874#false} is VALID [2022-04-28 05:59:22,116 INFO L290 TraceCheckUtils]: 100: Hoare triple {23190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22874#false} is VALID [2022-04-28 05:59:22,116 INFO L290 TraceCheckUtils]: 99: Hoare triple {23186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:22,119 INFO L272 TraceCheckUtils]: 98: Hoare triple {23206#(= 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)); {23186#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:59:22,120 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} {23210#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #102#return; {23206#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:59:22,121 INFO L290 TraceCheckUtils]: 96: Hoare triple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:22,121 INFO L290 TraceCheckUtils]: 95: Hoare triple {23220#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:22,121 INFO L290 TraceCheckUtils]: 94: Hoare triple {22873#true} ~cond := #in~cond; {23220#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:22,121 INFO L272 TraceCheckUtils]: 93: Hoare triple {23210#(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)); {22873#true} is VALID [2022-04-28 05:59:22,122 INFO L290 TraceCheckUtils]: 92: Hoare triple {23210#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23210#(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 05:59:22,122 INFO L290 TraceCheckUtils]: 91: Hoare triple {23210#(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; {23210#(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 05:59:22,122 INFO L290 TraceCheckUtils]: 90: Hoare triple {23210#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23210#(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 05:59:22,123 INFO L290 TraceCheckUtils]: 89: Hoare triple {23210#(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; {23210#(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 05:59:22,123 INFO L290 TraceCheckUtils]: 88: Hoare triple {23210#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23210#(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 05:59:22,138 INFO L290 TraceCheckUtils]: 87: Hoare triple {23242#(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; {23210#(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 05:59:22,138 INFO L290 TraceCheckUtils]: 86: Hoare triple {23242#(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); {23242#(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 05:59:22,139 INFO L290 TraceCheckUtils]: 85: Hoare triple {23242#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23242#(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 05:59:22,144 INFO L290 TraceCheckUtils]: 84: Hoare triple {23252#(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; {23242#(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 05:59:22,144 INFO L290 TraceCheckUtils]: 83: Hoare triple {23252#(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); {23252#(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 05:59:22,145 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {22873#true} {23252#(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)))))} #108#return; {23252#(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 05:59:22,145 INFO L290 TraceCheckUtils]: 81: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,145 INFO L290 TraceCheckUtils]: 80: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,145 INFO L290 TraceCheckUtils]: 79: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,145 INFO L272 TraceCheckUtils]: 78: Hoare triple {23252#(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)); {22873#true} is VALID [2022-04-28 05:59:22,146 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {22873#true} {23252#(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)))))} #106#return; {23252#(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 05:59:22,146 INFO L290 TraceCheckUtils]: 76: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,146 INFO L290 TraceCheckUtils]: 75: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,146 INFO L290 TraceCheckUtils]: 74: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,146 INFO L272 TraceCheckUtils]: 73: Hoare triple {23252#(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)); {22873#true} is VALID [2022-04-28 05:59:22,147 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {22873#true} {23252#(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; {23252#(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 05:59:22,147 INFO L290 TraceCheckUtils]: 71: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,147 INFO L290 TraceCheckUtils]: 70: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,147 INFO L290 TraceCheckUtils]: 69: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,147 INFO L272 TraceCheckUtils]: 68: Hoare triple {23252#(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)); {22873#true} is VALID [2022-04-28 05:59:22,148 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} {23304#(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)))))} #102#return; {23252#(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 05:59:22,148 INFO L290 TraceCheckUtils]: 66: Hoare triple {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:22,148 INFO L290 TraceCheckUtils]: 65: Hoare triple {23220#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23081#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:22,149 INFO L290 TraceCheckUtils]: 64: Hoare triple {22873#true} ~cond := #in~cond; {23220#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:22,149 INFO L272 TraceCheckUtils]: 63: Hoare triple {23304#(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)); {22873#true} is VALID [2022-04-28 05:59:22,149 INFO L290 TraceCheckUtils]: 62: Hoare triple {23304#(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 !false; {23304#(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 05:59:22,150 INFO L290 TraceCheckUtils]: 61: Hoare triple {23323#(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; {23304#(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 05:59:22,150 INFO L290 TraceCheckUtils]: 60: Hoare triple {23323#(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 !false; {23323#(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 05:59:22,152 INFO L290 TraceCheckUtils]: 59: Hoare triple {22873#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23323#(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 05:59:22,152 INFO L290 TraceCheckUtils]: 58: Hoare triple {22873#true} assume !false; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 57: Hoare triple {22873#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; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 56: Hoare triple {22873#true} assume !(~c~0 >= ~b~0); {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 55: Hoare triple {22873#true} assume !false; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 54: Hoare triple {22873#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 53: Hoare triple {22873#true} assume !(~c~0 >= 2 * ~v~0); {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {22873#true} {22873#true} #108#return; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 51: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 50: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 49: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L272 TraceCheckUtils]: 48: Hoare triple {22873#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22873#true} {22873#true} #106#return; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 46: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 45: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L290 TraceCheckUtils]: 44: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L272 TraceCheckUtils]: 43: Hoare triple {22873#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,152 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {22873#true} {22873#true} #104#return; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 41: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 40: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 39: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L272 TraceCheckUtils]: 38: Hoare triple {22873#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22873#true} {22873#true} #102#return; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 36: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 35: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 34: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L272 TraceCheckUtils]: 33: Hoare triple {22873#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 32: Hoare triple {22873#true} assume !false; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 31: Hoare triple {22873#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 30: Hoare triple {22873#true} assume !false; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 29: Hoare triple {22873#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 28: Hoare triple {22873#true} assume !false; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 27: Hoare triple {22873#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22873#true} {22873#true} #100#return; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 25: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,153 INFO L290 TraceCheckUtils]: 24: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 23: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L272 TraceCheckUtils]: 22: Hoare triple {22873#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22873#true} {22873#true} #98#return; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 20: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 19: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 18: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L272 TraceCheckUtils]: 17: Hoare triple {22873#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {22873#true} {22873#true} #96#return; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 15: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 14: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 13: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L272 TraceCheckUtils]: 12: Hoare triple {22873#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 11: Hoare triple {22873#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22873#true} {22873#true} #94#return; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 9: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 8: Hoare triple {22873#true} assume !(0 == ~cond); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 7: Hoare triple {22873#true} ~cond := #in~cond; {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L272 TraceCheckUtils]: 6: Hoare triple {22873#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {22873#true} is VALID [2022-04-28 05:59:22,154 INFO L290 TraceCheckUtils]: 5: Hoare triple {22873#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; {22873#true} is VALID [2022-04-28 05:59:22,155 INFO L272 TraceCheckUtils]: 4: Hoare triple {22873#true} call #t~ret6 := main(); {22873#true} is VALID [2022-04-28 05:59:22,155 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22873#true} {22873#true} #112#return; {22873#true} is VALID [2022-04-28 05:59:22,155 INFO L290 TraceCheckUtils]: 2: Hoare triple {22873#true} assume true; {22873#true} is VALID [2022-04-28 05:59:22,155 INFO L290 TraceCheckUtils]: 1: Hoare triple {22873#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); {22873#true} is VALID [2022-04-28 05:59:22,155 INFO L272 TraceCheckUtils]: 0: Hoare triple {22873#true} call ULTIMATE.init(); {22873#true} is VALID [2022-04-28 05:59:22,155 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 78 proven. 18 refuted. 0 times theorem prover too weak. 130 trivial. 0 not checked. [2022-04-28 05:59:22,155 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:22,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1392586079] [2022-04-28 05:59:22,155 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:22,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [749673282] [2022-04-28 05:59:22,155 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [749673282] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:22,155 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:22,156 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 12] total 25 [2022-04-28 05:59:22,156 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:22,156 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [467600424] [2022-04-28 05:59:22,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [467600424] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:22,156 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:22,156 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 05:59:22,156 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1628585248] [2022-04-28 05:59:22,156 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:22,156 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.625) internal successors, (42), 15 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) Word has length 102 [2022-04-28 05:59:22,156 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:22,157 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 16 states have (on average 2.625) internal successors, (42), 15 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 05:59:22,223 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:59:22,224 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 05:59:22,224 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:22,224 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 05:59:22,224 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=507, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:59:22,224 INFO L87 Difference]: Start difference. First operand 356 states and 496 transitions. Second operand has 18 states, 16 states have (on average 2.625) internal successors, (42), 15 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 05:59:28,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:28,446 INFO L93 Difference]: Finished difference Result 466 states and 643 transitions. [2022-04-28 05:59:28,446 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:59:28,447 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.625) internal successors, (42), 15 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) Word has length 102 [2022-04-28 05:59:28,447 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:28,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.625) internal successors, (42), 15 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 05:59:28,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-28 05:59:28,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.625) internal successors, (42), 15 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 05:59:28,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-28 05:59:28,450 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 163 transitions. [2022-04-28 05:59:28,625 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:28,635 INFO L225 Difference]: With dead ends: 466 [2022-04-28 05:59:28,635 INFO L226 Difference]: Without dead ends: 464 [2022-04-28 05:59:28,636 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 210 GetRequests, 177 SyntacticMatches, 3 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 183 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=149, Invalid=843, Unknown=0, NotChecked=0, Total=992 [2022-04-28 05:59:28,636 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 62 mSDsluCounter, 402 mSDsCounter, 0 mSdLazyCounter, 1049 mSolverCounterSat, 52 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 80 SdHoareTripleChecker+Valid, 453 SdHoareTripleChecker+Invalid, 1101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 52 IncrementalHoareTripleChecker+Valid, 1049 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:59:28,636 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [80 Valid, 453 Invalid, 1101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [52 Valid, 1049 Invalid, 0 Unknown, 0 Unchecked, 2.0s Time] [2022-04-28 05:59:28,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 464 states. [2022-04-28 05:59:29,820 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 464 to 446. [2022-04-28 05:59:29,821 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:29,821 INFO L82 GeneralOperation]: Start isEquivalent. First operand 464 states. Second operand has 446 states, 256 states have (on average 1.19921875) internal successors, (307), 257 states have internal predecessors, (307), 159 states have call successors, (159), 31 states have call predecessors, (159), 30 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-28 05:59:29,822 INFO L74 IsIncluded]: Start isIncluded. First operand 464 states. Second operand has 446 states, 256 states have (on average 1.19921875) internal successors, (307), 257 states have internal predecessors, (307), 159 states have call successors, (159), 31 states have call predecessors, (159), 30 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-28 05:59:29,822 INFO L87 Difference]: Start difference. First operand 464 states. Second operand has 446 states, 256 states have (on average 1.19921875) internal successors, (307), 257 states have internal predecessors, (307), 159 states have call successors, (159), 31 states have call predecessors, (159), 30 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-28 05:59:29,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:29,832 INFO L93 Difference]: Finished difference Result 464 states and 641 transitions. [2022-04-28 05:59:29,832 INFO L276 IsEmpty]: Start isEmpty. Operand 464 states and 641 transitions. [2022-04-28 05:59:29,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:29,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:29,834 INFO L74 IsIncluded]: Start isIncluded. First operand has 446 states, 256 states have (on average 1.19921875) internal successors, (307), 257 states have internal predecessors, (307), 159 states have call successors, (159), 31 states have call predecessors, (159), 30 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 464 states. [2022-04-28 05:59:29,835 INFO L87 Difference]: Start difference. First operand has 446 states, 256 states have (on average 1.19921875) internal successors, (307), 257 states have internal predecessors, (307), 159 states have call successors, (159), 31 states have call predecessors, (159), 30 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 464 states. [2022-04-28 05:59:29,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:29,845 INFO L93 Difference]: Finished difference Result 464 states and 641 transitions. [2022-04-28 05:59:29,845 INFO L276 IsEmpty]: Start isEmpty. Operand 464 states and 641 transitions. [2022-04-28 05:59:29,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:29,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:29,846 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:29,846 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:29,847 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 446 states, 256 states have (on average 1.19921875) internal successors, (307), 257 states have internal predecessors, (307), 159 states have call successors, (159), 31 states have call predecessors, (159), 30 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-28 05:59:29,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 446 states to 446 states and 623 transitions. [2022-04-28 05:59:29,859 INFO L78 Accepts]: Start accepts. Automaton has 446 states and 623 transitions. Word has length 102 [2022-04-28 05:59:29,859 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:29,859 INFO L495 AbstractCegarLoop]: Abstraction has 446 states and 623 transitions. [2022-04-28 05:59:29,859 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 16 states have (on average 2.625) internal successors, (42), 15 states have internal predecessors, (42), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 05:59:29,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 446 states and 623 transitions. [2022-04-28 05:59:31,399 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 623 edges. 623 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:31,400 INFO L276 IsEmpty]: Start isEmpty. Operand 446 states and 623 transitions. [2022-04-28 05:59:31,402 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 05:59:31,402 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:31,402 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:59:31,419 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:59:31,618 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:59:31,619 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:31,619 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:31,619 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 5 times [2022-04-28 05:59:31,619 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:31,619 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [250253715] [2022-04-28 05:59:31,620 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:31,620 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 6 times [2022-04-28 05:59:31,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:31,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [459102837] [2022-04-28 05:59:31,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:31,620 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:31,630 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:31,630 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1203751585] [2022-04-28 05:59:31,630 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:59:31,630 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:31,630 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:31,631 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:59:31,631 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:59:31,693 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:59:31,693 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:31,694 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-28 05:59:31,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:31,715 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:13,953 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:00:17,834 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:01:24,029 INFO L272 TraceCheckUtils]: 0: Hoare triple {26275#true} call ULTIMATE.init(); {26275#true} is VALID [2022-04-28 06:01:24,029 INFO L290 TraceCheckUtils]: 1: Hoare triple {26275#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); {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 2: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26275#true} {26275#true} #112#return; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L272 TraceCheckUtils]: 4: Hoare triple {26275#true} call #t~ret6 := main(); {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 5: Hoare triple {26275#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; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L272 TraceCheckUtils]: 6: Hoare triple {26275#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 7: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26275#true} {26275#true} #94#return; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 11: Hoare triple {26275#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L272 TraceCheckUtils]: 12: Hoare triple {26275#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 13: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 14: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 15: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26275#true} {26275#true} #96#return; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L272 TraceCheckUtils]: 17: Hoare triple {26275#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 18: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,030 INFO L290 TraceCheckUtils]: 19: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L290 TraceCheckUtils]: 20: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26275#true} {26275#true} #98#return; {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L272 TraceCheckUtils]: 22: Hoare triple {26275#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L290 TraceCheckUtils]: 23: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L290 TraceCheckUtils]: 24: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L290 TraceCheckUtils]: 25: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26275#true} {26275#true} #100#return; {26275#true} is VALID [2022-04-28 06:01:24,031 INFO L290 TraceCheckUtils]: 27: Hoare triple {26275#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {26361#(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 06:01:24,032 INFO L290 TraceCheckUtils]: 28: Hoare triple {26361#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {26361#(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 06:01:24,032 INFO L290 TraceCheckUtils]: 29: Hoare triple {26361#(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; {26368#(and (= main_~r~0 0) (= 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 06:01:24,032 INFO L290 TraceCheckUtils]: 30: Hoare triple {26368#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26368#(and (= main_~r~0 0) (= 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 06:01:24,033 INFO L290 TraceCheckUtils]: 31: Hoare triple {26368#(and (= main_~r~0 0) (= 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; {26368#(and (= main_~r~0 0) (= 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 06:01:24,033 INFO L290 TraceCheckUtils]: 32: Hoare triple {26368#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26368#(and (= main_~r~0 0) (= 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 06:01:24,033 INFO L272 TraceCheckUtils]: 33: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,033 INFO L290 TraceCheckUtils]: 34: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,033 INFO L290 TraceCheckUtils]: 35: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,033 INFO L290 TraceCheckUtils]: 36: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,034 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26275#true} {26368#(and (= main_~r~0 0) (= 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; {26368#(and (= main_~r~0 0) (= 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 06:01:24,034 INFO L272 TraceCheckUtils]: 38: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,034 INFO L290 TraceCheckUtils]: 39: Hoare triple {26275#true} ~cond := #in~cond; {26399#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:24,035 INFO L290 TraceCheckUtils]: 40: Hoare triple {26399#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:24,035 INFO L290 TraceCheckUtils]: 41: Hoare triple {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:24,035 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} {26368#(and (= main_~r~0 0) (= 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; {26368#(and (= main_~r~0 0) (= 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 06:01:24,035 INFO L272 TraceCheckUtils]: 43: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,036 INFO L290 TraceCheckUtils]: 44: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,036 INFO L290 TraceCheckUtils]: 45: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,036 INFO L290 TraceCheckUtils]: 46: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,036 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26275#true} {26368#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26368#(and (= main_~r~0 0) (= 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 06:01:24,036 INFO L272 TraceCheckUtils]: 48: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,036 INFO L290 TraceCheckUtils]: 49: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,036 INFO L290 TraceCheckUtils]: 50: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,037 INFO L290 TraceCheckUtils]: 51: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,037 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26275#true} {26368#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26368#(and (= main_~r~0 0) (= 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 06:01:24,038 INFO L290 TraceCheckUtils]: 53: Hoare triple {26368#(and (= main_~r~0 0) (= 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; {26368#(and (= main_~r~0 0) (= 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 06:01:24,038 INFO L290 TraceCheckUtils]: 54: Hoare triple {26368#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26368#(and (= main_~r~0 0) (= 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 06:01:24,038 INFO L272 TraceCheckUtils]: 55: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,038 INFO L290 TraceCheckUtils]: 56: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,038 INFO L290 TraceCheckUtils]: 57: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,038 INFO L290 TraceCheckUtils]: 58: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,039 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26275#true} {26368#(and (= main_~r~0 0) (= 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; {26368#(and (= main_~r~0 0) (= 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 06:01:24,039 INFO L272 TraceCheckUtils]: 60: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,039 INFO L290 TraceCheckUtils]: 61: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,039 INFO L290 TraceCheckUtils]: 62: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,039 INFO L290 TraceCheckUtils]: 63: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,040 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26275#true} {26368#(and (= main_~r~0 0) (= 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; {26368#(and (= main_~r~0 0) (= 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 06:01:24,040 INFO L272 TraceCheckUtils]: 65: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,040 INFO L290 TraceCheckUtils]: 66: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,040 INFO L290 TraceCheckUtils]: 67: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,040 INFO L290 TraceCheckUtils]: 68: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,040 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26275#true} {26368#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26368#(and (= main_~r~0 0) (= 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 06:01:24,041 INFO L272 TraceCheckUtils]: 70: Hoare triple {26368#(and (= main_~r~0 0) (= 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)); {26275#true} is VALID [2022-04-28 06:01:24,041 INFO L290 TraceCheckUtils]: 71: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,041 INFO L290 TraceCheckUtils]: 72: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,041 INFO L290 TraceCheckUtils]: 73: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,041 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26275#true} {26368#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26368#(and (= main_~r~0 0) (= 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 06:01:24,043 INFO L290 TraceCheckUtils]: 75: Hoare triple {26368#(and (= main_~r~0 0) (= 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; {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,043 INFO L290 TraceCheckUtils]: 76: Hoare triple {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,043 INFO L272 TraceCheckUtils]: 77: Hoare triple {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 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)); {26275#true} is VALID [2022-04-28 06:01:24,043 INFO L290 TraceCheckUtils]: 78: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,043 INFO L290 TraceCheckUtils]: 79: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,043 INFO L290 TraceCheckUtils]: 80: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,044 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26275#true} {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,044 INFO L272 TraceCheckUtils]: 82: Hoare triple {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 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)); {26275#true} is VALID [2022-04-28 06:01:24,044 INFO L290 TraceCheckUtils]: 83: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,044 INFO L290 TraceCheckUtils]: 84: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,044 INFO L290 TraceCheckUtils]: 85: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,045 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26275#true} {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,045 INFO L272 TraceCheckUtils]: 87: Hoare triple {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 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)); {26275#true} is VALID [2022-04-28 06:01:24,045 INFO L290 TraceCheckUtils]: 88: Hoare triple {26275#true} ~cond := #in~cond; {26275#true} is VALID [2022-04-28 06:01:24,045 INFO L290 TraceCheckUtils]: 89: Hoare triple {26275#true} assume !(0 == ~cond); {26275#true} is VALID [2022-04-28 06:01:24,045 INFO L290 TraceCheckUtils]: 90: Hoare triple {26275#true} assume true; {26275#true} is VALID [2022-04-28 06:01:24,046 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26275#true} {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,046 INFO L272 TraceCheckUtils]: 92: Hoare triple {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 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)); {26275#true} is VALID [2022-04-28 06:01:24,046 INFO L290 TraceCheckUtils]: 93: Hoare triple {26275#true} ~cond := #in~cond; {26399#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:24,046 INFO L290 TraceCheckUtils]: 94: Hoare triple {26399#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:24,046 INFO L290 TraceCheckUtils]: 95: Hoare triple {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:24,047 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {26403#(not (= |__VERIFIER_assert_#in~cond| 0))} {26509#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26573#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,048 INFO L290 TraceCheckUtils]: 97: Hoare triple {26573#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {26573#(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) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,050 INFO L290 TraceCheckUtils]: 98: Hoare triple {26573#(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) (= (mod main_~d~0 2) 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; {26580#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,051 INFO L290 TraceCheckUtils]: 99: Hoare triple {26580#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {26580#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:24,051 INFO L290 TraceCheckUtils]: 100: Hoare triple {26580#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {26580#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 06:01:26,054 WARN L290 TraceCheckUtils]: 101: Hoare triple {26580#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {26590#(and (or (and (= (+ main_~q~0 (* 2 (* main_~p~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)))) 1) (= (+ (* (* main_~r~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)) 2) main_~s~0) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0) 0) (not (= main_~a~0 0))) (and (= main_~a~0 0) (= (div (+ (* (- 1) main_~q~0) 1) 2) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod main_~s~0 2) 0) (= (mod (+ main_~q~0 1) 2) 0) (= (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) 0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is UNKNOWN [2022-04-28 06:01:26,055 INFO L290 TraceCheckUtils]: 102: Hoare triple {26590#(and (or (and (= (+ main_~q~0 (* 2 (* main_~p~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)))) 1) (= (+ (* (* main_~r~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)) 2) main_~s~0) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0) 0) (not (= main_~a~0 0))) (and (= main_~a~0 0) (= (div (+ (* (- 1) main_~q~0) 1) 2) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod main_~s~0 2) 0) (= (mod (+ main_~q~0 1) 2) 0) (= (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) 0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {26590#(and (or (and (= (+ main_~q~0 (* 2 (* main_~p~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)))) 1) (= (+ (* (* main_~r~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)) 2) main_~s~0) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0) 0) (not (= main_~a~0 0))) (and (= main_~a~0 0) (= (div (+ (* (- 1) main_~q~0) 1) 2) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod main_~s~0 2) 0) (= (mod (+ main_~q~0 1) 2) 0) (= (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) 0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 06:01:26,056 INFO L290 TraceCheckUtils]: 103: Hoare triple {26590#(and (or (and (= (+ main_~q~0 (* 2 (* main_~p~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)))) 1) (= (+ (* (* main_~r~0 (div (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0)) 2) main_~s~0) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) main_~a~0) 0) (not (= main_~a~0 0))) (and (= main_~a~0 0) (= (div (+ (* (- 1) main_~q~0) 1) 2) 0) (= (mod (+ main_~b~0 main_~x~0) 2) 0) (= (mod main_~s~0 2) 0) (= (mod (+ main_~q~0 1) 2) 0) (= (div (+ main_~x~0 (* (- 1) main_~b~0)) 2) 0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !(0 != ~b~0); {26597#(and (or (and (= main_~a~0 0) (= (div main_~x~0 2) 0) (= (div (+ (* (- 1) main_~q~0) 1) 2) 0) (= (mod main_~s~0 2) 0) (= (mod (+ main_~q~0 1) 2) 0) (= (mod main_~x~0 2) 0)) (and (= (+ main_~q~0 (* 2 (* main_~p~0 (div (div main_~x~0 2) main_~a~0)))) 1) (not (= main_~a~0 0)) (= (mod (div main_~x~0 2) main_~a~0) 0) (= (mod main_~x~0 2) 0) (= (+ main_~s~0 (* 2 (* main_~r~0 (div (div main_~x~0 2) main_~a~0)))) 0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 06:01:26,065 INFO L272 TraceCheckUtils]: 104: Hoare triple {26597#(and (or (and (= main_~a~0 0) (= (div main_~x~0 2) 0) (= (div (+ (* (- 1) main_~q~0) 1) 2) 0) (= (mod main_~s~0 2) 0) (= (mod (+ main_~q~0 1) 2) 0) (= (mod main_~x~0 2) 0)) (and (= (+ main_~q~0 (* 2 (* main_~p~0 (div (div main_~x~0 2) main_~a~0)))) 1) (not (= main_~a~0 0)) (= (mod (div main_~x~0 2) main_~a~0) 0) (= (mod main_~x~0 2) 0) (= (+ main_~s~0 (* 2 (* main_~r~0 (div (div main_~x~0 2) main_~a~0)))) 0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~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)); {26601#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:01:26,065 INFO L290 TraceCheckUtils]: 105: Hoare triple {26601#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26605#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:26,065 INFO L290 TraceCheckUtils]: 106: Hoare triple {26605#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26276#false} is VALID [2022-04-28 06:01:26,065 INFO L290 TraceCheckUtils]: 107: Hoare triple {26276#false} assume !false; {26276#false} is VALID [2022-04-28 06:01:26,066 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 67 proven. 33 refuted. 0 times theorem prover too weak. 234 trivial. 0 not checked. [2022-04-28 06:01:26,066 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:46,275 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:01:47,389 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:01:47,389 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [459102837] [2022-04-28 06:01:47,389 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:01:47,389 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1203751585] [2022-04-28 06:01:47,389 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1203751585] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 06:01:47,389 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 06:01:47,389 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-04-28 06:01:47,390 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:01:47,390 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [250253715] [2022-04-28 06:01:47,390 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [250253715] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:01:47,390 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:01:47,390 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 06:01:47,390 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2062165574] [2022-04-28 06:01:47,390 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:01:47,390 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 12 states have internal predecessors, (32), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 4 states have call predecessors, (14), 3 states have call successors, (14) Word has length 108 [2022-04-28 06:01:47,391 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:01:47,391 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 12 states have internal predecessors, (32), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 4 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 06:01:49,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 60 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:49,491 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 06:01:49,491 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:49,491 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 06:01:49,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=314, Unknown=0, NotChecked=0, Total=380 [2022-04-28 06:01:49,492 INFO L87 Difference]: Start difference. First operand 446 states and 623 transitions. Second operand has 13 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 12 states have internal predecessors, (32), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 4 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 06:01:52,612 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.28s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:01:55,261 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:01:56,513 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.24s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:01:58,111 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.59s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:01:59,554 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.41s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:02:02,075 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.27s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:02:06,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:06,713 INFO L93 Difference]: Finished difference Result 530 states and 735 transitions. [2022-04-28 06:02:06,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 06:02:06,713 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 12 states have internal predecessors, (32), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 4 states have call predecessors, (14), 3 states have call successors, (14) Word has length 108 [2022-04-28 06:02:06,714 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:06,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 12 states have internal predecessors, (32), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 4 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 06:02:06,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 140 transitions. [2022-04-28 06:02:06,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 12 states have internal predecessors, (32), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 4 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 06:02:06,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 140 transitions. [2022-04-28 06:02:06,716 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 140 transitions. [2022-04-28 06:02:08,924 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 139 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:08,941 INFO L225 Difference]: With dead ends: 530 [2022-04-28 06:02:08,941 INFO L226 Difference]: Without dead ends: 527 [2022-04-28 06:02:08,942 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 122 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 105 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=130, Invalid=572, Unknown=0, NotChecked=0, Total=702 [2022-04-28 06:02:08,942 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 50 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 537 mSolverCounterSat, 52 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 11.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 273 SdHoareTripleChecker+Invalid, 590 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 52 IncrementalHoareTripleChecker+Valid, 537 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 11.8s IncrementalHoareTripleChecker+Time [2022-04-28 06:02:08,942 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 273 Invalid, 590 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [52 Valid, 537 Invalid, 1 Unknown, 0 Unchecked, 11.8s Time] [2022-04-28 06:02:08,943 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 527 states. [2022-04-28 06:02:10,357 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 527 to 497. [2022-04-28 06:02:10,357 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:10,358 INFO L82 GeneralOperation]: Start isEquivalent. First operand 527 states. Second operand has 497 states, 287 states have (on average 1.1986062717770034) internal successors, (344), 288 states have internal predecessors, (344), 175 states have call successors, (175), 35 states have call predecessors, (175), 34 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:02:10,358 INFO L74 IsIncluded]: Start isIncluded. First operand 527 states. Second operand has 497 states, 287 states have (on average 1.1986062717770034) internal successors, (344), 288 states have internal predecessors, (344), 175 states have call successors, (175), 35 states have call predecessors, (175), 34 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:02:10,359 INFO L87 Difference]: Start difference. First operand 527 states. Second operand has 497 states, 287 states have (on average 1.1986062717770034) internal successors, (344), 288 states have internal predecessors, (344), 175 states have call successors, (175), 35 states have call predecessors, (175), 34 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:02:10,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:10,371 INFO L93 Difference]: Finished difference Result 527 states and 731 transitions. [2022-04-28 06:02:10,371 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 731 transitions. [2022-04-28 06:02:10,372 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:10,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:10,373 INFO L74 IsIncluded]: Start isIncluded. First operand has 497 states, 287 states have (on average 1.1986062717770034) internal successors, (344), 288 states have internal predecessors, (344), 175 states have call successors, (175), 35 states have call predecessors, (175), 34 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) Second operand 527 states. [2022-04-28 06:02:10,374 INFO L87 Difference]: Start difference. First operand has 497 states, 287 states have (on average 1.1986062717770034) internal successors, (344), 288 states have internal predecessors, (344), 175 states have call successors, (175), 35 states have call predecessors, (175), 34 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) Second operand 527 states. [2022-04-28 06:02:10,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:10,386 INFO L93 Difference]: Finished difference Result 527 states and 731 transitions. [2022-04-28 06:02:10,386 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 731 transitions. [2022-04-28 06:02:10,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:10,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:10,387 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:10,387 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:10,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 497 states, 287 states have (on average 1.1986062717770034) internal successors, (344), 288 states have internal predecessors, (344), 175 states have call successors, (175), 35 states have call predecessors, (175), 34 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:02:10,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 497 states to 497 states and 692 transitions. [2022-04-28 06:02:10,403 INFO L78 Accepts]: Start accepts. Automaton has 497 states and 692 transitions. Word has length 108 [2022-04-28 06:02:10,403 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:10,403 INFO L495 AbstractCegarLoop]: Abstraction has 497 states and 692 transitions. [2022-04-28 06:02:10,403 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 12 states have internal predecessors, (32), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 4 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 06:02:10,403 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 497 states and 692 transitions. [2022-04-28 06:02:14,413 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 692 edges. 691 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:14,414 INFO L276 IsEmpty]: Start isEmpty. Operand 497 states and 692 transitions. [2022-04-28 06:02:14,421 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-28 06:02:14,422 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:14,422 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:02:14,440 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 06:02:14,638 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 06:02:14,639 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:14,640 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:14,640 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 9 times [2022-04-28 06:02:14,640 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:14,640 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [464207280] [2022-04-28 06:02:14,645 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:14,645 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 10 times [2022-04-28 06:02:14,645 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:14,645 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1613553942] [2022-04-28 06:02:14,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:14,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:14,656 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:14,656 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [221054028] [2022-04-28 06:02:14,656 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:02:14,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:14,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:14,657 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 06:02:14,658 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 06:02:14,719 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:02:14,719 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:14,722 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 108 conjunts are in the unsatisfiable core [2022-04-28 06:02:14,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:14,740 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:02:21,810 INFO L272 TraceCheckUtils]: 0: Hoare triple {29842#true} call ULTIMATE.init(); {29842#true} is VALID [2022-04-28 06:02:21,810 INFO L290 TraceCheckUtils]: 1: Hoare triple {29842#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); {29842#true} is VALID [2022-04-28 06:02:21,810 INFO L290 TraceCheckUtils]: 2: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,810 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29842#true} {29842#true} #112#return; {29842#true} is VALID [2022-04-28 06:02:21,810 INFO L272 TraceCheckUtils]: 4: Hoare triple {29842#true} call #t~ret6 := main(); {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 5: Hoare triple {29842#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; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L272 TraceCheckUtils]: 6: Hoare triple {29842#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 7: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 8: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 9: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29842#true} {29842#true} #94#return; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 11: Hoare triple {29842#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L272 TraceCheckUtils]: 12: Hoare triple {29842#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 13: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 14: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 15: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {29842#true} {29842#true} #96#return; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L272 TraceCheckUtils]: 17: Hoare triple {29842#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 18: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 19: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L290 TraceCheckUtils]: 20: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {29842#true} {29842#true} #98#return; {29842#true} is VALID [2022-04-28 06:02:21,811 INFO L272 TraceCheckUtils]: 22: Hoare triple {29842#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,812 INFO L290 TraceCheckUtils]: 23: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,812 INFO L290 TraceCheckUtils]: 24: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,812 INFO L290 TraceCheckUtils]: 25: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,812 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29842#true} {29842#true} #100#return; {29842#true} is VALID [2022-04-28 06:02:21,812 INFO L290 TraceCheckUtils]: 27: Hoare triple {29842#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {29928#(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:21,812 INFO L290 TraceCheckUtils]: 28: Hoare triple {29928#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {29928#(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:21,813 INFO L290 TraceCheckUtils]: 29: Hoare triple {29928#(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; {29935#(and (= main_~r~0 0) (= 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:21,813 INFO L290 TraceCheckUtils]: 30: Hoare triple {29935#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {29935#(and (= main_~r~0 0) (= 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:21,813 INFO L290 TraceCheckUtils]: 31: Hoare triple {29935#(and (= main_~r~0 0) (= 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); {29935#(and (= main_~r~0 0) (= 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:21,814 INFO L290 TraceCheckUtils]: 32: Hoare triple {29935#(and (= main_~r~0 0) (= 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; {29945#(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:21,814 INFO L290 TraceCheckUtils]: 33: Hoare triple {29945#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {29945#(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:21,815 INFO L290 TraceCheckUtils]: 34: Hoare triple {29945#(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; {29952#(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:21,815 INFO L290 TraceCheckUtils]: 35: Hoare triple {29952#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {29952#(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:21,815 INFO L290 TraceCheckUtils]: 36: Hoare triple {29952#(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; {29959#(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))} is VALID [2022-04-28 06:02:21,816 INFO L290 TraceCheckUtils]: 37: Hoare triple {29959#(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))} assume !false; {29959#(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))} is VALID [2022-04-28 06:02:21,816 INFO L272 TraceCheckUtils]: 38: Hoare triple {29959#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,816 INFO L290 TraceCheckUtils]: 39: Hoare triple {29842#true} ~cond := #in~cond; {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:21,816 INFO L290 TraceCheckUtils]: 40: Hoare triple {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,817 INFO L290 TraceCheckUtils]: 41: Hoare triple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,818 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} {29959#(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))} #102#return; {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,818 INFO L272 TraceCheckUtils]: 43: Hoare triple {29980#(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_~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)); {29842#true} is VALID [2022-04-28 06:02:21,818 INFO L290 TraceCheckUtils]: 44: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,818 INFO L290 TraceCheckUtils]: 45: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,818 INFO L290 TraceCheckUtils]: 46: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,818 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {29842#true} {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,819 INFO L272 TraceCheckUtils]: 48: Hoare triple {29980#(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_~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)); {29842#true} is VALID [2022-04-28 06:02:21,819 INFO L290 TraceCheckUtils]: 49: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,819 INFO L290 TraceCheckUtils]: 50: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,819 INFO L290 TraceCheckUtils]: 51: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,819 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {29842#true} {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,819 INFO L272 TraceCheckUtils]: 53: Hoare triple {29980#(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_~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)); {29842#true} is VALID [2022-04-28 06:02:21,820 INFO L290 TraceCheckUtils]: 54: Hoare triple {29842#true} ~cond := #in~cond; {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:21,820 INFO L290 TraceCheckUtils]: 55: Hoare triple {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,820 INFO L290 TraceCheckUtils]: 56: Hoare triple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,821 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,821 INFO L290 TraceCheckUtils]: 58: Hoare triple {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {29980#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,822 INFO L290 TraceCheckUtils]: 59: Hoare triple {29980#(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_~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; {30032#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,823 INFO L290 TraceCheckUtils]: 60: Hoare triple {30032#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {30032#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,823 INFO L290 TraceCheckUtils]: 61: Hoare triple {30032#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {30032#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:02:21,824 INFO L290 TraceCheckUtils]: 62: Hoare triple {30032#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30042#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 06:02:21,824 INFO L290 TraceCheckUtils]: 63: Hoare triple {30042#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30042#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 06:02:21,824 INFO L290 TraceCheckUtils]: 64: Hoare triple {30042#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~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; {30049#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 06:02:21,825 INFO L290 TraceCheckUtils]: 65: Hoare triple {30049#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30049#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 06:02:21,825 INFO L290 TraceCheckUtils]: 66: Hoare triple {30049#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~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; {30056#(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) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~d~0 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 06:02:21,826 INFO L290 TraceCheckUtils]: 67: Hoare triple {30056#(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) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~d~0 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30056#(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) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~d~0 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 06:02:21,826 INFO L272 TraceCheckUtils]: 68: Hoare triple {30056#(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) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~d~0 1) (= main_~a~0 main_~x~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)); {29842#true} is VALID [2022-04-28 06:02:21,826 INFO L290 TraceCheckUtils]: 69: Hoare triple {29842#true} ~cond := #in~cond; {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:21,826 INFO L290 TraceCheckUtils]: 70: Hoare triple {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,826 INFO L290 TraceCheckUtils]: 71: Hoare triple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,827 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} {30056#(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) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~d~0 1) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0))} #102#return; {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:21,828 INFO L272 TraceCheckUtils]: 73: Hoare triple {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,828 INFO L290 TraceCheckUtils]: 74: Hoare triple {29842#true} ~cond := #in~cond; {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:21,828 INFO L290 TraceCheckUtils]: 75: Hoare triple {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,828 INFO L290 TraceCheckUtils]: 76: Hoare triple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,829 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} #104#return; {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:21,829 INFO L272 TraceCheckUtils]: 78: Hoare triple {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,829 INFO L290 TraceCheckUtils]: 79: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,829 INFO L290 TraceCheckUtils]: 80: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,829 INFO L290 TraceCheckUtils]: 81: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,830 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {29842#true} {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} #106#return; {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:21,830 INFO L272 TraceCheckUtils]: 83: Hoare triple {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,830 INFO L290 TraceCheckUtils]: 84: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:02:21,830 INFO L290 TraceCheckUtils]: 85: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:02:21,830 INFO L290 TraceCheckUtils]: 86: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:02:21,831 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {29842#true} {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} #108#return; {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:21,831 INFO L290 TraceCheckUtils]: 88: Hoare triple {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:02:21,832 INFO L290 TraceCheckUtils]: 89: Hoare triple {30075#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= main_~b~0 (+ (* (- 1) main_~c~0) main_~y~0)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30127#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 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:21,833 INFO L290 TraceCheckUtils]: 90: Hoare triple {30127#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {30127#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 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:21,833 INFO L290 TraceCheckUtils]: 91: Hoare triple {30127#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 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); {30127#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 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:21,836 INFO L290 TraceCheckUtils]: 92: Hoare triple {30127#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 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; {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 06:02:21,837 INFO L290 TraceCheckUtils]: 93: Hoare triple {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 06:02:21,837 INFO L290 TraceCheckUtils]: 94: Hoare triple {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 06:02:21,838 INFO L290 TraceCheckUtils]: 95: Hoare triple {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 06:02:21,838 INFO L290 TraceCheckUtils]: 96: Hoare triple {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 06:02:21,839 INFO L290 TraceCheckUtils]: 97: Hoare triple {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 06:02:21,839 INFO L272 TraceCheckUtils]: 98: Hoare triple {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:02:21,839 INFO L290 TraceCheckUtils]: 99: Hoare triple {29842#true} ~cond := #in~cond; {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:21,840 INFO L290 TraceCheckUtils]: 100: Hoare triple {29969#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,840 INFO L290 TraceCheckUtils]: 101: Hoare triple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:02:21,845 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} {30137#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ (* main_~p~0 main_~x~0 1) (* (+ main_~s~0 main_~r~0) main_~y~0) main_~a~0 (* (- 1) (* main_~y~0 main_~s~0)) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ main_~y~0 (* (- 1) (* (+ main_~q~0 main_~p~0) main_~x~0)) (* (- 1) (* (+ main_~s~0 main_~r~0) main_~y~0)))) (= main_~r~0 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~p~0 2) main_~q~0) 0))} #102#return; {30168#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~x~0 (div (* (- 1) main_~q~0) 2)))) (= (mod main_~q~0 2) 0) (= (+ (* (* main_~q~0 main_~x~0) 2) (* 2 (* main_~x~0 (div (* (- 1) main_~q~0) 2)))) (+ main_~b~0 main_~y~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 06:02:21,849 INFO L272 TraceCheckUtils]: 103: Hoare triple {30168#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~x~0 (div (* (- 1) main_~q~0) 2)))) (= (mod main_~q~0 2) 0) (= (+ (* (* main_~q~0 main_~x~0) 2) (* 2 (* main_~x~0 (div (* (- 1) main_~q~0) 2)))) (+ main_~b~0 main_~y~0)) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30172#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:02:21,849 INFO L290 TraceCheckUtils]: 104: Hoare triple {30172#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30176#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:02:21,850 INFO L290 TraceCheckUtils]: 105: Hoare triple {30176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {29843#false} is VALID [2022-04-28 06:02:21,850 INFO L290 TraceCheckUtils]: 106: Hoare triple {29843#false} assume !false; {29843#false} is VALID [2022-04-28 06:02:21,850 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 43 proven. 93 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-28 06:02:21,850 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:03:22,791 INFO L290 TraceCheckUtils]: 106: Hoare triple {29843#false} assume !false; {29843#false} is VALID [2022-04-28 06:03:22,791 INFO L290 TraceCheckUtils]: 105: Hoare triple {30176#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {29843#false} is VALID [2022-04-28 06:03:22,792 INFO L290 TraceCheckUtils]: 104: Hoare triple {30172#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30176#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:22,792 INFO L272 TraceCheckUtils]: 103: Hoare triple {30192#(= 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)); {30172#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:03:22,793 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} {30196#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #102#return; {30192#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 06:03:22,793 INFO L290 TraceCheckUtils]: 101: Hoare triple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,794 INFO L290 TraceCheckUtils]: 100: Hoare triple {30206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,794 INFO L290 TraceCheckUtils]: 99: Hoare triple {29842#true} ~cond := #in~cond; {30206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:03:22,794 INFO L272 TraceCheckUtils]: 98: Hoare triple {30196#(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)); {29842#true} is VALID [2022-04-28 06:03:22,794 INFO L290 TraceCheckUtils]: 97: Hoare triple {30196#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {30196#(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,795 INFO L290 TraceCheckUtils]: 96: Hoare triple {30196#(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; {30196#(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,795 INFO L290 TraceCheckUtils]: 95: Hoare triple {30196#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {30196#(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,796 INFO L290 TraceCheckUtils]: 94: Hoare triple {30196#(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; {30196#(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,796 INFO L290 TraceCheckUtils]: 93: Hoare triple {30196#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {30196#(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,812 INFO L290 TraceCheckUtils]: 92: Hoare triple {30228#(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; {30196#(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,813 INFO L290 TraceCheckUtils]: 91: Hoare triple {30228#(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); {30228#(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,813 INFO L290 TraceCheckUtils]: 90: Hoare triple {30228#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {30228#(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,818 INFO L290 TraceCheckUtils]: 89: Hoare triple {30238#(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; {30228#(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,818 INFO L290 TraceCheckUtils]: 88: Hoare triple {30238#(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); {30238#(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,819 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {29842#true} {30238#(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)))))} #108#return; {30238#(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,819 INFO L290 TraceCheckUtils]: 86: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,819 INFO L290 TraceCheckUtils]: 85: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,819 INFO L290 TraceCheckUtils]: 84: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,819 INFO L272 TraceCheckUtils]: 83: Hoare triple {30238#(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)); {29842#true} is VALID [2022-04-28 06:03:22,820 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {29842#true} {30238#(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)))))} #106#return; {30238#(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,820 INFO L290 TraceCheckUtils]: 81: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,820 INFO L290 TraceCheckUtils]: 80: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,820 INFO L290 TraceCheckUtils]: 79: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,820 INFO L272 TraceCheckUtils]: 78: Hoare triple {30238#(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)); {29842#true} is VALID [2022-04-28 06:03:22,821 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {29842#true} {30238#(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; {30238#(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,821 INFO L290 TraceCheckUtils]: 76: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,821 INFO L290 TraceCheckUtils]: 75: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,821 INFO L290 TraceCheckUtils]: 74: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,821 INFO L272 TraceCheckUtils]: 73: Hoare triple {30238#(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)); {29842#true} is VALID [2022-04-28 06:03:22,822 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} {30290#(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)))))} #102#return; {30238#(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,822 INFO L290 TraceCheckUtils]: 71: Hoare triple {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,823 INFO L290 TraceCheckUtils]: 70: Hoare triple {30206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {29973#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,823 INFO L290 TraceCheckUtils]: 69: Hoare triple {29842#true} ~cond := #in~cond; {30206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:03:22,823 INFO L272 TraceCheckUtils]: 68: Hoare triple {30290#(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)); {29842#true} is VALID [2022-04-28 06:03:22,824 INFO L290 TraceCheckUtils]: 67: Hoare triple {30290#(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 !false; {30290#(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,824 INFO L290 TraceCheckUtils]: 66: Hoare triple {30309#(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; {30290#(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,825 INFO L290 TraceCheckUtils]: 65: Hoare triple {30309#(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 !false; {30309#(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,827 INFO L290 TraceCheckUtils]: 64: Hoare triple {29842#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30309#(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,827 INFO L290 TraceCheckUtils]: 63: Hoare triple {29842#true} assume !false; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 62: Hoare triple {29842#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; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 61: Hoare triple {29842#true} assume !(~c~0 >= ~b~0); {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 60: Hoare triple {29842#true} assume !false; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 59: Hoare triple {29842#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 58: Hoare triple {29842#true} assume !(~c~0 >= 2 * ~v~0); {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {29842#true} {29842#true} #108#return; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 56: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 55: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 54: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L272 TraceCheckUtils]: 53: Hoare triple {29842#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {29842#true} {29842#true} #106#return; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 51: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 50: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L290 TraceCheckUtils]: 49: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L272 TraceCheckUtils]: 48: Hoare triple {29842#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,827 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {29842#true} {29842#true} #104#return; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 46: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 45: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 44: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L272 TraceCheckUtils]: 43: Hoare triple {29842#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {29842#true} {29842#true} #102#return; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 41: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 40: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 39: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L272 TraceCheckUtils]: 38: Hoare triple {29842#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 37: Hoare triple {29842#true} assume !false; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 36: Hoare triple {29842#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 35: Hoare triple {29842#true} assume !false; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 34: Hoare triple {29842#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 33: Hoare triple {29842#true} assume !false; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 32: Hoare triple {29842#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; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 31: Hoare triple {29842#true} assume !(~c~0 >= ~b~0); {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 30: Hoare triple {29842#true} assume !false; {29842#true} is VALID [2022-04-28 06:03:22,828 INFO L290 TraceCheckUtils]: 29: Hoare triple {29842#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 28: Hoare triple {29842#true} assume !false; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 27: Hoare triple {29842#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29842#true} {29842#true} #100#return; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 25: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 24: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 23: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L272 TraceCheckUtils]: 22: Hoare triple {29842#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {29842#true} {29842#true} #98#return; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 20: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 19: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 18: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L272 TraceCheckUtils]: 17: Hoare triple {29842#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {29842#true} {29842#true} #96#return; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 15: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L272 TraceCheckUtils]: 12: Hoare triple {29842#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L290 TraceCheckUtils]: 11: Hoare triple {29842#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {29842#true} is VALID [2022-04-28 06:03:22,829 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29842#true} {29842#true} #94#return; {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L290 TraceCheckUtils]: 9: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L290 TraceCheckUtils]: 8: Hoare triple {29842#true} assume !(0 == ~cond); {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L290 TraceCheckUtils]: 7: Hoare triple {29842#true} ~cond := #in~cond; {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L272 TraceCheckUtils]: 6: Hoare triple {29842#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L290 TraceCheckUtils]: 5: Hoare triple {29842#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; {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L272 TraceCheckUtils]: 4: Hoare triple {29842#true} call #t~ret6 := main(); {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29842#true} {29842#true} #112#return; {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L290 TraceCheckUtils]: 2: Hoare triple {29842#true} assume true; {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L290 TraceCheckUtils]: 1: Hoare triple {29842#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); {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L272 TraceCheckUtils]: 0: Hoare triple {29842#true} call ULTIMATE.init(); {29842#true} is VALID [2022-04-28 06:03:22,830 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 87 proven. 18 refuted. 0 times theorem prover too weak. 139 trivial. 0 not checked. [2022-04-28 06:03:22,831 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:03:22,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1613553942] [2022-04-28 06:03:22,831 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:03:22,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [221054028] [2022-04-28 06:03:22,831 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [221054028] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:03:22,831 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:03:22,831 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 12] total 27 [2022-04-28 06:03:22,831 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:03:22,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [464207280] [2022-04-28 06:03:22,831 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [464207280] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:03:22,831 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:03:22,831 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-28 06:03:22,831 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1616867535] [2022-04-28 06:03:22,831 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:03:22,832 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 6 states have call successors, (14) Word has length 107 [2022-04-28 06:03:22,832 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:03:22,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 06:03:22,940 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 06:03:22,940 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-28 06:03:22,940 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:22,940 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-28 06:03:22,941 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=597, Unknown=0, NotChecked=0, Total=702 [2022-04-28 06:03:22,941 INFO L87 Difference]: Start difference. First operand 497 states and 692 transitions. Second operand has 20 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 06:03:29,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:29,923 INFO L93 Difference]: Finished difference Result 576 states and 787 transitions. [2022-04-28 06:03:29,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 06:03:29,923 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 6 states have call successors, (14) Word has length 107 [2022-04-28 06:03:29,923 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:03:29,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 06:03:29,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 195 transitions. [2022-04-28 06:03:29,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 06:03:29,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 195 transitions. [2022-04-28 06:03:29,927 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 195 transitions. [2022-04-28 06:03:30,201 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:30,216 INFO L225 Difference]: With dead ends: 576 [2022-04-28 06:03:30,216 INFO L226 Difference]: Without dead ends: 574 [2022-04-28 06:03:30,216 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 184 SyntacticMatches, 4 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 180 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=151, Invalid=905, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 06:03:30,219 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 83 mSDsluCounter, 453 mSDsCounter, 0 mSdLazyCounter, 1300 mSolverCounterSat, 55 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 112 SdHoareTripleChecker+Valid, 511 SdHoareTripleChecker+Invalid, 1355 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 55 IncrementalHoareTripleChecker+Valid, 1300 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-28 06:03:30,219 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [112 Valid, 511 Invalid, 1355 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 1300 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-28 06:03:30,220 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 574 states. [2022-04-28 06:03:31,573 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 574 to 509. [2022-04-28 06:03:31,573 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:03:31,574 INFO L82 GeneralOperation]: Start isEquivalent. First operand 574 states. Second operand has 509 states, 296 states have (on average 1.1925675675675675) internal successors, (353), 297 states have internal predecessors, (353), 175 states have call successors, (175), 38 states have call predecessors, (175), 37 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:03:31,574 INFO L74 IsIncluded]: Start isIncluded. First operand 574 states. Second operand has 509 states, 296 states have (on average 1.1925675675675675) internal successors, (353), 297 states have internal predecessors, (353), 175 states have call successors, (175), 38 states have call predecessors, (175), 37 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:03:31,575 INFO L87 Difference]: Start difference. First operand 574 states. Second operand has 509 states, 296 states have (on average 1.1925675675675675) internal successors, (353), 297 states have internal predecessors, (353), 175 states have call successors, (175), 38 states have call predecessors, (175), 37 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:03:31,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:31,588 INFO L93 Difference]: Finished difference Result 574 states and 785 transitions. [2022-04-28 06:03:31,588 INFO L276 IsEmpty]: Start isEmpty. Operand 574 states and 785 transitions. [2022-04-28 06:03:31,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:31,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:31,590 INFO L74 IsIncluded]: Start isIncluded. First operand has 509 states, 296 states have (on average 1.1925675675675675) internal successors, (353), 297 states have internal predecessors, (353), 175 states have call successors, (175), 38 states have call predecessors, (175), 37 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) Second operand 574 states. [2022-04-28 06:03:31,590 INFO L87 Difference]: Start difference. First operand has 509 states, 296 states have (on average 1.1925675675675675) internal successors, (353), 297 states have internal predecessors, (353), 175 states have call successors, (175), 38 states have call predecessors, (175), 37 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) Second operand 574 states. [2022-04-28 06:03:31,604 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:31,604 INFO L93 Difference]: Finished difference Result 574 states and 785 transitions. [2022-04-28 06:03:31,604 INFO L276 IsEmpty]: Start isEmpty. Operand 574 states and 785 transitions. [2022-04-28 06:03:31,605 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:31,605 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:31,605 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:03:31,605 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:03:31,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 509 states, 296 states have (on average 1.1925675675675675) internal successors, (353), 297 states have internal predecessors, (353), 175 states have call successors, (175), 38 states have call predecessors, (175), 37 states have return successors, (173), 173 states have call predecessors, (173), 173 states have call successors, (173) [2022-04-28 06:03:31,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 509 states to 509 states and 701 transitions. [2022-04-28 06:03:31,621 INFO L78 Accepts]: Start accepts. Automaton has 509 states and 701 transitions. Word has length 107 [2022-04-28 06:03:31,621 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:03:31,621 INFO L495 AbstractCegarLoop]: Abstraction has 509 states and 701 transitions. [2022-04-28 06:03:31,621 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 06:03:31,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 509 states and 701 transitions. [2022-04-28 06:03:35,769 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 701 edges. 700 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:35,769 INFO L276 IsEmpty]: Start isEmpty. Operand 509 states and 701 transitions. [2022-04-28 06:03:35,770 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-28 06:03:35,770 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:03:35,770 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:03:35,786 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 06:03:35,970 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 06:03:35,970 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:03:35,970 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:03:35,971 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 7 times [2022-04-28 06:03:35,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:35,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1664099208] [2022-04-28 06:03:35,971 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:03:35,971 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 8 times [2022-04-28 06:03:35,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:03:35,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1285954778] [2022-04-28 06:03:35,971 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:03:35,971 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:03:35,982 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:03:35,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1521435019] [2022-04-28 06:03:35,982 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:03:35,982 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:03:35,982 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:03:35,983 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 06:03:35,986 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 06:03:36,038 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:03:36,038 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:03:36,039 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-28 06:03:36,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:03:36,056 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:03:37,295 INFO L272 TraceCheckUtils]: 0: Hoare triple {33840#true} call ULTIMATE.init(); {33840#true} is VALID [2022-04-28 06:03:37,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {33840#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); {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 2: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33840#true} {33840#true} #112#return; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L272 TraceCheckUtils]: 4: Hoare triple {33840#true} call #t~ret6 := main(); {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 5: Hoare triple {33840#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; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L272 TraceCheckUtils]: 6: Hoare triple {33840#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 8: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 9: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33840#true} {33840#true} #94#return; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 11: Hoare triple {33840#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L272 TraceCheckUtils]: 12: Hoare triple {33840#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 13: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 14: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 15: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {33840#true} {33840#true} #96#return; {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L272 TraceCheckUtils]: 17: Hoare triple {33840#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:03:37,296 INFO L290 TraceCheckUtils]: 18: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L290 TraceCheckUtils]: 19: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L290 TraceCheckUtils]: 20: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {33840#true} {33840#true} #98#return; {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L272 TraceCheckUtils]: 22: Hoare triple {33840#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L290 TraceCheckUtils]: 23: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L290 TraceCheckUtils]: 24: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L290 TraceCheckUtils]: 25: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,297 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {33840#true} {33840#true} #100#return; {33840#true} is VALID [2022-04-28 06:03:37,311 INFO L290 TraceCheckUtils]: 27: Hoare triple {33840#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {33926#(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 06:03:37,312 INFO L290 TraceCheckUtils]: 28: Hoare triple {33926#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33926#(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 06:03:37,312 INFO L290 TraceCheckUtils]: 29: Hoare triple {33926#(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; {33933#(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 06:03:37,313 INFO L290 TraceCheckUtils]: 30: Hoare triple {33933#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33933#(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 06:03:37,313 INFO L290 TraceCheckUtils]: 31: Hoare triple {33933#(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; {33940#(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 06:03:37,313 INFO L290 TraceCheckUtils]: 32: Hoare triple {33940#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {33940#(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 06:03:37,313 INFO L272 TraceCheckUtils]: 33: Hoare triple {33940#(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)); {33840#true} is VALID [2022-04-28 06:03:37,314 INFO L290 TraceCheckUtils]: 34: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,314 INFO L290 TraceCheckUtils]: 35: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,314 INFO L290 TraceCheckUtils]: 36: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,314 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {33840#true} {33940#(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; {33940#(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 06:03:37,314 INFO L272 TraceCheckUtils]: 38: Hoare triple {33940#(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)); {33840#true} is VALID [2022-04-28 06:03:37,314 INFO L290 TraceCheckUtils]: 39: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,315 INFO L290 TraceCheckUtils]: 40: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,315 INFO L290 TraceCheckUtils]: 41: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,315 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {33840#true} {33940#(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; {33940#(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 06:03:37,315 INFO L272 TraceCheckUtils]: 43: Hoare triple {33940#(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)); {33840#true} is VALID [2022-04-28 06:03:37,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,316 INFO L290 TraceCheckUtils]: 45: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,316 INFO L290 TraceCheckUtils]: 46: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,316 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {33840#true} {33940#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {33940#(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 06:03:37,316 INFO L272 TraceCheckUtils]: 48: Hoare triple {33940#(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)); {33840#true} is VALID [2022-04-28 06:03:37,316 INFO L290 TraceCheckUtils]: 49: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,316 INFO L290 TraceCheckUtils]: 50: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,316 INFO L290 TraceCheckUtils]: 51: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,317 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {33840#true} {33940#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {33940#(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 06:03:37,318 INFO L290 TraceCheckUtils]: 53: Hoare triple {33940#(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; {34007#(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 06:03:37,318 INFO L290 TraceCheckUtils]: 54: Hoare triple {34007#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34007#(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 06:03:37,318 INFO L272 TraceCheckUtils]: 55: Hoare triple {34007#(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)); {33840#true} is VALID [2022-04-28 06:03:37,318 INFO L290 TraceCheckUtils]: 56: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,318 INFO L290 TraceCheckUtils]: 57: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,318 INFO L290 TraceCheckUtils]: 58: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,319 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {33840#true} {34007#(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; {34007#(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 06:03:37,319 INFO L272 TraceCheckUtils]: 60: Hoare triple {34007#(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)); {33840#true} is VALID [2022-04-28 06:03:37,319 INFO L290 TraceCheckUtils]: 61: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,319 INFO L290 TraceCheckUtils]: 62: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,319 INFO L290 TraceCheckUtils]: 63: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,320 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {33840#true} {34007#(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; {34007#(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 06:03:37,320 INFO L272 TraceCheckUtils]: 65: Hoare triple {34007#(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)); {33840#true} is VALID [2022-04-28 06:03:37,320 INFO L290 TraceCheckUtils]: 66: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,320 INFO L290 TraceCheckUtils]: 67: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,320 INFO L290 TraceCheckUtils]: 68: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,321 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {33840#true} {34007#(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))} #106#return; {34007#(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 06:03:37,321 INFO L272 TraceCheckUtils]: 70: Hoare triple {34007#(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)); {33840#true} is VALID [2022-04-28 06:03:37,321 INFO L290 TraceCheckUtils]: 71: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,321 INFO L290 TraceCheckUtils]: 72: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,321 INFO L290 TraceCheckUtils]: 73: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,322 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {33840#true} {34007#(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))} #108#return; {34007#(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 06:03:37,322 INFO L290 TraceCheckUtils]: 75: Hoare triple {34007#(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); {34007#(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 06:03:37,323 INFO L290 TraceCheckUtils]: 76: Hoare triple {34007#(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; {34077#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,324 INFO L290 TraceCheckUtils]: 77: Hoare triple {34077#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34077#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,324 INFO L290 TraceCheckUtils]: 78: Hoare triple {34077#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,324 INFO L290 TraceCheckUtils]: 79: Hoare triple {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,325 INFO L272 TraceCheckUtils]: 80: Hoare triple {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:03:37,325 INFO L290 TraceCheckUtils]: 81: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:03:37,325 INFO L290 TraceCheckUtils]: 82: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:03:37,325 INFO L290 TraceCheckUtils]: 83: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:03:37,325 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {33840#true} {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,326 INFO L272 TraceCheckUtils]: 85: Hoare triple {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:03:37,326 INFO L290 TraceCheckUtils]: 86: Hoare triple {33840#true} ~cond := #in~cond; {34109#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:37,326 INFO L290 TraceCheckUtils]: 87: Hoare triple {34109#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,326 INFO L290 TraceCheckUtils]: 88: Hoare triple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,327 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,327 INFO L272 TraceCheckUtils]: 90: Hoare triple {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:03:37,327 INFO L290 TraceCheckUtils]: 91: Hoare triple {33840#true} ~cond := #in~cond; {34109#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:37,328 INFO L290 TraceCheckUtils]: 92: Hoare triple {34109#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,328 INFO L290 TraceCheckUtils]: 93: Hoare triple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,329 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} {34084#(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) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34135#(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 06:03:37,329 INFO L272 TraceCheckUtils]: 95: Hoare triple {34135#(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)); {33840#true} is VALID [2022-04-28 06:03:37,329 INFO L290 TraceCheckUtils]: 96: Hoare triple {33840#true} ~cond := #in~cond; {34109#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:37,329 INFO L290 TraceCheckUtils]: 97: Hoare triple {34109#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,329 INFO L290 TraceCheckUtils]: 98: Hoare triple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:37,330 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} {34135#(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))} #108#return; {34135#(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 06:03:37,331 INFO L290 TraceCheckUtils]: 100: Hoare triple {34135#(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); {34135#(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 06:03:37,331 INFO L290 TraceCheckUtils]: 101: Hoare triple {34135#(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; {34157#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 3)) main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,332 INFO L290 TraceCheckUtils]: 102: Hoare triple {34157#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 3)) main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !false; {34157#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 3)) main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,332 INFO L290 TraceCheckUtils]: 103: Hoare triple {34157#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 3)) main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {34157#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 3)) main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 06:03:37,333 INFO L290 TraceCheckUtils]: 104: Hoare triple {34157#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 3)) main_~x~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; {34167#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-28 06:03:37,333 INFO L290 TraceCheckUtils]: 105: Hoare triple {34167#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} assume !false; {34167#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-28 06:03:37,333 INFO L290 TraceCheckUtils]: 106: Hoare triple {34167#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} assume !(0 != ~b~0); {34174#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-28 06:03:37,334 INFO L272 TraceCheckUtils]: 107: Hoare triple {34174#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 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)); {34178#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:03:37,334 INFO L290 TraceCheckUtils]: 108: Hoare triple {34178#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {34182#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:37,335 INFO L290 TraceCheckUtils]: 109: Hoare triple {34182#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {33841#false} is VALID [2022-04-28 06:03:37,335 INFO L290 TraceCheckUtils]: 110: Hoare triple {33841#false} assume !false; {33841#false} is VALID [2022-04-28 06:03:37,335 INFO L134 CoverageAnalysis]: Checked inductivity of 339 backedges. 102 proven. 30 refuted. 0 times theorem prover too weak. 207 trivial. 0 not checked. [2022-04-28 06:03:37,335 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:04:44,986 INFO L290 TraceCheckUtils]: 110: Hoare triple {33841#false} assume !false; {33841#false} is VALID [2022-04-28 06:04:44,987 INFO L290 TraceCheckUtils]: 109: Hoare triple {34182#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {33841#false} is VALID [2022-04-28 06:04:44,987 INFO L290 TraceCheckUtils]: 108: Hoare triple {34178#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {34182#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:04:44,988 INFO L272 TraceCheckUtils]: 107: Hoare triple {34198#(= (+ (* 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)); {34178#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:04:44,988 INFO L290 TraceCheckUtils]: 106: Hoare triple {34202#(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); {34198#(= (+ (* 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:04:44,989 INFO L290 TraceCheckUtils]: 105: Hoare triple {34202#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {34202#(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:04:45,077 INFO L290 TraceCheckUtils]: 104: Hoare triple {34209#(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; {34202#(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:04:45,077 INFO L290 TraceCheckUtils]: 103: Hoare triple {34209#(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); {34209#(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:04:45,078 INFO L290 TraceCheckUtils]: 102: Hoare triple {34209#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {34209#(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:04:45,350 INFO L290 TraceCheckUtils]: 101: Hoare triple {34219#(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; {34209#(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:04:45,350 INFO L290 TraceCheckUtils]: 100: Hoare triple {34219#(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); {34219#(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 06:04:45,351 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} {34226#(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))))} #108#return; {34219#(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 06:04:45,352 INFO L290 TraceCheckUtils]: 98: Hoare triple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:45,352 INFO L290 TraceCheckUtils]: 97: Hoare triple {34236#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:45,352 INFO L290 TraceCheckUtils]: 96: Hoare triple {33840#true} ~cond := #in~cond; {34236#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:04:45,352 INFO L272 TraceCheckUtils]: 95: Hoare triple {34226#(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)); {33840#true} is VALID [2022-04-28 06:04:45,353 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} {34243#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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))))} #106#return; {34226#(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 06:04:45,353 INFO L290 TraceCheckUtils]: 93: Hoare triple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:45,354 INFO L290 TraceCheckUtils]: 92: Hoare triple {34236#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:45,354 INFO L290 TraceCheckUtils]: 91: Hoare triple {33840#true} ~cond := #in~cond; {34236#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:04:45,354 INFO L272 TraceCheckUtils]: 90: Hoare triple {34243#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {33840#true} is VALID [2022-04-28 06:04:45,355 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} {34259#(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)))) (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; {34243#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:04:45,355 INFO L290 TraceCheckUtils]: 88: Hoare triple {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:45,356 INFO L290 TraceCheckUtils]: 87: Hoare triple {34236#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {34113#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:45,356 INFO L290 TraceCheckUtils]: 86: Hoare triple {33840#true} ~cond := #in~cond; {34236#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:04:45,356 INFO L272 TraceCheckUtils]: 85: Hoare triple {34259#(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)))) (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)); {33840#true} is VALID [2022-04-28 06:04:45,357 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {33840#true} {34259#(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)))) (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; {34259#(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)))) (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:04:45,357 INFO L290 TraceCheckUtils]: 83: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,357 INFO L290 TraceCheckUtils]: 82: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,357 INFO L290 TraceCheckUtils]: 81: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,357 INFO L272 TraceCheckUtils]: 80: Hoare triple {34259#(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)))) (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)); {33840#true} is VALID [2022-04-28 06:04:45,357 INFO L290 TraceCheckUtils]: 79: Hoare triple {34259#(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)))) (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 !false; {34259#(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)))) (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:04:45,359 INFO L290 TraceCheckUtils]: 78: Hoare triple {34293#(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_~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)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {34259#(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)))) (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:04:45,359 INFO L290 TraceCheckUtils]: 77: Hoare triple {34293#(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_~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)))) (not (= main_~c~0 main_~b~0)))} assume !false; {34293#(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_~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)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:04:45,419 INFO L290 TraceCheckUtils]: 76: Hoare triple {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~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; {34293#(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_~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)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:04:45,420 INFO L290 TraceCheckUtils]: 75: Hoare triple {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~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 06:04:45,421 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {33840#true} {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #108#return; {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~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 06:04:45,421 INFO L290 TraceCheckUtils]: 73: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,421 INFO L290 TraceCheckUtils]: 72: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,421 INFO L290 TraceCheckUtils]: 71: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,421 INFO L272 TraceCheckUtils]: 70: Hoare triple {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~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)); {33840#true} is VALID [2022-04-28 06:04:45,422 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {33840#true} {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #106#return; {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~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 06:04:45,422 INFO L290 TraceCheckUtils]: 68: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,422 INFO L290 TraceCheckUtils]: 67: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,422 INFO L290 TraceCheckUtils]: 66: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,422 INFO L272 TraceCheckUtils]: 65: Hoare triple {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~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)); {33840#true} is VALID [2022-04-28 06:04:45,423 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {33840#true} {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~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 06:04:45,423 INFO L290 TraceCheckUtils]: 63: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,423 INFO L290 TraceCheckUtils]: 62: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,423 INFO L290 TraceCheckUtils]: 61: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,423 INFO L272 TraceCheckUtils]: 60: Hoare triple {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~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)); {33840#true} is VALID [2022-04-28 06:04:45,425 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {33840#true} {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~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 06:04:45,425 INFO L290 TraceCheckUtils]: 58: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,425 INFO L290 TraceCheckUtils]: 57: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,425 INFO L290 TraceCheckUtils]: 56: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,425 INFO L272 TraceCheckUtils]: 55: Hoare triple {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~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)); {33840#true} is VALID [2022-04-28 06:04:45,426 INFO L290 TraceCheckUtils]: 54: Hoare triple {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~0))) main_~a~0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~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 06:04:45,594 INFO L290 TraceCheckUtils]: 53: Hoare triple {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {34300#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) main_~b~0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0 1)))) (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0 1)))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~b~0 (* main_~b~0 (+ main_~d~0 main_~k~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 06:04:45,595 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {33840#true} {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} #108#return; {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 06:04:45,595 INFO L290 TraceCheckUtils]: 51: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,595 INFO L290 TraceCheckUtils]: 50: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,595 INFO L290 TraceCheckUtils]: 49: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,595 INFO L272 TraceCheckUtils]: 48: Hoare triple {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,596 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {33840#true} {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} #106#return; {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 06:04:45,596 INFO L290 TraceCheckUtils]: 46: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,596 INFO L290 TraceCheckUtils]: 45: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,596 INFO L290 TraceCheckUtils]: 44: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,596 INFO L272 TraceCheckUtils]: 43: Hoare triple {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,597 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {33840#true} {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} #104#return; {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 06:04:45,597 INFO L290 TraceCheckUtils]: 41: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,597 INFO L290 TraceCheckUtils]: 40: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,597 INFO L290 TraceCheckUtils]: 39: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,597 INFO L272 TraceCheckUtils]: 38: Hoare triple {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,598 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {33840#true} {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} #102#return; {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 06:04:45,598 INFO L290 TraceCheckUtils]: 36: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,598 INFO L290 TraceCheckUtils]: 34: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,598 INFO L272 TraceCheckUtils]: 33: Hoare triple {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,599 INFO L290 TraceCheckUtils]: 32: Hoare triple {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} assume !false; {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 06:04:45,599 INFO L290 TraceCheckUtils]: 31: Hoare triple {34437#(or (= (+ main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~k~0 3)))) (* main_~y~0 (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 3)))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {34370#(or (not (= (* main_~v~0 2) (+ main_~c~0 (* (- 1) main_~b~0)))) (= (+ (* main_~x~0 (+ (* (- 1) (+ main_~k~0 (* main_~d~0 2) 1) main_~q~0) main_~p~0)) (* (+ main_~r~0 (* (- 1) (* (+ main_~k~0 (* main_~d~0 2) 1) main_~s~0))) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ main_~b~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 06:04:45,600 INFO L290 TraceCheckUtils]: 30: Hoare triple {34437#(or (= (+ main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~k~0 3)))) (* main_~y~0 (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 3)))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))))} assume !false; {34437#(or (= (+ main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~k~0 3)))) (* main_~y~0 (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 3)))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))))} is VALID [2022-04-28 06:04:45,601 INFO L290 TraceCheckUtils]: 29: Hoare triple {34444#(or (not (= main_~a~0 (* main_~b~0 3))) (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) 4) (* 4 (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {34437#(or (= (+ main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~k~0 3)))) (* main_~y~0 (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 3)))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~b~0 (* (+ main_~k~0 2) main_~b~0)))))} is VALID [2022-04-28 06:04:45,601 INFO L290 TraceCheckUtils]: 28: Hoare triple {34444#(or (not (= main_~a~0 (* main_~b~0 3))) (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) 4) (* 4 (* main_~y~0 main_~s~0)))))} assume !false; {34444#(or (not (= main_~a~0 (* main_~b~0 3))) (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) 4) (* 4 (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:45,601 INFO L290 TraceCheckUtils]: 27: Hoare triple {33840#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {34444#(or (not (= main_~a~0 (* main_~b~0 3))) (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) 4) (* 4 (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 06:04:45,602 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {33840#true} {33840#true} #100#return; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 25: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 24: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 23: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L272 TraceCheckUtils]: 22: Hoare triple {33840#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {33840#true} {33840#true} #98#return; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 20: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 19: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 18: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L272 TraceCheckUtils]: 17: Hoare triple {33840#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {33840#true} {33840#true} #96#return; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 15: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 14: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 13: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L272 TraceCheckUtils]: 12: Hoare triple {33840#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 11: Hoare triple {33840#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33840#true} {33840#true} #94#return; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 9: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,602 INFO L290 TraceCheckUtils]: 8: Hoare triple {33840#true} assume !(0 == ~cond); {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L290 TraceCheckUtils]: 7: Hoare triple {33840#true} ~cond := #in~cond; {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L272 TraceCheckUtils]: 6: Hoare triple {33840#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L290 TraceCheckUtils]: 5: Hoare triple {33840#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; {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L272 TraceCheckUtils]: 4: Hoare triple {33840#true} call #t~ret6 := main(); {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33840#true} {33840#true} #112#return; {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L290 TraceCheckUtils]: 2: Hoare triple {33840#true} assume true; {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L290 TraceCheckUtils]: 1: Hoare triple {33840#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); {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L272 TraceCheckUtils]: 0: Hoare triple {33840#true} call ULTIMATE.init(); {33840#true} is VALID [2022-04-28 06:04:45,603 INFO L134 CoverageAnalysis]: Checked inductivity of 339 backedges. 102 proven. 30 refuted. 0 times theorem prover too weak. 207 trivial. 0 not checked. [2022-04-28 06:04:45,604 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:04:45,604 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1285954778] [2022-04-28 06:04:45,604 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:04:45,604 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1521435019] [2022-04-28 06:04:45,604 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1521435019] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:04:45,604 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:04:45,604 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 18] total 29 [2022-04-28 06:04:45,604 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:04:45,604 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1664099208] [2022-04-28 06:04:45,604 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1664099208] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:04:45,604 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:04:45,604 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 06:04:45,604 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [334522041] [2022-04-28 06:04:45,604 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:04:45,605 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) Word has length 111 [2022-04-28 06:04:45,605 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:04:45,605 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 06:04:45,679 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 06:04:45,679 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 06:04:45,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:45,679 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 06:04:45,679 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=645, Unknown=0, NotChecked=0, Total=812 [2022-04-28 06:04:45,679 INFO L87 Difference]: Start difference. First operand 509 states and 701 transitions. Second operand has 16 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 06:04:50,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:50,418 INFO L93 Difference]: Finished difference Result 588 states and 808 transitions. [2022-04-28 06:04:50,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 06:04:50,418 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) Word has length 111 [2022-04-28 06:04:50,419 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:04:50,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 06:04:50,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 06:04:50,420 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 06:04:50,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-28 06:04:50,421 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-28 06:04:50,640 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 06:04:50,655 INFO L225 Difference]: With dead ends: 588 [2022-04-28 06:04:50,655 INFO L226 Difference]: Without dead ends: 585 [2022-04-28 06:04:50,655 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 225 GetRequests, 191 SyntacticMatches, 3 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 269 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=207, Invalid=849, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 06:04:50,656 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 51 mSDsluCounter, 304 mSDsCounter, 0 mSdLazyCounter, 923 mSolverCounterSat, 72 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 357 SdHoareTripleChecker+Invalid, 995 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 72 IncrementalHoareTripleChecker+Valid, 923 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-28 06:04:50,656 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [69 Valid, 357 Invalid, 995 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [72 Valid, 923 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-28 06:04:50,656 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 585 states. [2022-04-28 06:04:52,057 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 585 to 529. [2022-04-28 06:04:52,057 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:04:52,058 INFO L82 GeneralOperation]: Start isEquivalent. First operand 585 states. Second operand has 529 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 40 states have call predecessors, (183), 39 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-28 06:04:52,059 INFO L74 IsIncluded]: Start isIncluded. First operand 585 states. Second operand has 529 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 40 states have call predecessors, (183), 39 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-28 06:04:52,059 INFO L87 Difference]: Start difference. First operand 585 states. Second operand has 529 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 40 states have call predecessors, (183), 39 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-28 06:04:52,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:52,072 INFO L93 Difference]: Finished difference Result 585 states and 804 transitions. [2022-04-28 06:04:52,072 INFO L276 IsEmpty]: Start isEmpty. Operand 585 states and 804 transitions. [2022-04-28 06:04:52,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:52,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:52,074 INFO L74 IsIncluded]: Start isIncluded. First operand has 529 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 40 states have call predecessors, (183), 39 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) Second operand 585 states. [2022-04-28 06:04:52,075 INFO L87 Difference]: Start difference. First operand has 529 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 40 states have call predecessors, (183), 39 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) Second operand 585 states. [2022-04-28 06:04:52,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:52,088 INFO L93 Difference]: Finished difference Result 585 states and 804 transitions. [2022-04-28 06:04:52,088 INFO L276 IsEmpty]: Start isEmpty. Operand 585 states and 804 transitions. [2022-04-28 06:04:52,090 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:52,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:52,090 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:04:52,090 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:04:52,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 529 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 40 states have call predecessors, (183), 39 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-28 06:04:52,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 529 states to 529 states and 729 transitions. [2022-04-28 06:04:52,107 INFO L78 Accepts]: Start accepts. Automaton has 529 states and 729 transitions. Word has length 111 [2022-04-28 06:04:52,107 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:04:52,107 INFO L495 AbstractCegarLoop]: Abstraction has 529 states and 729 transitions. [2022-04-28 06:04:52,107 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.4) internal successors, (36), 15 states have internal predecessors, (36), 6 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 06:04:52,107 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 529 states and 729 transitions. [2022-04-28 06:04:56,649 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 729 edges. 728 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:04:56,649 INFO L276 IsEmpty]: Start isEmpty. Operand 529 states and 729 transitions. [2022-04-28 06:04:56,650 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-28 06:04:56,650 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:04:56,650 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:04:56,666 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 06:04:56,850 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 06:04:56,851 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:04:56,851 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:04:56,851 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 9 times [2022-04-28 06:04:56,851 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:56,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1806349192] [2022-04-28 06:04:56,851 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:04:56,851 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 10 times [2022-04-28 06:04:56,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:04:56,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1035571156] [2022-04-28 06:04:56,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:04:56,852 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:04:56,861 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:04:56,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1798243035] [2022-04-28 06:04:56,861 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:04:56,861 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:04:56,861 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:04:56,862 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 06:04:56,863 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 06:04:56,915 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:04:56,915 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:04:56,916 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-28 06:04:56,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:04:56,955 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:04:58,193 INFO L272 TraceCheckUtils]: 0: Hoare triple {37946#true} call ULTIMATE.init(); {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 1: Hoare triple {37946#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); {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 2: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37946#true} {37946#true} #112#return; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L272 TraceCheckUtils]: 4: Hoare triple {37946#true} call #t~ret6 := main(); {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 5: Hoare triple {37946#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; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L272 TraceCheckUtils]: 6: Hoare triple {37946#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 7: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 8: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 9: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37946#true} {37946#true} #94#return; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 11: Hoare triple {37946#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L272 TraceCheckUtils]: 12: Hoare triple {37946#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 13: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 14: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,194 INFO L290 TraceCheckUtils]: 15: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {37946#true} {37946#true} #96#return; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L272 TraceCheckUtils]: 17: Hoare triple {37946#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L290 TraceCheckUtils]: 18: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L290 TraceCheckUtils]: 19: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L290 TraceCheckUtils]: 20: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {37946#true} {37946#true} #98#return; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L272 TraceCheckUtils]: 22: Hoare triple {37946#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L290 TraceCheckUtils]: 23: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L290 TraceCheckUtils]: 24: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L290 TraceCheckUtils]: 25: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {37946#true} {37946#true} #100#return; {37946#true} is VALID [2022-04-28 06:04:58,195 INFO L290 TraceCheckUtils]: 27: Hoare triple {37946#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {38032#(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 06:04:58,196 INFO L290 TraceCheckUtils]: 28: Hoare triple {38032#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {38032#(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 06:04:58,196 INFO L290 TraceCheckUtils]: 29: Hoare triple {38032#(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; {38039#(and (= main_~r~0 0) (= 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 06:04:58,196 INFO L290 TraceCheckUtils]: 30: Hoare triple {38039#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {38039#(and (= main_~r~0 0) (= 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 06:04:58,197 INFO L290 TraceCheckUtils]: 31: Hoare triple {38039#(and (= main_~r~0 0) (= 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); {38039#(and (= main_~r~0 0) (= 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 06:04:58,197 INFO L290 TraceCheckUtils]: 32: Hoare triple {38039#(and (= main_~r~0 0) (= 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; {38049#(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 06:04:58,198 INFO L290 TraceCheckUtils]: 33: Hoare triple {38049#(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 !false; {38049#(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 06:04:58,198 INFO L290 TraceCheckUtils]: 34: Hoare triple {38049#(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; {38056#(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 06:04:58,198 INFO L290 TraceCheckUtils]: 35: Hoare triple {38056#(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 !false; {38056#(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 06:04:58,199 INFO L290 TraceCheckUtils]: 36: Hoare triple {38056#(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; {38063#(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 06:04:58,199 INFO L290 TraceCheckUtils]: 37: Hoare triple {38063#(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 !false; {38063#(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 06:04:58,199 INFO L272 TraceCheckUtils]: 38: Hoare triple {38063#(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)); {37946#true} is VALID [2022-04-28 06:04:58,199 INFO L290 TraceCheckUtils]: 39: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,199 INFO L290 TraceCheckUtils]: 40: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,199 INFO L290 TraceCheckUtils]: 41: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,200 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {37946#true} {38063#(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; {38063#(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 06:04:58,200 INFO L272 TraceCheckUtils]: 43: Hoare triple {38063#(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)); {37946#true} is VALID [2022-04-28 06:04:58,200 INFO L290 TraceCheckUtils]: 44: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,200 INFO L290 TraceCheckUtils]: 45: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,200 INFO L290 TraceCheckUtils]: 46: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,201 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {37946#true} {38063#(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; {38063#(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 06:04:58,201 INFO L272 TraceCheckUtils]: 48: Hoare triple {38063#(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)); {37946#true} is VALID [2022-04-28 06:04:58,201 INFO L290 TraceCheckUtils]: 49: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,201 INFO L290 TraceCheckUtils]: 50: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,201 INFO L290 TraceCheckUtils]: 51: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,202 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {37946#true} {38063#(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))} #106#return; {38063#(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 06:04:58,202 INFO L272 TraceCheckUtils]: 53: Hoare triple {38063#(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)); {37946#true} is VALID [2022-04-28 06:04:58,202 INFO L290 TraceCheckUtils]: 54: Hoare triple {37946#true} ~cond := #in~cond; {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:04:58,202 INFO L290 TraceCheckUtils]: 55: Hoare triple {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,203 INFO L290 TraceCheckUtils]: 56: Hoare triple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,203 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} {38063#(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))} #108#return; {38063#(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 06:04:58,204 INFO L290 TraceCheckUtils]: 58: Hoare triple {38063#(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; {38132#(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 06:04:58,204 INFO L290 TraceCheckUtils]: 59: Hoare triple {38132#(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 !false; {38132#(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 06:04:58,204 INFO L272 TraceCheckUtils]: 60: Hoare triple {38132#(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)); {37946#true} is VALID [2022-04-28 06:04:58,204 INFO L290 TraceCheckUtils]: 61: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,205 INFO L290 TraceCheckUtils]: 62: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,205 INFO L290 TraceCheckUtils]: 63: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,205 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {37946#true} {38132#(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))} #102#return; {38132#(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 06:04:58,205 INFO L272 TraceCheckUtils]: 65: Hoare triple {38132#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,205 INFO L290 TraceCheckUtils]: 66: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,205 INFO L290 TraceCheckUtils]: 67: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,205 INFO L290 TraceCheckUtils]: 68: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,206 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {37946#true} {38132#(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))} #104#return; {38132#(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 06:04:58,206 INFO L272 TraceCheckUtils]: 70: Hoare triple {38132#(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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,206 INFO L290 TraceCheckUtils]: 71: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,206 INFO L290 TraceCheckUtils]: 72: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,206 INFO L290 TraceCheckUtils]: 73: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,207 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {37946#true} {38132#(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))} #106#return; {38132#(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 06:04:58,207 INFO L272 TraceCheckUtils]: 75: Hoare triple {38132#(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 ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,207 INFO L290 TraceCheckUtils]: 76: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,207 INFO L290 TraceCheckUtils]: 77: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,207 INFO L290 TraceCheckUtils]: 78: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,208 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {37946#true} {38132#(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))} #108#return; {38132#(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 06:04:58,209 INFO L290 TraceCheckUtils]: 80: Hoare triple {38132#(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 !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38199#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1))} is VALID [2022-04-28 06:04:58,210 INFO L290 TraceCheckUtils]: 81: Hoare triple {38199#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1))} assume !false; {38199#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1))} is VALID [2022-04-28 06:04:58,210 INFO L272 TraceCheckUtils]: 82: Hoare triple {38199#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37946#true} is VALID [2022-04-28 06:04:58,210 INFO L290 TraceCheckUtils]: 83: Hoare triple {37946#true} ~cond := #in~cond; {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:04:58,210 INFO L290 TraceCheckUtils]: 84: Hoare triple {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,211 INFO L290 TraceCheckUtils]: 85: Hoare triple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,212 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} {38199#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1))} #102#return; {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:04:58,212 INFO L272 TraceCheckUtils]: 87: Hoare triple {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {37946#true} is VALID [2022-04-28 06:04:58,213 INFO L290 TraceCheckUtils]: 88: Hoare triple {37946#true} ~cond := #in~cond; {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:04:58,213 INFO L290 TraceCheckUtils]: 89: Hoare triple {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,213 INFO L290 TraceCheckUtils]: 90: Hoare triple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,214 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:04:58,214 INFO L272 TraceCheckUtils]: 92: Hoare triple {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {37946#true} is VALID [2022-04-28 06:04:58,214 INFO L290 TraceCheckUtils]: 93: Hoare triple {37946#true} ~cond := #in~cond; {37946#true} is VALID [2022-04-28 06:04:58,214 INFO L290 TraceCheckUtils]: 94: Hoare triple {37946#true} assume !(0 == ~cond); {37946#true} is VALID [2022-04-28 06:04:58,214 INFO L290 TraceCheckUtils]: 95: Hoare triple {37946#true} assume true; {37946#true} is VALID [2022-04-28 06:04:58,215 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {37946#true} {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:04:58,215 INFO L272 TraceCheckUtils]: 97: Hoare triple {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {37946#true} is VALID [2022-04-28 06:04:58,216 INFO L290 TraceCheckUtils]: 98: Hoare triple {37946#true} ~cond := #in~cond; {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:04:58,216 INFO L290 TraceCheckUtils]: 99: Hoare triple {38118#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,216 INFO L290 TraceCheckUtils]: 100: Hoare triple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:04:58,217 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38122#(not (= |__VERIFIER_assert_#in~cond| 0))} {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:04:58,218 INFO L290 TraceCheckUtils]: 102: Hoare triple {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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); {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:04:58,219 INFO L290 TraceCheckUtils]: 103: Hoare triple {38218#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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; {38270#(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_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~q~0 1))} is VALID [2022-04-28 06:04:58,219 INFO L290 TraceCheckUtils]: 104: Hoare triple {38270#(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_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~q~0 1))} assume !false; {38270#(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_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~q~0 1))} is VALID [2022-04-28 06:04:58,220 INFO L290 TraceCheckUtils]: 105: Hoare triple {38270#(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_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {38270#(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_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~q~0 1))} is VALID [2022-04-28 06:04:58,220 INFO L290 TraceCheckUtils]: 106: Hoare triple {38270#(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_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= 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; {38280#(and (= main_~r~0 0) (= (+ (* main_~p~0 main_~x~0 4) (* main_~q~0 main_~x~0) (* main_~x~0 (- 4)) (* main_~y~0 main_~r~0 4) (* main_~y~0 main_~s~0)) main_~b~0) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ main_~s~0 (* main_~r~0 4)) 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:04:58,221 INFO L290 TraceCheckUtils]: 107: Hoare triple {38280#(and (= main_~r~0 0) (= (+ (* main_~p~0 main_~x~0 4) (* main_~q~0 main_~x~0) (* main_~x~0 (- 4)) (* main_~y~0 main_~r~0 4) (* main_~y~0 main_~s~0)) main_~b~0) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ main_~s~0 (* main_~r~0 4)) 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {38280#(and (= main_~r~0 0) (= (+ (* main_~p~0 main_~x~0 4) (* main_~q~0 main_~x~0) (* main_~x~0 (- 4)) (* main_~y~0 main_~r~0 4) (* main_~y~0 main_~s~0)) main_~b~0) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ main_~s~0 (* main_~r~0 4)) 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:04:58,221 INFO L290 TraceCheckUtils]: 108: Hoare triple {38280#(and (= main_~r~0 0) (= (+ (* main_~p~0 main_~x~0 4) (* main_~q~0 main_~x~0) (* main_~x~0 (- 4)) (* main_~y~0 main_~r~0 4) (* main_~y~0 main_~s~0)) main_~b~0) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ main_~s~0 (* main_~r~0 4)) 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {38287#(and (= main_~r~0 0) (= (+ (* main_~p~0 main_~x~0 4) (* main_~q~0 main_~x~0) (* main_~x~0 (- 4)) (* main_~y~0 main_~r~0 4) (* main_~y~0 main_~s~0)) 0) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ main_~s~0 (* main_~r~0 4)) 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 06:04:58,224 INFO L272 TraceCheckUtils]: 109: Hoare triple {38287#(and (= main_~r~0 0) (= (+ (* main_~p~0 main_~x~0 4) (* main_~q~0 main_~x~0) (* main_~x~0 (- 4)) (* main_~y~0 main_~r~0 4) (* main_~y~0 main_~s~0)) 0) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ main_~s~0 (* main_~r~0 4)) 1) (= 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)); {38291#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:04:58,224 INFO L290 TraceCheckUtils]: 110: Hoare triple {38291#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {38295#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:04:58,224 INFO L290 TraceCheckUtils]: 111: Hoare triple {38295#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37947#false} is VALID [2022-04-28 06:04:58,224 INFO L290 TraceCheckUtils]: 112: Hoare triple {37947#false} assume !false; {37947#false} is VALID [2022-04-28 06:04:58,225 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 95 proven. 56 refuted. 0 times theorem prover too weak. 192 trivial. 0 not checked. [2022-04-28 06:04:58,225 INFO L328 TraceCheckSpWp]: Computing backward predicates...